https抓包原理算法
不少工具能够抓包,我用的是Charles for Mac 能够抓包。服务器
抓手机https包的过程
mac要安装证书并设成新人,先把手机局域网设成和MAC同样的,设置代理IP和443端口,而后手机下载证书并安装,同时设置信任。以后Charles就能抓到手机上的网络请求了。网络
抓包工具伪造了自签名证书以后能够成功抓包,而且抓到的是明文。tcp
加密层位于http层(应用层)和tcp层(传输层)之间, 因此抓到的http层的数据并无加密。 同理, 在后台接收端, 经历解密后, 到达http层的数据也是明文。 要注意, https不是对http报文进行加密, 而是对业务数据进行加密, 而后用http传输。因此须要在客户端对密码进行MD5加密处理才行。ide
https抓包的原理就是抓包程序将服务器返回的证书截获 ,而后给客户端返回一个它本身的证书;工具
客户端发送的数据抓包程序用本身的证书解密,而后再用截获的证书加密,再发给服务器 因此你在能看到明文。加密
密文是针对https两端之外其余路径而言,你做为https连接的两端,固然能够看到明文 。代理
HTTPS是经过一次非对称加密算法(如RSA算法)进行了协商密钥的生成与交换,而后在后续通讯过程当中就使用协商密钥进行对称加密通讯,之因此要使用这两种加密方式的缘由在于非对称加密计算量较大,若是一直使用非对称加密来传输数据的话,会影响效率。it