毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

JAVA加密解密算法研究 第3页

更新时间:2009-7-27:  来源:毕业论文

自带密钥的加密解密算法研究
保存是与密钥备份不同的另一个问题。一般来说, 有一个或多个第三方保存密钥的工具或部分密钥工具, 所有第三方钥密持有人一起才能生成一个完整的工具。另一个较好的方法是周期更新密钥, 就象当初生成公共/专用密钥对一样, 更新密钥也要花费CPU的周期, 比较好的主意是错开更新的日期。


二、数字签名
是一种确保数据完整性和原始性的方法。数字签名可以提供有力的证据,表明自从数据被签名以来数据尚未发生更改,并且它可以确
认对数据签名的人或实体的身份。数字签名实现了“完整性”和“认可性”这两项重要的安全功能,而这是实施安全电子商务的基本要求。当数据以明文或未加密形式分发时,通常使用数字签名。在这种情况下,由于消息本身的敏感性无法保证加密,因此必须确保数据仍然保持其原来的格式,并且不是由冒名者发送的。因为在分布式计算环境中,网络上具有适当访问权的任何人,无论是否被授权都可以很容易读取或改变明文文本。数字签名主要是为了证明发件人身份,就像我们来看到的某文件签名一样。但现在要说的签名是采取电子数字签名的方式。这种签名还可以防止别人仿签,因为经过加密过的签名会变得面目全非,别人根本不可能看到真正的签名样子。在第9.5.2节介绍了在文件传输和邮件发送中利用文件加密方式来阻止非法用户打开的原理,其实仅用了文件加密方式还不足以保证邮件传输的真正安全,因为邮件内容还可能被非法用户替换,尽管这些非法用户不能查看原邮件中的真正内容。这就涉及到如何确保自己收到的邮件就是自己希望的用户发来的问题了,此时就需要用到数字签名技术。但是在邮件传输中,通常又不是单独使用文件加密或者数字签名,而是一起结合起来使用,它们两者一起作用就可取到非常好的安全保护了。下面仍以第9.5.2节实例为例进行介绍,不同的只是在此封邮件发送中同时采用了文件加密和数字签名,实施双重保护。具体步骤如下。
Alice与Bob互换公钥。
Alice用自己的私钥对TXT文件进行数字签名。
Alice用Bob的公钥对TXT文件进行加密。
Alice把经过数字签名和加密的文件TXT,通过邮件或其他传输途径,如QQ、MSN等)传给Bob。
Bob在收到签名并加密的邮件后首先用Bob自己的私钥进行文件加密的解密,然后再用Alice的公钥进行数字签名解密。
同样,在这个过程中Cinda也可以获取Bob、Alice的公钥和签名并加密的标书文件TXT。同时因无Bob的私钥而无法打开邮件。同时由于Alice在发送文件前已用自己的私钥进行了数字签名,所以当Bob在收到邮件后完全可以证实自己收到的就是Alice发来的邮件,而不可能是其他用户的。试想如果Cinda非法用户想要改变邮件,冒充Alice向Bob发送邮件,因Cinda没有Alice的私钥,所以在用其他用户的私钥进行数字签名时就不可能再以Alice的公钥来解密数字签名了。在这里要注意文件加密和数字签名的先后顺序,一定是先签名再加密,这样加密技术就可以同时保证邮件中的数字签名了。如果先加密,而后签名,非法用户在得到邮件后就可通过获取的公钥破解数字签名了,因为公钥是可以公开的,很容易被一些别有用心的人得到。数字签名破解后很可能签名被替换。当然邮件中的内容在没有收件人私钥的情况下还是无法打开的。 以上介绍的是利用公钥和私钥进行文件加密和数字签名的原理,其实在实际应用中,这些公钥和私钥用户是不用具体关心它们的组成,而是由证书颁发机构或者软件自己生成。就拿公钥来说吧,那么长的代码,看起来都怕,而且随着密钥位置的增加,代码长度也随之增加,当然破解难度也将增加,也就越安全。但在一定程度上对使用有一些影响。


三、数字签名主要经过以下几个过程
信息发送者使用一单向散列函数(HASH函数)对信息生成信息摘要;
信息发送者使用自己的私钥签名信息摘要;
信息发送者把信息本身和已签名的信息摘要一起发送出去;
信息接收者通过使用与信息发送者使用的同一个单向散列函数(HASH函数)对接收的信息本身生成新的信息摘要,再使用信息发送者的公钥对信息摘要进行验证,以确认信息发送者的身份和信息是否被修改过。

数字加密主要经过以下几个过程:
当信息发送者需要发送信息时,首先生成一个对称密钥,用该对称密钥加密要发送的报文;
信息发送者用信息接收者的公钥加密上述对称密钥;
信息发送者将第一步和第二步的结果结合在一起传给信息接收者,称为数字信封;
信息接收者使用自己的私钥解密被加密的对称密钥,再用此对称密钥解密被发送方加密的密文,得到真正的原文。
数字签名和数字加密的过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也不同。数字签名使用的是发送方的密钥对,发送方用自己的私有密钥进行加密,接收方用发送方的公开密钥进行解密,这是一个一对多的关系,任何拥有发送方公开密钥的人都可以验证数字签名的正确性。数字加密则使用的是接收方的密钥对,这是多对一的关系,任何知道接收方公开密钥的人都可以向接收方发送加密信息,只有唯一拥有接收方私有密钥的人才能对信息解密。另外,数字签名只采用了非对称密钥加密算法,它能保证发送信息的完整性、身份认证和不可否认性,而数字加密采用了对称密钥加密算法和非对称密钥加密算法相结合的方法,它能保证发送信息保密性。

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

JAVA加密解密算法研究 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。