ESA2GJK1DH1K安全篇: 这节聊聊SSL单向认证

Posted yangfengwu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ESA2GJK1DH1K安全篇: 这节聊聊SSL单向认证相关的知识,希望对你有一定的参考价值。

 

 

说明

  单向认证最多的是认证服务器是不是可以信赖的,大部分https都是基于单向认证,不过银行系统应该是双向的.

  如果链接的服务器是别人伪造的服务器,那么自己的各种信息将会被不法分子滥用!

  首先要明确一点,所有的通信都是走的TCP,然后在TCP传输的数据上做了些文章

为何需要加密呢?

  客户端 ---- 服务器 

  如果只是走http那么所有的数据将会暴露出来

  (实际上就是用TCP发送的数据,数据没有任何的加密措施)

  比如说:访问我的 http://mnif.cn/

  我假设是一个小小小的黑客,然后就监控到了下面的数据了

  技术图片

 

 

  大家会感觉这有什么

  但是大家想一下,如果上面是传输的咱银行卡信息呢?????

  大家又会想,什么时候可能会传输银行卡信息呢???

  你在浏览器/手机APP上输没输过银行卡号??输没输过密码???

  要是这些信息不加密传输,窃听到这些信息是很容易的.

  大家如果不是搞支付软件的,可能感觉不出来,但是银行也好,支付宝也好,微信也好

  他们可是为了支付数据安全下了大工夫,咱平时只是用他们的软件,可能没多大感受.

先了解点数据加密知识

  假设我要传输的数据是 aabbcc

  一,简单的加密

    客户端和服务器有个约定每隔一个数据插入数据1

    然后客户端发送的就是 a1a1b1b1c1c

    发给服务器以后服务器便知道需要去掉插入的数据1,然后提取aabbcc

    服务器发给客户端也同理

  二,对称加密

    客户端:

      数据加密算法(aabbcc,秘钥(自定义的字符串或者数字))  

      通过某种加密算法,把要发送的数据和秘钥计算以后再发给服务器 XXXXXXXXXX

    服务器:

      数据解密算法(客户端发来的加密以后的数据,秘钥(该秘钥和客户端的相同))

      通过解密算法,然后填入和客户端一样的秘钥,解析出来真实的数据 aabbcc

    加密和解密使用的密钥相同的。然后调用相应的加密算法/解密算法

    最常用的对称加密算法: AES 

  三,非对称加密

    ---------------------------客户端→服务器-----------------

    客户端:

      数据加密算法(aabbcc,公钥)  

      通过某种加密算法,把要发送的数据和公钥计算以后再发给服务器  XXXXXXXXXX

    服务器:

      数据解密算法(客户端发来的用公钥加密以后的数据,私钥)  

      通过解密算法和私钥解析出来真实的数据 aabbcc

    ---------------------------服务器←客户端-----------------

    服务器:

      数据加密算法(aabbcc,私钥)   XXXXXXXXXX

    客户端:

      数据解密算法(服务器通过私钥加密的数据,公钥)  aabbcc

    

    首先要明确公钥和私钥是一对的.

    用公钥加密的信息可以用私钥进行解密

    用私钥加密的信息可以用公钥进行解密

    

    常用的加密算法: RSA

 

  四,补充 哈希Hash加密算法

    常见的有 MD5 , SHA

    这些加密算法是不可逆的

    就是说一旦数据加密,便不可解密

    注意:可以跑字典跑出来!!!!但是跑的时间很长很长很长很长......

现在咱看看如何利用上,上面的加密

 

 

 

 

  

 

以上是关于ESA2GJK1DH1K安全篇: 这节聊聊SSL单向认证的主要内容,如果未能解决你的问题,请参考以下文章

ESA2GJK1DH1K安全篇: Android以SSL方式连接MQTT服务器

ESA2GJK1DH1K安全篇: Wi-Fi 模块(8266)以SSL方式连接MQTT服务器

ESA2GJK1DH1K安全篇: 使用Wireshark监听MQTT上位机通信数据

ESA2GJK1DH1K:基础篇: 内容简介

ESA2GJK1DH1K基础篇: 阿里云物联网平台: 测试MQTT客户端接收云平台的数据

NGINX优化之路WEB安全篇