您好,欢迎来到360论文服务中心!设为首页 | 加入收藏

360论文服务中心

客服中心

全国咨询电话:18810141013

QQ :点击这里给我发消息 80017332

 点击这里给我发消息 634602927

手机:18810141013

邮箱:634602927@qq.com

短信:18810141013

本站介绍

360论文服务中心是最受欢迎的论文发表与论文编辑服务网站。

360论文服务中心于2000年创建,注册用户量已突破152万人,并帮助近380万人次顺利发表论文。14年来,360论文服务中心始终遵循热情快捷、安全可靠的服务宗旨,深受广大网民青睐。360论文服务中心主要设有论文发表部、论文创作部、期刊合作部、论文采编部、技术运营部和市场推广部等多个部门,是目前国内论文行业,规模最大、服务人员最多的正规网站。

创作发表说明

1. 如果您没有论文,还要评定职称,需要发表论文,请联系我们,客服人员会及时处理;

2. 教授、博士组成的论文指导团队,专业打造高品质论文;

3. 合作期刊,全国最全,与杂志社关系稳定,保证刊期。

360论文服务中心 > 论文写作 > 理工毕业论文 > 计算机论文 >

电子文档保护系统的关键技术研究——典型加密算法分析

2016-04-16 18:56 字体:   打印 收藏 

    电子文档保护系统的设计和实现需要用到许多关键技术,本章将对系统中涉及到的相关关键技术进行介绍和分析,包括:DES、RSA加密技术、Windows Hook技术、WinSocket技术、多线程技术等。

2.1    典型加密算法分析

        数据加密技术是指将一个信息(或称明文)经过加密钥匙及加密函数转换,变成无意义的密文,而接收方则将此密文经过解密函数、解密钥匙还原成明文。
数据加密技术要求只有在指定的用户或网络下,才能解除密码而获得原来的数据,这就需要给数据发送方和接受方以一些特殊的信息用于加解密,这就是所谓的密钥。其密钥的值是从大量的随机数中选取的。目前广泛使用的加密技术通常分为两大类:常规密钥加密(对称加密技术)和公开密钥加密(非对称加密技术) [6]
(1) 常规密钥加密技术
常规密钥加密技术也称为对称加密技术,它是加密密钥和解密密钥完全相同或者一个密钥很容易从另一个密钥中导出。它要求发送者和接受方在安全通信之前,商定一个密钥,密钥经过安全信道由发送方传给接收方。对称算法的安全性依赖密钥的安全性,泄漏密钥就意味着得到密钥的任何人都能对信息进行处理。典型对称密码加密方案的基本构成如图2-1所示。对称密钥算法应用较多的是DES加密算法[7]

 (2) 公开密钥加密技术
公开密钥加密技术也叫非对称加密技术。如果一个加密系统把加密和解密的能力分开,加密和解密分别用两个不同的密钥实现,并且不可能由加密密钥得出解密密钥,或者不可能由解密密钥得出加密密钥,则该系统就是公开密钥密码系统,如图2-2所示。
 
 
公开密钥密码系统使用的一对密钥称为公开密钥和私有密钥。为便于区分,公开密钥表示为PK,私有密钥表示为SK。公开密钥密码系统的主要优点是可以适应开放性的使用环境,密钥管理问题相对简单,可以方便而安全地实现数字加密。用一个密钥加密过的数据只能由另一个来解密,其中一个密钥由用户保存为私有密钥,另一个向所有要进行加密传输信息的使用者公开,为公开密钥。当用户A向用户B发送信息时,使用用户B的公开密钥PKb加密信息,那么只有这个用户能使用自己的私有密钥SKb解开信息,这样就能保证信息不被别人窃取。同样用户A用自己的私钥SKa加密信息,用户B只能使用他的公开密钥PKa才能解开,这样在保护数据的同时确认了信息是由用户A发出的,而不是其他人的伪造信息。在这个系统中,加密算法E解密算法D公开的,公开密钥PK也是公开的,只有私有密钥SK需要由用户自己保密。在计算机上可以产生成对的PK和SK,虽然SK和PK成对出现,但却不能根据PK计算出SK,也不可以根据SK计算出PK。在公开密钥密码系统中广泛采用RSA算法[8-10]
2.1.1  DES加密算法
DES是一个分组加密算法,分组长度为64比特,每组64位明文加密成64位密文。实际使用密钥长度为56比特,通常输入的64比特密钥中有8个奇偶校验位,第8,16,24,32,40,48,56,64为奇偶校验位。
DES对64比特的明文进行操作,通过一个初始置换(IP),将明文分成左半部分Li和右半部分Ri,各32比特。进行16轮完全相同的运算,在运算过程中数据与密钥结合。使用数学公式2-1。
Li=Ri-1, Ri=Li-1⊕ f(Ri-1,ki)  i=1,2,…16              (2-1)
图2-3 描述了DES算法的第i轮的迭代过程,其中Ci-1和Di-1分别是第i-1轮密钥迭代结果的左右两部分,各28比特。密钥按移位规则进行左移位,通过PC-2置换规则由56比特转换为48比特,即密钥Ki:Li-1和Ri-1分别是第i-1轮数据迭代结果的左右两部分,各32比特。数据右半部分Ri-1做为下一轮的左半部分Li,即Li=Ri-1 。Ri-1 通过扩展规则E由32比特扩展为48比特,再与密钥Ki异或,然后通过S盒变换,产生32比特的输出,经过一个P置换,与数据左半部分Li-1 进行异或最终得到下一轮的右半部分Ri。
经过16轮迭代后,将左、右部分交换并结合,再经过逆置换IP-1 得到64比特密文,完成算法,如图2-4所示。
由上面的详细描述可以总结出DES加密算法的具体步骤:
(1) 将明文分组,每组输入64位的明文;
(2) 初始置换(IP),初始置换过程是与密钥无关的操作,仅对64位码进行移位操作;
(3) 迭代过程,共16轮运算,这是一个与密钥有关的对分组进行加密的运算;
(4) 逆初始置换(IP-1),这一变换过程也不需要密钥;
(5) 输出64位码的密文。
DES算法的解密算法与加密算法相同,只是解密使用子密钥与加密子密钥的使用顺序刚好相反。它的安全性依赖于所用的密钥。
 
 
    
