美文网首页
对称加密,非对称加密

对称加密,非对称加密

作者: LoZR | 来源:发表于2019-01-30 14:22 被阅读0次
    首先附上证书转换的方法,如下:
    1. 在服务器人员,给你发送的crt证书后,进到证书路径,执行下面语句 $openssl x509 -in 你的证书.crt -out 你的证书.cer -outform der 这样你就可以得到cer类型的证书了,并双击导入电脑

    2. 证书放入工程 :
      2.1 可以直接把转换好的cer文件拖动到工程中
      2.2 可以在钥匙串内,找到你导入的证书,单击右键,导出项目,就可以导出.cer文件的证书了

    以上资料参考:https://blog.csdn.net/st646889325/article/details/53856833

    以下使用通俗一点的名称作假设:
    公钥 可以理解为 保险柜,用于加密数据
    私钥 可以理解为 解锁密码,用于解密获取数据
    只有对应的 私钥 才能打开 公钥 ,服务端的 公钥+私钥 是成一对存在。
    客户端生成的随机数 ,这个东西是具有加密、解密 功能。

    完成以上 .crt 转换 .cer 并导入到工程之后,工程(客户端)上已经有 服务端的保险柜 了,因为它是从这个 .cer 证书里取出来的。

    非对称加密

    1.当 客户端 发起请求时,会生成一个随机数,并备份在本地存有一份;然后利用 服务端的保险柜 锁着这个随机数 并发送过去 服务端
    2.服务端 收到之后,使用只有自己知道的 解锁密码 去打开并获得 客户端生成的随机数; 此时双方都持有了这个 随机数

    此传输过程就是 非对称加密,这种方式在传输工程中如果遭到了第三方hook也不会有影响,因为保险柜必须解锁才能知道里面装得是什么东西,然而这个解锁密码 就只有 服务端 知道。

    对称加密

    经过上述的非对称加密之后, 客户端服务端 都持有了相同的 随机数
    当建立连接传输数据的时候,会使用这个 随机数 对数据进行加密,接收数据的一方再用 随机数 进行解密获得。

    7311548829309_.pic_hd.jpg

    以下附上 TCP三次握手 的相关资料:
    https://baijiahao.baidu.com/s?id=1614404084382122793&wfr=spider&for=pc
    https://www.zhihu.com/question/24853633?sort=created

    以上内容纯粹个人见解,仅用于分享交流,如有描述不当之处,欢迎指出

    相关文章

      网友评论

          本文标题:对称加密,非对称加密

          本文链接:https://www.haomeiwen.com/subject/pcoxsqtx.html