关于SSL通信以及python的实现

原理网上都有,我这里写点干货。用SSL通信的本质是啥?本质就是客户端拿着认真机关的证书  ca.crt 去认证对方网站到底是不是你要访问的。

为啥会这样?因为有人会写一个假的网站啊。人家可以写一个假的页面然后把你的流量骗过去(及流量劫持)。然后你在这个假的网站上输入了用户名密码之后就等着信息被滥用吧。

为了避免这样的情况,所以才有SSL这个工具。客户端以后每次访问一个重要的网站时就要拿着发证机关(Cerficate Authority)的证书和对方连接的时候验证一下。咋验证的呢?你连接的时候对方也有要给证书,这个证书也是CA发给他们的,里面的内容进行了加密,只要拿CA发给客户的那个证书对接一些就知道对面网站的那个证书是不是真的。这就是SSL的基本逻辑。当然,还有一个就是通信的过程也是加密了的,这样就不太容易被窃听的人看明白(即中间人攻击)。那个你大概知道一下就OK。

所以SSL等于解决了两个问题,1 流量劫持 2 中间人攻击。

把基本逻辑搞定之后就可以干活了:

以下内容是在linux命令行里完成的:

一 、 生成CA证书

首先要明确一下,互联网上那些大型网站的https都会是有一些专门的CA机构给他们做认证。我们这里是做实验,所以自己做CA 然后自己给自己认证。所以我们先生成一个CA证书,客户端访问服务器时就是拿着这个玩意来和服务器做认证的。

# 1.先创建 CA 私钥,这个是用来生成ca.crt用的
$ openssl genrsa -out ca.key 2048
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值