c2const
2020-10-23 15:01:49 +08:00
说到密码学,我又来劲了 :)
0.winrar 和 7z 都是用的 aes256 算法加密,只是组织数据方式不一样,推荐这两个加密软件。
1.加密软件本身不能有后门,所以要验证数字签名,或者自己编译一个 7z 。
2.密码设置不能太简单,22 字节的随机密码,现有的量子计算机也要几百年才能破,建议 10 字节以上,而且可以考虑设置超出 ASCII 编码的字符,比如中文(具体编码是由软件实现决定的)。
3.上面说的自己实现 rsa,其实不太科学,应该非对称加密效率太低,不适合加密大文件。
4.最重要的,关于安全性,AES256 其实大于 RSA2048,可以考虑不用库,自己实现一个 AES256,如果不嫌麻烦,可以安全更好,速度稍慢的 serpent256,它官网有现成的各种语言从零实现。
5.如有需要自己实现自己的加密软件,查看文件时可以参考透明加密,即硬盘只有密文,内存才有明文。如果有精力,学学驱动,做内核透明加密。
6.外行可能不知道的一点:把一个文件用算法 a 加密再用算法 b 加密。密码学上,强度其实是 max(a,b),因为这只是有限次的加法。只能提高工程上的难度,算法安全并不会是 a+b 。
7.用自己的不开源私有算法,也只是提高工程上的逆向难度,而且觉大部分人自己写的算法也没 aes256 完善。