- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
USBKEY技术性
大家好:
?????? 一篇关于USBKEY技术性、安全性全面探讨的文章,内容涉及目前主流UBSKEY在网银应用中的安全性和各种攻击手段的分析,供大家学习、交流。(内容有点长,好在是循序渐进,要有耐心哦,一定会让你豁然开朗的!)
基础知识
我们常见的加密,使用的是“对称加密算法”,也就是说,用一个密码加密的东东,同样可以用这个密码来解密。我们称这样的加密算法为“对称加密算 法”,用于对称加密算法中的密码,我们称之为“对称密钥”。一旦别人知道了你的密钥,那么他就可以任意的解密你的秘密数据了。这样的算法很多,常见的有 DES,3DES,AES,Blowfish等等。
使用USB Key来保证网银的安全,实际上是利用了PKI(公开密钥体系)技术中的数字证书应用,而PKI技术中至关重要的一点就是“保证私钥的安全”。为了理解所谓的“保证私钥的安全”,我们先举一个简单的例子:假定有这样一种计算方法,可以将一篇文章用一个密钥A加密,要想解密的话,必须用另一个密钥B来解密, 反过来也一样,用密钥B加密之后得到的密文只能用密钥A来解密。这里的密钥A和密钥B一定是成对出现的,一一对应,绝对不会出现用密钥A加密的东西可以用 密钥C、密钥D…等等来解密。这样的算法我们称之为“非对称加密算法”,相对应的,这里的密钥A和密钥B我们称之为“密钥对”,因为它们是成对出现的。密钥对中的一部分可以随意公开,例如其中的密钥A,我们称之为“公开密钥”,简称公钥。而另外一半是自己持有的,需要保密,我们称之为“私有密钥”,简称私钥。所谓“公开密钥体系”,就是指这里的公钥了。我们常听到的RSA,就是这样一种算法。此外还有DSA、ECC(椭圆曲线算法)等等。
使用公开密钥体系,不仅仅可以用来对数据加密,还可以用来确定身份。试想一下:你有一对密钥对(A和B),其中A是公钥,被放在网上,任何人都可以取得。现在有人(如张三)想给你发送一份邮件,于是张三在网上找到你的公钥,然后将邮件用你的公钥加密并传送给你。那么,只要你的私钥没有泄露出去,就 只有你能够解密这封邮件(使用和A相对应的私钥B来解密)。即使邮件在网络上传输的过程中被黑客获取了,没有私钥B,他也无可奈何。这就意味着,使用公开密钥技术,可以保证只有指定的人(其实就是指定的私钥)才可以阅读私密信息。
反过来,如果张三先用他自己的私钥对邮件加密,然后再用你的公钥对密文再次加密,那么不但只有你能够阅读这封邮件,而且还可以确认这封邮件一定是张三发出来的。这是因为你在收取到邮件之后,首先用自己的私钥解密,得到的还是一堆密文,然后你必须用张三的公钥再次解密,才能得到邮件的原文。既然是使用张三的公钥才能解密,那么这封邮件一定是用张三的私钥加密过的。
此外,还有一种用法:例如你的老板(或者干脆你就是老板)要发布一份公告,内容为“给所有员工补助500元”,要求每个员工都能够看到,不用加密。 但是这封邮件在网络上传输的时候,被有心人篡改了,变成了“给所有员工补助5000元”,喔,老板亏大了~~~为了防止这种事情的发生,老板将公告用自己的私钥加密并附加在公告的后面,然后一起发送。这样每个员工都能够用老板的公钥解密附加的密文,并与公告原文对比,于是就能够知道邮件在传输的过程中是否被篡改了。
高级阅读
除了对称算法和非对称算法之外,还需要了解一种加密算法,称之为“散列”(也有人称之为“杂凑”、“哈希”等,英文名为Hash),与对称/非对称算法不同的是,散列算法是不可逆的,也就是说,加密后的数据是无法再解密了,常见的散列算法有MD5、SHA1等。散列算法还有一个特性就是无论原文有多长,散列之后的结果总是固定长度。例如MD5散列的结果总是16字节,SHA1散列的结果总是20字节。
非对称加密算法的加解密速度要远远低于对称加密算法,所以在实际应用中,往往会将对称、非对称及散列算法混合使用,以提升性能。例如,张三给你发邮 件的时候,先产生一个随机数,用这个随机数来做对称算法的密钥并对邮件加密,随后用你的公钥对这个随机数加密,然后将邮件的密文和随机数的密文一起发给 你。你收到邮件之后,先用自己的私钥解密随机数,然后用随机数作为对称算法的密钥解密邮件。
随机数=对称密钥 加密文件
发送给对方
对方公钥 加密随机数
又如,老板发布公告的时候,将公告进行散列,然后用老板的私钥对散列后的结果加密(这个加密结果,就是通常所说的“数字签名”),而员工收到公告的 时候,只需要再次对公告进行散列,并用老板的公钥对数字签名进行解密,然后将解密结果和公告的散列结果做对比,就能了解公告是否被篡改了。这个对比的过 程,就是通常所说的“验证签名”。
由此可见,公开密钥体系能够做到:
文档评论(0)