谁能介绍一些加密算法
尽量简单点的。 问题点数:20、回复次数:7Top
1 楼sameboat(sameboat)回复于 2002-11-21 22:23:58 得分 10
经典算法 RSA:
实现简单、破译难度大,即使你把p,q选的小一点,估计也难破译,呵呵!
--------------------------------------------------------------------
RSA算法
RSA加密算法是全世界第一个公开密钥密码系统,是由Rivet、Sha
mir和Adleman三人于1978年提出的。RSA算法中用到的一些量是:
1.素数p和q(保密的);
2.n=p*q(公开的);
3.φ(n)=(p-1)*(q-1)(保密的);
4.加密密钥e(公开的)要满足0〈e〈φ(n),且e和φ(n)的最大公
约数为1(互素);
5.解密密钥d(保密的)要满足0〈d〈φ(n),且d*e mod φ(n)=1(m
od是模运算,也称取余运算)。
如果用M代表明文,C代表密文,E(M)代表对明文加密运算,D(C)代
表对密文解密运算,则有:
E(M)=M^e mod n=C
D(C)=C^d mod n=M
RSA算法安全性的理论基础是大数的因子分解问题至今没有很好
的算法,因而公开e和n不易求出p、q及d。RSA算法要求p和q是两个足
够大的素数(例如100位十进制数)且长度相差比较小。
--------------------------------------------------------------------
DES简单,但实现起来稍微麻烦一点,就不说了。
Top
2 楼lemonet()回复于 2002-11-21 22:26:21 得分 0
太多了,用google搜Top
3 楼limengchen(LMC)回复于 2002-11-22 19:26:29 得分 0
to lemonet():
你上得了Google吗?好像已经被封很久了!Top
4 楼limengchen(LMC)回复于 2002-11-22 19:32:55 得分 0
to sameboat(sameboat):
如果p和q必须是两个100位的十进制数的话,在程序中实现起来有点麻烦,有没有用程序比较容易实现的算法?Top
5 楼Budda(初学者)回复于 2002-11-23 18:05:26 得分 10
http://www.vckbase.com/sourcecode/algorithms/Top
6 楼libi(风自吟)回复于 2002-11-26 13:55:46 得分 0
我给你说一个.
找一随机序列,以此序列的的第k位开始,截取与明文相同长度的字符串,与明文做异或运算,得到密文.k即为密钥.
随机序列必须无限不循环,最好就用无理数,例如圆周率pi.
不过我只是一时想到的念头,没有考察过它的安全性.Top
7 楼flyaramy(aramy)回复于 2002-11-26 16:51:08 得分 0
DES加密!(c语言实现) 本来是附在下边的!可是说我的帖子太长发不出去!
Top




