zoukankan      html  css  js  c++  java
  • 数字签名和数字认证

    图片如果损坏,点击链接:https://www.toutiao.com/i6499688776338506254/

    在学习"不对称算法"的时候,我们举了个例子,如何得到对称密钥:使用"博爱"和"新星",这是互联网上两个公司,操作人员通过"博爱"网站访问"新星"网站,

    (1)"博爱"网站首先生成一个随机数作为对称加密的密钥。

    (2)"博爱"网站向"新星"请求一个公钥

    (3)"新星"将公钥发送给"博爱"

    (4)"博爱"用"新星"的公钥加密自己的"对称密钥"。发送回"新星"

    (5)"新星"得到传输的内容后,用自己的私钥解密,得到"博爱"的对称密钥

    这个过程保证了数据的认证和数据的完整性,但是不能保证数据的安全性,即传输的数据被中间人获得后,虽然它不能解密数据,但是可以发一个新的数据。

    这个时候,就出现了一种新型的算法:摘要算法

    摘要算法的特征是:

    一个具备唯一性的内容,用摘要算法计算后,得到的结果也具备唯一性,并且无法从结果反推回原内容长什么样。因为类似于一个文档里的全部内容形成一个简短的摘要(签名),所以叫摘要算法。

    "博爱"给"新星"发送内容时,增加一个"签名"

    如果"博爱"请求"新星"的时候,这个"新星"公钥就有问题,被人篡改的话,数据还是有危险,针对这种情况,出现了数字证书。

    数字证书的作用类似一个中间机构CA,在请求"新星"公钥的时候,"新星"的公钥和相关内容是在CA中注册过,那么"博爱"拿到的就具备安全证书。

    比如我们常在浏览器看到各种证书弹出的界面,我们也可以查看,用360浏览器举例子

    这里可以查看证书

  • 相关阅读:
    Java基础之开发工具Eclipse的使用
    Java基础之身份证验证
    如何理解“程序=算法+数据结构”这句话
    JDBC
    Java与其它语言的比较
    Java整体之JavaEE
    Java项目之项目模板(登录注册)
    二进制
    计算机发展历程
    Spring错误:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.Bi
  • 原文地址:https://www.cnblogs.com/bqwzy/p/8297806.html
Copyright © 2011-2022 走看看