Brains


Algorithm、Machine Learning、Search、cloud computing
on kubernetes, HTTPS

浅谈HTTPS认证

在学习kubernetes的过程中,关于监控部署这一部分中涉及到了HTTPS方面的知识。以前曾经在Web安全实践这门课上了解过这方面的知识,如今需要再详细的梳理一下HTTPS的认证过程。 HTTP VS HTTPS 因特网早期的很多东西在设计方面都没有考虑安全方面的因素,HTTP协议就是一个鲜明的例子。HTTP采用的明文传输的,如果我们使用wireshark抓包工具,可以很轻易的嗅探一些信息。 HTTPS在HTTP的基础上增加了安全方面的考虑,主要分为2个过程。 使用RSA加密算法来进行身份认证以及协商加密算法和秘钥 使用协商后的加密算法进行数据传输 HTTPS的身份认证 这里的身份认证分为2类,大多数情况下都是客户端需要验证服务端的身份,在政府以及银行一些领域,服务端也需要验证客户端的身份,这身份认证过程中使用的是RSA加密算法。 RSA加密算法 RSA加密算法是一种非对称加密算法,加密和解密的钥匙是不同的,所以被称为非对称加密算法。它有2种秘钥,分为公钥和私钥,公钥任何人都可以查到的,而私钥属于私人保管。这种加密体系下,私钥加密的的密文只有公钥可以解开,所以私钥可以用来签名;而公钥加密的密文只有私钥可以解开,它可以用来加密传输。 在密码学中,很多加密算法都来源于一个数学难题,没错RSA算法的原理也来自于数论领域中的大数难于被质因分解的问题。它的秘钥生成过程大致如下: 选取2个非常大的质数 p 和 q ,而 n = p * q 随机选取一个数 e1 ,但要求
Read More