基于网络安全的WEB数字签名技术研究.docVIP

基于网络安全的WEB数字签名技术研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于网络安全的WEB数字签名技术研究   摘要:基于INTERNET提供服务的WEB站点面临着窃听和中间人攻击的威胁,利用公开密钥算法RSA,可通过对随机字符串的签名避免口令在传输过程中被窃听和遭受中间人攻击的危险。   关键词:身份认证;RSA签名;Windows;CryptoAPI      1引言      在以WEB形式提供服务的系统中,用户的身份鉴别至关重要,它是维护系统安全不可或缺的重要环节,决定了系统的后续动作。任何安全系统的实现都需要针对威胁等级和所要保护的信息的重要性,结合自身能力选择恰当的方案。当前流行的是采用用户名和密码(口令)登录的传统方式,其优点是用户易于接受、易于使用、成本低廉、不必再对基础设施进行投入即可得到基本的安全保障,只需简单的软件就可达到目的,因此得到了广泛的应用。   这种方式所面临的威胁主要是网络窃听、中间人攻击。用户密码若以明文在网络上传输极易被恶意攻击者窃取。例如:在共享式非交换网络中,各种网络监控软件可轻易截获网络传输的数据;交换式网络本来被窃听的可能性很小,但随着Dsniff的出现、ARP欺骗威胁的日益现实,也面临着同样的问题。用户密码历来是安全系统被攻击的首选目标,一旦泄漏会直接威胁到系统的正常运转。因此,大多数对安全性要求较高的应用,一般均在传输密码前先对其进行加密(利用DES、Rijndael等算法)。不过,这种方法仍然无法完全避免被窃听的危害,暴力攻击仍然是可能的,对弱口令更是如此。   如果采用了妥善的密码策略,则窃听造成的危害等级就会有明显下降。但是安全系统的安全性与易用性之间的平衡点很难掌握。试想如果被要求每半个月更换一次密码且不能与以前20个密码重复,用户会有怎样的反应呢?而且,更现实、更严重的威胁是中间人攻击。当前已有大量实例显示通过冒险的服务站点骗取用户信息并不难,大多数用户在享受网络的方便、快捷时很少考虑安全问题。屡见不鲜的个人信用卡资料被盗就是最有力的证据。      2公开密钥算法验证方案      公开密钥算法发展至今,已经成为密码学的一个重要组成部分。而最著名、应用最广泛的当属RSA算法,以至于一提公开密钥算法一般都是指RSA算法。RSA算法提供两种密钥――公开密钥和私有密钥。在RSA算法中,用公开密钥加密数据,用私有密钥进行解密实现普通的加密。但是,同样可以使用私有密钥加密而用公开密钥解密。这个特性使得RSA可以用作签名算法。发送方传送文件时,同时传送对文件摘要的RSA签名;接受方用同样的算法计算文件摘要,使用发送方的公开密钥解密签名,比较其是否一致即可鉴别文件是否是伪造的。   可考虑采用公开密钥算法进行数字签名来实现WEB站点的身份验证。用户申请服务时,主机产生一随机字符串发送给用户,用户用自己的私钥对该字符串签名并传回主机,随后主机使用该用户的公钥验证用户身份。   验证服务器给出随机字符串,客户对字符串进行数字签名,验证服务器验证签名的有效性,验证通过,客户得到要求的服务。   由于整个签名过程避免了用户私钥在网络上传输,从而杜绝了窃听的可能。对于中间人攻击,发起攻击的人只能得到用户名、随机字符串及其密文,破译出用户私钥的难度极大,以至于不值得或无法实现。即使有人发起选择密文攻击,由于此方案的特点――验证服务器自己保管用户的公钥,事实上用户的公钥也是保密的,他也无法获得用户私钥。若再加上适当的用户响应时间限制则安全性更好。从而,此方案实现了比传统方式更好的安全性,虽仍不及其他更严格的身份鉴别协议完善,但可以方便地使用ASP、JSP实现,不需投入硬件设施,而且可以直接与所要保护的服务系统整合在一起,更适于要求综合考虑安全性、易用性、成本等因素的中小型网络系统应用。      3利用公开密钥算法RSA建立公/私钥系统      在诸多公开密钥算法中RSA算法被研究得最多,已非常成熟,在世界上许多地方已成为事实上的标准。而且其专利已到期,我们可以毫无障碍地使用。虽然随着技术的发展,它要求模数的位数越来越多(当前要求1024位,推荐1280位),导致加/解密速度缓慢,但对于局域网这样的应用,显然用不着如此之多的位数。因此,采用RSA算法是值得一试的。由于现在许多密码学教材都有关于RSA算法的详细内容,网上对RSA算法的原理及实现也有许多材料,例如:FLINT/C、GNU MP、Miracle等等,这里对RSA算法产生公/私钥的详细步骤不再赘述。   有一个很简便快捷的实现方法,就是利用Windows CryptoAPI函数建立用户公/私钥库。使用Windows CryptoAPI时,先调用CryptAcquireContext()函数连接加密服务程序,再配合CRYPT-EXPORTABLE参数调用Crypt

文档评论(0)

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

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

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档