第10章 安全套接字精选.pptVIP

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 安全套接字精选

网络编程的安全性 欧阳宏基 * 主要内容 1. 数字签名 公有密钥体制、私有密钥体制、 数字签名过程与算法、数字证书 与数字签名相关的Java API 2. SSL(安全套接字)与JSSE基本应用 数字签名 数字签名(Digital Signature):通过在数据单元上附加数据或者对数据进行秘密转换,防止他人对传送的数据进行破坏,从而使接收者可以确认数据的来源和完整性。 基于公有密钥体制和私有密钥体制都可以获得数字签名,绝大多数的数字签名是基于公钥密码体制的数字签名。 采用数字签名能够确保以下两点: (1)信息是由签名者发送的。 (2) 信息自签发后到接收者收到为止未曾做过任何修改。 一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。 * 私有密钥体制 私有密钥加密系统使用唯一的密钥(即私有密钥)进行加密和解密。该密钥必须为发送者和接收者所共享。即,若甲要向乙发一个加密邮件,甲需用一密钥将信息加密;乙收到邮件后,须用同样的密钥将信息解密。    私有密钥体制的缺点: (1) 一定要有一种安全的协议来保证密钥传送的可靠; (2) 有紧急的加密消息需要发送时,可能因接收方没有密钥而不能完成传送; (3) 若要将消息发给许多不同的团体,就需要与各个团体对应,维护许多不同的密钥。    为克服私有密钥加密系统的这些弱点,人们引进了公共密钥加密系统。 * 公有密钥体制 (1) 鲍勃有两把钥匙,一把公钥,一把私钥 * (2) 鲍勃把公钥送给他的小伙伴,每人一把。 公有密钥密码体制是现代密码学的最重要的发明和进展。在公有密钥体制中有两种密钥:一种公钥,一种私钥,两者都可以用于加密和解密。 用公共密钥加密的信息只能用与之对应的私有密钥解开;而用私有密钥加密的信息,任何拥有与之对应的公共密钥的人均可解开(这一点也是数字签名的实现原理)。因此,私有密钥总为个人保管而无须外传,公共密钥则可授权给他人使用而不会破坏安全性,公共密钥和私有密钥之间永远存在着一对一的关系。 公钥密码体制 * (3) 苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果。 (4)鲍勃收信后,用私钥解密,看到信件内容。 数字签名实现过程 * (1)鲍勃给苏珊回信,写完后用Hash函数,生成信件的摘要(digest)。 (2)鲍勃使用私钥,对这个摘要加密,生成“数字签名”(signature)。 数字签名实现过程 * (3)鲍勃将这个签名,附在信件下面,一起发给苏珊。 (4)苏珊收信后,取下数字签名,用鲍勃的公钥解密,得到信件的摘要。由此证明,这封信确实是鲍勃发出的。 (5)苏珊再对信件本身使用Hash函数,将得到的结果,与上一步得到的摘要进行对比。如果两者一致,就证明这封信未被修改过。 数字证书 公钥是可以冒充的,那么如何该保证公钥的可靠性呢?公钥加密体系采取了一个办法,将公钥和公钥的主人信息联系在一起,再请一个大家都信得过有信誉的、公正、权威机构确认,并加上这个权威机构的签名。这就形成了证书。 * (1)证书中心用自己的私钥,对鲍勃的公钥和一些相关信息一起加密,生成数字证书(Digital Certificate)。 数字证书 * (2)鲍勃拿到数字证书以后,再给苏珊写信,只要在签名的同时,再附上数字证书就行了。 (3)苏珊收信后,用CA的公钥解开数字证书,就可以拿到鲍勃真实的公钥,然后就能证明数字签名是否是鲍勃签的。 数字证书的应用 “数字证书”的典型实例:利用https协议在客户端和服务器之间通信。 * (1) 客户端向服务器发起加密请求。 (2)服务器用自己的私钥加密网页以后,连同本身的数字证书,一起发送给客户端。 数字证书的应用 * (3)客户端(浏览器)的“证书管理器”,有“受信任的根证书颁发机构”列表。客户端会根据这张列表,查看解开数字证书的公钥是否在列表之内。(浏览器“工具”-“Internet选项”-“内容”) 数字证书的应用 * (4)如果数字证书记载的网址,与你正在浏览的网址不一致,就说明这张证书可能被冒用,浏览器会发出警告。 数字证书的应用 * (5)如果这张数字证书不是由受信任的机构颁发的,浏览器会发出另一种警告。 数字证书的应用 * (6)如果数字证书是可靠的,客户端就可以使用证书中的服务器公钥,对信息进行加密,然后与服务器交换加密信息。 数字签名算法 在数字签名方面,应用比较广泛的是:RSA算法。 该方法的过程如下: * 数字签名算法 数字签名算法一般分为两个步骤:产生消息摘要和生成数字签名。 (1) 首先,系统根据一定的单向加密算法计算出消息的消息摘要。 ? 使用单向散列函数(Hash函数)的目的是将任意长度的消息压缩成为某一固定长度的

文档评论(0)

pfenejiarz + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档