mcrypt到OpenSSL迁移的一些注意事项

不同语言产生加密差异的原因

不同语言产生不同加密结果差异的主要原因基本上产生在算法选择、填充方式、$IV量这几方面的差异

具体可以看这篇文章:https://segmentfault.com/a/1190000018059273 文章里面有个错误 我已经在评论里面指出。

但是其他方面总结的非常全面:

MCRYPT_RIJNDAEL_256 并不是 AES-256

openssl_* 的 AES cipher 的 iv 长度 固定 为 16 位

这一点 很多网上抄写的代码基本上都用mcrypt_get_iv_[......]

继续阅读

阿里云官网给的PHP、GO的OSS直传签名的时间算法是错的

今天是 2020-08-15

比正确时间晚8个小时

阿里云官网给的例子是 https://help.aliyun.com/document_detail/91771.html#concept-nhs-ldt-2fb 

对应下载链接 http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/92590/APP_zh/1539603337889/aliyun-oss-appserver-php-master.zip?file=aliyun-oss-appserver-php-master.zip

里面有个计算过期时间[......]

继续阅读

在Xorg下使用xrandr支持混合DPI的多显示器

使用环境是Deepin,理论上其他Linux也适用。

显示器位置说明

笔记本内置显示器是eDP1,1920x1080,放在左边,卖家说这是块2K屏幕,外置显示器是DP2,3840x2160的4K屏幕,作为主显示器

设置系统缩放

在各自系统内置的设置参数处,设置DPI为2倍缩放

如果你是非Deepin系统,比如Gnome Shell

设置驱动参数

我的笔记本是Intel核心显卡,如果不设置这个Xorg参数,会在后面设置X的scale后,高分屏上出现鼠标闪烁问题
[crayon-5f649be64847c943[......]

继续阅读

在局域网内开启Zerotier网关

Zerotier目前不支持设置下发路由的metric,如果你的局域网机器需要充当网关的角色(其他客户端通过这台机访问局域网),Zerotier下发的路由会覆盖掉局域网自动下发的路由,导致路由混乱失效。

在官方解决这个问题之前,只能设置自动管理路由,让程序不自动应用官方下发的路由。

以下配置在ERL3上测试通过

先期安装和简单配置

在Ubnt上安装它是很简单的,设备会被识别为Debian alike system 然后被安装脚本自动处理

安装完成以后,把Zerotier的数据配置移动到ubnt底配置分区,防止升[......]

继续阅读

NetworkManager 使用IPsec L2TP的一些错误解决

老旧加密算法的列表

NetworkManager-l2tp versions 1.2.6 to 1.2.14 使用 strongSwan默认的加密算法列表,一些被认为是弱加密的算法被默认排除了 
需要自己设置。nm-l2tp项目整理了一个他们认为常见的加密组合,需要填写到nm-l2tp的Phase1和Phase2里面(相当于动态生成的ipsec配置文件里面的ike和esp选项,位于/var/run/nm-l2tp-ipsec-*.conf),也可以使用文档里面提到的ike-scan脚本进行扫描。如果你的日志里面出现类似日志

received NO_PROPOSAL_CHOSEN erro[......]

继续阅读

家庭拨号动态前缀IPv6环境下的内部设备IPv6地址的端口放通

现在很多家庭都接入IPv6了,为了安全,一般负责任的路由器厂商都会给你默认配置(或者建议你配置)好只能主动对外发起连接的防火墙规则,防止被非法访问家庭内部机器的服务,但是这样也造成了一个问题,就是确实需对外服务的情况,比如BT下载的Peers如果有这样的防火墙规则,我不能主动连接对方了,而我如果也有这样的防火墙规则,对方也不能主动连接上我,造成Peers资源的浪费,为了更好的在校园的IPv6的PT下东西,我需要给aria2添加一个BT端口放通,(如果是IPv4就是在公网上做个端口映射到内网的机器,但是内网的IPv4地址是我们可以控制的)以便让一些处于IPv6防火墙后面的Peers能主动连接上我[......]

继续阅读

通过Composer重映射一些Composer包的文件

有些Composer包写死了调用路径,有用了各种Final或者Private不给继承,这时候,如不想对这个包做二开,就可以用使用Composer的一些命名空间映射的方法覆盖这个类,以php-m3u8为例

https://github.com/chrisyue/php-m3u8/issues/48#issuecomment-526881470

配置psr-4增加命名空间映射"Chrisyue\\PhpM3u8\\Data\\Value\\Tag\\"到"override/PhpM3u8/Data/Value/Tag"

然后在exclude-from-classmap里面把需要重[......]

继续阅读

导入Fiddler的DER格式的根证书为安卓系统证书

安卓系统根证书有以下几部分组成:

文件名称:使用openssl的subject_hash_old选项计算hash而来

文件内容:PEM格式加证书文本信息

Fiddler的证书是DER格式,安卓不能识别,需要转换。

然后 拷贝到/system/etc/security/cacerts 里面 。chmod u+rw,g+r,o+r 重启即可[......]

继续阅读

安全切除一个磁盘镜像img的尾部的空余空间

这里假设分区表都是正确的,我们拿上面的文章举例子:

 

一个sectors是512k,分区表尾部规划的空间结尾是59691007,那么切除偏移是

如果你的Sector不同,需要区别对待[......]

继续阅读

记录一次磁盘镜像的LVM分区缩小调整过程

拿到镜像是这样的。

losetup伺候,其中,LVM内是如下情况

但是这个pv卷轴已经没有空余空间,因为是离线镜像 所以不能使得分区属性有任何变化,包括uuid等,否则可能会导致机器出问题,而且root分区空余很多,考虑ext4有e2fsck,但是swap没有,而且root空间空余较多,考虑直接缩减root分区

先检查下文件系统

 

然后把根文件系统缩小为24G,为[......]

继续阅读