优秀的毕业设计论文网
计算机 JAVA 电子信息 单片机 机械机电 模具 土木工程 建筑结构 论文
热门搜索词:网络 ASP.NET 汽车 电气 数控 PLC

RSA密码体制的实现(VC++)

以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
  
资料介绍:

目 录1引言11.1密码学应用的相关背景11.2使用RSA加密的意义22 RSA相关理论知识32.1 RSA的数学基础知识32.1.1 关于数的基本理论32.1.2 欧拉定理 费马小定理42.1.3 中国剩余定理42.1.4单向陷门函数52.2 RSA加密解密算法52.3 RSA参数的选择62.3.1 模数n的确定62.3.2 模数e的选取原则72.3.3 素数的产生73需求分析与平台选择83.1需求分析83.2平台选择84 RSA密码体制的实现94.1设计流程94.2 截图及运行说明94.3代码实现104.4 各个功能模块介绍104.4.1加密和解密函数的实现104.4.2 导入加密密钥模块114.4.3选择文件模块124.4.4加密模块124.4.5导入解密密钥模块134.4.6生成明文145测试16结 论17参考文献17致 谢18声 明192.2 RSA加密解密算法RSA加密解密算法如下: ⑴取两个随机大素数p和q(保密); ⑵计算公开的模数n=pq(公开); ⑶计算秘密的欧拉函数φ(n)=(p-1)(q-1)(保密),两个素数p和q不再需要,应该丢弃,不要让任何人知道; ⑷随机选取整数e,满足gcd(e,φ(n))=1(公开e,加密密钥); ⑸计算d,满足de≡1(modφ(n))(保密d,解密密钥,陷门信息); ⑹将明文m首先分成小于n的数据块,加密,从而产生密文,公式为ci=mie(modn)要解密信息,取每个加密块ci并计算 mi=cid(modn)因为ed=1-rφ(n),因此cid≡(mie)d≡m i(miφ( n))-r≡ mi(mod n) = mi其中,r 为整数。这里利用了欧拉定理: miφ( n)≡1(mod n)。以上公式从密文恢复出了明文。公钥 n:两个素数p和q的乘积(p和q必须保密)。e:与( p- 1)(q-1 )互素私钥 d :e-1 (mod( p - 1)(q -1))加密 c = me(mod n)解密 m = cd(mod n) think58好,好think58 [资料来源:http://think58.com]

3.1需求分析根据需要,我们设定对软件的要求如下:1、对于软件运行所需要的加密和解密密钥,使用其他的工具来产生,并存入在本机的文本文件中。由于RSA的实现是一个很复杂的过程,不论是系统参数选择(即加密解密时使用的密钥的产生),还是加密解密运算,都是很复杂的过程。故在本次设计中,我们只考虑RSA的加密解密的实现。2、由于大整数在运算上复杂性,要自己实现上千位的大整数的运算,不论是工作量,还是复杂度和难度,都比较困难,所以在进行加密解密运算时,调用了已有的大整数类提供的接口函数。3、RSA是非对称密码体制,加密和解密的运算速度,相对于对称密码体制而言比较慢,所以主要用于加密短消息如密钥,帐号,密码等。所以在实现过程中,我们只考虑了一个分组,长度为小于等于100字节。 [资料来源:http://think58.com]

预览图: 本文来自think58 [来源:http://think58.com]

[来源:http://think58.com]