找回密码
 欢迎注册
查看: 14482|回复: 11

[原创] 由二次剩余想到的一个简单的加密算法

[复制链接]
发表于 2011-3-2 18:53:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
该加解密的算法要求事先双方约定好密钥k及大整数N=p*q.即N是两个大素数的乘积,其中密钥满足如下同余关系式,
k^2=1    (mod N).设明文为m,加密过程如下
m*k=c  (mod  N)
解密为
c*k=m   (mod  N).
这种方法很简单吧!实用时可选取的N应稍大一点
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-3-2 20:46:05 | 显示全部楼层
很简单,不过一点都不安全!N=p*q,那么由数论的知识知道有四个x满足
x^2=1 mod(N)
由c*k=m   (mod  N)
得到(c*k)^2=c^2*k^2=c^2=m^2   (mod  N)
所以知道了c(当然也知道N-c),也就差不多知道了m(m的值只有四种情况,不过已经知道了两种了,一个是c,另一个是N-c)。
看来你肯定不是搞密码的。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-3-2 20:50:58 | 显示全部楼层
要想搞出一套加密算法,不是很容易的事情,不是专业人士就不要去碰了。
Rabin加密算法
http://blog.sina.com.cn/s/blog_64370f500100lhqz.html
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-3-2 21:06:06 | 显示全部楼层
很显然,上面的算法比你的安全!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-3-2 22:20:35 | 显示全部楼层
...所以知道了c(当然也知道N-c),也就差不多知道了m...
mathematica 发表于 2011-3-2 20:46


要是真这么容易从c得到m,那么分解N岂不轻而易举?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2011-3-3 08:51:10 | 显示全部楼层
2# mathematica
Mathematica.一楼上没说清楚,实际上真正需要保密的是N,k则可由N的两个因子,p,q算出,公式如下,
(p+q)/(p-q)=k (mod p)
在这种情况下,是否安全呢?欢迎讨论

补充内容 (2014-3-1 09:54):
(p+q)/(p-q)=k (mod N)
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-3-3 10:59:19 | 显示全部楼层
要是真这么容易从c得到m,那么分解N岂不轻而易举?
好地方 发表于 2011-3-2 22:20

我是说他的加密不安全,m的值只有四个,却已经知道了两个,这种加密算法没多大价值
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2011-3-3 11:57:57 | 显示全部楼层

1

7# mathematica
问题是这种对称的加密算法,另外两个值(即明文),不是轻易就可以算出的,相当于求
X^2=c^2  (mod  N).这种方法等同于大数分解,若N不公开,破解几乎不可能
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2011-3-3 20:25:10 | 显示全部楼层
8# wsc810

这个算法显然不能抵抗已知明文攻击,因此必须经常更换密钥,最好是一次一密,但这样运作成本就高了。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2014-3-1 09:34:48 | 显示全部楼层
mathematica 发表于 2011-3-3 10:59
我是说他的加密不安全,m的值只有四个,却已经知道了两个,这种加密算法没多大价值

怎么不安全了,没明白你的意思,给你个例子
PowerModList[1, 1/2, 91]={1, 27, 64, 90}
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-5-12 01:42 , Processed in 0.048054 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表