一种革命性的数据加解密算法--甲骨符(原创)
本帖最后由 ongp1347 于 2020-9-9 11:09 编辑这是一种序列式(流式)数据加解密算法,名为“甲骨符"。为什么叫甲骨符呢?因为它的原理是将每个密键表拼合在一起组成一块更大的密键表,就像一块大甲骨(大乌龟骨板)由许多小甲骨组成一样。每个密键表由256个相异2字节数据组成,一共有256块密键表,覆盖了从0到65535的数据值。采用了本人原创的随机数算法,名为”均态分布“随机数算法。何谓”均态分布“呢?指数在数轴不同位置上无序排放,每个值只出现一次不重复。就好像玩扑克牌中的洗牌一样,”均"指每个数的出现概率相等,“态"指每个数在数轴上的不同位置出现。密键表数据根据口令按均态分布来进行随机设置。当然,这种均态分布不是真”均态分布“随机算法,是伪均态分布随机算法。因为它的数是有限的,总密键值是65536个(从0到65535),并不是无穷大。如果是无穷大的数,才是真均态分布随机数。因为无穷大数没有尽头,它的值也就不会出现重复,符合定义的描述。这是一种可以复现的无限接近自然随机数算法,而真的自然随机数是不能复现。就好比宇宙的诞生一样,每个星球的几何尺寸、空间位置都是自然随机数。请问谁有能力去复现这个自然随机数算法?!就是月球被小行星撞击的时间和地点也是一个自然随机数过程,请问谁有本事得到月球下一次被撞击的时间和地点的准确数据呢!?哪怕是登陆火星的火星车,它的着落地点和时间也是个自然随机过程,您能算出来吗。
为什么说是革命性的数据加解密算法?因为它彻底解决了香农大神老师(虽然他不知道有我这个学生)的一次性密码的缺陷--同一个口令不能两次用在两个相同长度而内容不同的文件上。因为有 明文(P1) 异或 口令(K) = 密文(C1K),明文(P2) 异或 口令(K) = 密文(C2K)。当密文(C1K) 异或 密文(C2K) = 密文(P1P2)(暂且叫密文)时,再将 密文(P1P2) 异或 明文(P2) 就得到明文(P1),就这样给破解了(天下谱庆啊,就SB也是破解密码精英了,肯定把香农大神老师气得复现呐,他的论调不是说“一次一密"天下无敌不能破解吗!!!)。而我呢,也是用异或加密,但我把加密后的密文扩大了两倍,即先把一个字节明文扩充为两个字节的数据,然后再用两个这样的伪数据进行加密得出密文。解密时,把对应的两个字节的伪数据还原为一个字节的明文数据。这样子,就是同一个口令两次用在两个相同长度而内容不同的文件上也不会给破解了,而且天然地抵御了线性分析法和差分分析法的攻击。其实底层原理还是香农大神老师的一次一密,我只不过把他缺陷修补了(开心呐,到我发布源码时,世上还没有像我这个算法的原理。不知道是真没有人发现,还是有高人知道了没发表.。像我这个宇宙钝胎也跻身于密码行列。)。
源码网址:https://www.github.com/Yaohui-Wu/OracleToken 太牛了,佩服 源码无了 Jersing 发表于 2020-9-1 17:28
源码无了
并不是,超链接指向错误,超链接文本正确。 源码网址的超链接不对 看不懂…逻辑虽然就几句话,但是理解不了啊。 你去申请专利就行了,如果真有技术含量 有公司用 甲骨符的加密强度比虎符要高,而且占用内存资源多。比如甲骨符现在键表2^16位,可以升级到2^32位、2^64位......等等,只限于硬件内存制约,可以无限大。 感谢分享,看得不太明白,建议可以用各种不同语言出一个小demo。
页:
[1]