2.1.2  RSA加密算法
RSA也称非对称密钥算法。它使用相互关联的一对密钥:一个公共密钥和一个私人密钥,而且,不可能从其中一个推导出另一个。使用一个密钥加密的任何信息都只能用另一个密钥解开,用户要保存好私人密钥,公共密钥可以发布出去。RSA算法的体制构造是基于数论的欧拉定理,它的安全性依赖于大数因子分解的困难性。加密/解密算法是公开的,算法是不可逆的。RSA算法描述如下:
(1) 选择一对不同的、足够大的素数p,q;
(2) 计算n=p*q;
(3) 欧拉函数f(n)=(p-1)(q-1),同时对p, q严加保密,不让任何人知道;
(4) 随机选择加密密钥e,且与f(n)互质 (1<e<f(n));
(5) 计算解密密钥d,使得de≡1 mod f(n)。也可表达为d ≡e-1 mod f(n)    (≡是数论中表示同余的符号。公式中,≡符号的左边必须和符号右边同余,也就是两边模运算结果相同。显而易见,不管f(n)取什么值,符号右边1 mod f(n)的结果都等于1;符号的左边d与e的乘积做模运算后的结果也必须等于1。这就需要计算出d的值,让这个同余等式能够成立。);
(6) 公钥KU=(e,n),私钥KR=(d,n);
(7) 加密时,先将明文变换成0至n-1的一个整数M。若明文较长,可先分割成适当的组,然后再进行交换。设密文为C,则加密过程为C≡Me(mod n);
(8) 解密过程为:M≡Cd(mod n)。
上述的详细过程可总结为表2-1。
 
2.1.3  DES与RSA的混合加密技术
下面将从处理效率、密钥管理等方面对RSA和DES两种加密算法进行比较分析。
(1) 在加密、解密的处理效率方面,DES算法优于RSA算法。DES密钥的长度只有56比特,可以利用软件和硬件实现高速处理,在软件实现的时候,加密速率每秒钟可以达到几兆字节,适合于大量信息的加密;RSA算法由于进行的都是大数计算,使得RSA最快的情况也比DES慢得多,无论是软件还是硬件实现,速度一直是RSA的缺陷,一般来说只用于少量数据加密。  
(2) 在密钥的管理方面,RSA算法比DES算法更加优越。因为RSA算法可采用公开形式分配加密密钥,对加密密钥的更新也很容易,并且对不同的通信对象,只需对自己的解密密钥保密就行;DES算法要求通信前对密钥进行秘密分配,密钥的更换困难,对不同的通信对象,DES需产生和保管不同的密钥。在签名和认证方面,DES算法从原理上不可能实现数字签证和身份认证,但RSA算法能够容易地进行数字签证和身份认证。
鉴于两种加密技术的特点,系统中的文档加密运用的是DES和RSA 的混合加密算法。采用DES算法加密文件,采用RSA算法加密DES密钥,这样较好地解决了运算速度和密钥分配管理问题[11-13]
本系统正是采用了DES和RSA混合加密的加密技术,不仅能够提高处理速度,同时增强了安全性能。



联系我们

全国免费热线:400-086-0807
咨询QQ:634602927
投稿邮箱:634602927@qq.com