https加密

加密方式

对称加密算法:

加密和解密使用的密钥相同,适合经常发送数据的场合。优点:加解密速度都很快。缺点:密钥传输麻烦,如果泄漏密钥则报文会被破解。如AES。

非对称加密算法:

加密和解密使用的密钥不同,适合偶尔发送数据的场合。优点:密钥传输方便。缺点:加解密速度较慢。实现上常常通过构造数学难题来实现,比如大数计算等,所以慢。如RSA。

https如何加密

原理介绍

采用对称加密+非对称加密混合的方法。先采用非对称加密方式协商出一个密钥,然后在报文交换通信阶段用这个密钥完成对称加密。

charles如何抓取https数据包

中间人攻击的方式:中间人攻击是先伪装服务器向浏览器发送伪造的公钥,从而取得浏览器发送的私钥,这样就完成的浏览器端的解密。服务器端类似。

造成中间人劫持的原因是客户端没有对服务端证书及域名做校验或者校验不完整,客户端收到服务端传来的非对称加密公钥时,该密钥可能已经被中间攻击人替换了。因此从预防的角度讲,如果发生中间人攻击时,客户端能够不信任中间人,这种攻击就是无效的。CA数字证书就是用来解决客户端和服务器信任的问题。

charles伪造的证书一般浏览器会警告,所以抓包时我们需要在客户端将charles的证书设置为信任的,以便charles实现中间人劫持。

more

其他应用

场景:如何保证接口的请求参数不泄露?

可以对请求参数采用RSA+AES的方式对请求参数做加密。

具体使用:使用随机数或时间戳做一个原始密钥,对接口请求参数做AES加密。前端利用自己保存的RSA公钥对原始AES密钥做加密,然后把加密后的AES密钥和请求参数一起传给后端。后端接受到请求后,先利用自己保存的RSA私钥解密得到原始AES密钥,再利用AES密钥对请求参数做AES解密,最终得到原始数据。

-------------本文结束 感谢您的阅读-------------