如何设计网络传输信息加密解密系统.doc

如何设计网络传输信息加密解密系统.doc

ID:27903134

大小:32.50 KB

页数:6页

时间:2018-12-06

如何设计网络传输信息加密解密系统.doc_第1页
如何设计网络传输信息加密解密系统.doc_第2页
如何设计网络传输信息加密解密系统.doc_第3页
如何设计网络传输信息加密解密系统.doc_第4页
如何设计网络传输信息加密解密系统.doc_第5页
资源描述:

《如何设计网络传输信息加密解密系统.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、如何设计网络传输信息加密解密系统  网络加密的方式主要有链路加密、端对端加密。端对端加密的工作仅在目的节点和源节点进行,所以成本低、使用灵活。本文采用这种方式,其处于网络OSI模型的应用层或表示层。  1公钥密码体制  公钥密码就是一种陷门单向函数。我们说一个函数f是单向函数,即若对它的定义域中的任意x都易于计算y=f(x),而当f的值域中的y为已知时要计算出x是非常困难的。公钥密码体制就是基于这一原理而设计的,将辅助信息(陷门信息)作为秘密密钥。这类密码的安全强度取决于它所依据的问题的计算复杂度。  公钥密码体制的基本

2、思想是:密钥分为加密密钥E,解密密钥D和公钥M。加密密钥E和公钥M可以公开,D不能公开。加密时采用以E,M为参数的函数f1(E,M)进行加密,解密时采用以D,M为参数的函数f2(D,M)进行解密。  在传统密码体制的算法中,知道了加密过程,则可以推出解密过程。而在公钥密码体制的算法中,即使知道了加密过程,也不可能推出解密过程。因而计算加密密钥E,公钥M和解密密钥D需要特殊的算法和步骤。以确保不能从加密密钥E和公钥M推导出解密密钥D。  RSA体制是一种新型公钥密码体制。该公钥密码体制以数论为基础,其原理是:求2个大素数的

3、乘积很容易实现,但将一个大的合数分解成2个大素数很难实现。RSA加密和解密运算的数学表达式为:   C=XE(mod M)  X=CD(modM)  其中:X为明文,C为密文,(0  (1)M是2个大素数P,Q的乘积,从而M的欧拉数φ(M)=(P-1)×(Q-1)。  (2)D是大于P,Q的并与φ(M)互素的正整数。  (3)E是D关于φ(M)的乘逆。即ED=1mod(φ(M))。  满足以上3个条件,(E,M)便可作公钥对,(D,M)作密钥对。  例如:P=101,Q=113,那么M=P×Q=11413

4、,φ(M)=(P-1)×(Q-1)=100×112=11200,与φ(M)互素的整数E有无数个,因此,假设E=3533,根据公式ED=1mod(φ(M)),求得D=6597。假设明文X=9726,那么加密时密文C=97263533mod(11413)=5761,在解密时明文Y=57616597mod(11413)=9726。因此只要加密密钥E,解密密钥D和公共密钥M选择正确,加密前的明文X和解密后的明文Y一定是相同的。  2系统设计  网络信息加密解密系统包含2个主要部分,主机程序和客机程序。主机程序具有以下功能:密钥

5、参数的选择、对文件的加密解密、加解密文件的校验、修改用户密码;而客机程序则只有一个加密模块和用户重置加密密钥E和公钥M。如果B有重要的数据往A发送,则该节点就用A节点所发布的加密密钥E和公钥M为参数对重要数据进行加密,然后再将加密后的数据发送到A,由于这些数据都经过特殊的处理,不用再为数据的安全而担心。当一个网络的许多高级用户之间需要频繁地互相传递信息,并且还要求高级用户既能够对需要发送的数据加密,也能够对收到的经过加密的数据进行解密。这就要求在网络的高级用户的计算机上运行网络信息加密解密系统的主机程序。  该系统的设计

6、分为密钥选择模块、文件加密模块、文件解密模块、数据验证模块、修改密码模块、系统简介模块和退出系统模块等7大模块。    3程序的模块设计  3.1密钥选择模块的设计  选择RSA密码体制的密钥对主要是确定E,D,M。因为密钥对的选择不能随意产生,且P,Q的位数越多,攻破该密码体制所需时间也越长,系统就越安全。但位数越多,速度也越慢。该模块可以让用户自己来选择素数位数。  为方便用户,该模块不需用户直接输入2个大的素数P、Q的值,而是输入他们的邻近似任意数,然后由计算机根据特定的算法在邻近值附近找。得到2个大素数后,也得到

7、公钥M=P×Q,从而也得到M的欧拉数φ(M)=(P-1)×(Q-1)。  大于P,Q并和φ(M)互素的数有无数个,所以依旧采用由用户输入邻近值,系统在其附近寻找一个满足条件的整数E(其中用欧几里德算法判断E是否与φ(M)互素),得到加密密钥E之后,将进行寻找密钥的最后一步:求出解密密钥D,这可以根据式ED=1mod(φ(M))求得。  经过以上3个步骤,计算机辅助产生密钥对的工作结束。随后,计算机会提示是否将新产生的参数值更新为系统默认的参数值。用户有两种选择,更新和不更新。  3.2加密模块的设计  文件在计算机里是以

8、“0”、“1”的形式存储,一定的二进制比特流将表示一定大小的十进制整数。C是一个十进制的数(0≤C≤M),然后将十进制的数C写到目标文件。  3.3解密模块的设计  解密运算为X"=CD(modM)。解密模块和加密模块原理基本相同,只是从文件里读取需要解密的数据时必须与经过加密算法后写入目标文件时的数据相同。这一点是

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。