首页
社区
课程
招聘
[原创]随机函数加密文件
发表于: 2018-11-29 10:49 12532

[原创]随机函数加密文件

2018-11-29 10:49
12532
  随机函数的生成值一般称为伪随机数,认为其不够随机又有周期性,不能作为密钥加密,这个结论不能认同,假如用其做密钥,你能够破解其密文,那确实是不能做密钥了,不可靠能做密钥吗?我认为能不能用要看你怎么用了。
  直接使用随机函数的生成值(序列值)做密钥是不可取的,因为破解者了解你的做法,他也可以做同样的事情,将一小段序列值组成密钥串,虽然他不知道随机函数的种子值是什么,但他可以假定种子然后去尝试,不行则向后或向前推移,让密钥串和密文相互作用,并观察结果从而判断是否发现了种子,一旦发现种子的位置破解也就完成了。
  下面只举两例说明如何用随机函数值做密钥。
一、参数法
  我们从用户密码那里,除了计算出种子外,还可以计算出许多参数C,随便取两个C1和C2,假设明文序列是M1、M2、......,随机函数序列是S1、S2、......,密文序列m1、m2、......,将这样产生
      m1 = M1 + S1×C1 + C2;
      m2 = M2 + S2×C1 + C2;
      .......;
而解密是加密的逆运算。
二、多元法
  多元是指使用多个随机函数,以一个为主,其它的为辅助,以二元为例,从用户密码那里需要计算出两个种子,一个用于第一个随机函数,另一个用于第二个随机函数,而有第一个随机函数序列是S1、S2、......,第二个随机函数序列是s1、s2、......,N是个用户密码计算出的小质数,
      m1 = M1 + S1 + s1%N;
      m2 = M2 + S2 + s2%N;
      .......;
解密是加密的逆运算。
s1%N表示随机函数二的第一个函数值除以N的余数,这个值较小但也严重的干扰了整个算式的数值,让分析破解难上加难。
  使用随机函数尽量避讳其周期让周期远远大于被加密内容的长度即可不受其影响。工具在那里就看怎么用了。古代韩信被称为战神何也,其能指挥老弱病残的军队打胜仗,我们也争取利用现有条件使数据更加安全,努力加油吧。


[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
2
谁有办法破解这里的加密算法?欢迎交流。
2018-12-1 19:29
0
雪    币: 1795
活跃值: (63)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
路过。。
最后于 2018-12-1 20:17 被myangel编辑 ,原因:
2018-12-1 20:16
0
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
4
随机函数虽然缺陷不少,但如果用于加密也是很给力的,即便知道用的是什么样的随机函数你也很难由函数推算出有用的信息。
2019-1-3 15:22
0
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
5
随机函数加密信息属于序列密码(流密码)的一个特例。
根据序列密码的定义,序列密码是一个随时间变化的加密变换,如果用随机函数代替了密钥发生器,则变成了不随时间变化的固定的加密,它的特点是:不需要其它的硬件设施,只选用随机函数即可。适用于各种场合的加密,如文件加密、实时通讯加密。欢迎大家讨论。
2019-2-28 19:35
0
雪    币: 10014
活跃值: (2012)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
6
比较关注别人是如何做的。
网上看到一篇【随机数加密算法】的帖子见附录。
文章较长,还有实例,实际上所谓算法就是找个字节,将源文件挨个异或一遍而已,这种加密可以说是一点加密强度都没有,对其密文用字节数据异或马上就原形毕露了。
如果不指出以上缺陷,那这种文章不是误导初学者吗?
上传的附件:
2019-6-10 15:58
0
游客
登录 | 注册 方可回帖
返回
//