下载此文档

RSA算法和SHA1算法.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
RSA 算法和 SHA1 算法实验三 RSA 算法和 SHA1 哈希算法古典密码算法曾经被广泛应用, 大都比较简单, 使用手工和机械操作来实现加密和解密。它的主要对象是文字信息, 利用密码算法实现文字信息的加密和解密。古典密码学可以分为代替密码( 也叫做移位密码)和置换密码(也叫做换位密码)两种,其中代替密码典型的有 Caesar 密码,数乘密码和仿射变换等,置换密码有单表置换和多表置换等。一、实验目的 1. 理解代替密码学加密过程 2. 理解置换密码学加密过程二、实验环境 Windows ,交换网络结构,每组 2 人, VC++ ,密码工具三、实验原理 1. 非对称密钥加密也称为公开密钥加密,或者叫做公钥加密算法。使用公开密钥密码的每一个用户都分别拥有两个密钥: 加密密钥和解密密钥, 它们两者并不相同, 并且由加密密钥得到解密密钥在计算机上是不可行的。每一个用户的加密密钥都是公开的。因此, 加密密钥也称为公开密钥。所有用户的公开密钥都将记录在作用类似于电话号码薄的密钥本上, 而它可以被所有用户访问, 这样每一个用户都可以得到其他所有用户的公开密钥。同时, 每一个用户的解密密钥将由用户保存并严格保密。因此, 解密密钥也称为私有密钥。 RSA 加密算法利用了数论领域的一个事实, 那就是虽然把两个大质数相乘生成一个合数是件十分容易的事情, 但要把一个合数分解为两个质数的乘积却十分困难。合数分解问题目前仍然是数学领域尚未解决的一大难题, 至今没有任何高效的分解方法。它无须收发双方同时参与加密过程, 既可以用于保密也可以用于签名, 因而非常适合于电子邮件系统的加密,互连网和信用卡安全系统。 RSA 算法的加密和解密过程在 RSA 算法中, 每个实体有自己的公钥(e,n) 及私钥(d, n),其中 n= p*q ,p,q 是两个大素数, e*d =1 mod ф(n) ,显然 e 应该满足 gcd (e,ф(n) )=1。实体 B 加密消息 m, 将密文在公开信道上传送给实体 A 。实体 A 接到密文后对其解密。具体算法如下。? 公钥的生成算法 RSA 的公钥生成算法十分简单,可以分为四步: a) 选择两个素数, p和q; b) 计算 n=p×q和z= (p-1) × (q-1) ; c) 选择一个与 z 互质的数 d; d) 找出一个 e ,使得 e×d=1 mod z。公开密钥是由( e,n )构成,私有密钥由( d,n )构成。? 加密算法实体 B 的操作如下: a) 得到实体 A 的真实公钥( e,n ); b) 把消息表示成整数 m,0<m≤n-1; c) 使用平方-乘积算法,计算 C= Ek(m) = me mod n; d) 将密文 C 发送给实体 A。? 解密算法实体 A 接收到密文 C, 使用自己的私钥 d 计算 m= Dk(C)= Cd mod n, m∈ Zn。我们选择 p=3,q= 11 ,得到 n= 33,z=( p-1 )×( q-1 )=2× 10 = 20 。由于和 20 互质,故设 d=7 。对于所选的 d=7 ,解方程 7×e =1 mod 20 ,可以得到 e=3。在我们的例子中, 由于所选的 p和q 太小, 破译当然很容易, 我们的例子只是用来说明此算法的原理。对于明文 SUZANNE , RSA 的加密和解密过程

RSA算法和SHA1算法 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxj16588
  • 文件大小0 KB
  • 时间2016-05-31