楼上说的对。我没学过密码学。
我记得儒略·凡尔纳的小说《大木筏》中有一种算法,当时我觉得就是很先进了。就是,取一段密码,比如123456,然后将要加密的话写下来,比如:
This is a rat.
把密码循环地写出来:
This is a rat.
1234 56 1 234
于是,就有:
This is a rat.
1234 56 1 234
Ujlw ny b tdx.
实际上这个方法已经很成熟了吧。我火星了。
只要密码足够长,的确不可能破解。比如我现在用密钥文件(注意这是我自己的称呼,别弄混了)是1kb,里面每个字节上都是随机产生的0~255种可能的数。如果我现在有一个文件,我就首先,在[0,1024]上随机选取一个整数,以此为开头,将密钥中的密码和我的文件并排写下来。然后使用类似的算法让两个数Xor(我不知道这里有没有问题……),得到加密后的文件,再把这个开头写在文件头。如果用概率,那比如上面这个例子,s被w、y替换,类似的事情导致不可能用概率分析。
密钥文件想要产生,是256^1024种可能,至少我是这样认为的。
欢迎大家品评。
p.s.我现在自己做的加密程序“中央核区”(名称来自EVA),就是这种算法:
上面的登录框中的某种颜色,有与之相近的几种可供电脑选择。比如绿色,我就设置了3种相近的颜色。 不同色按钮的顺序随机。只要没有绿坝那样的截屏,应该是可以避免木马的吧。