公钥和私钥的那些事
今天看了好久的HTTPS,感觉主要是公钥和私钥比较不好理解,所以记一下对公钥和私钥的理解。
个人认为不能将其理解成和现实中锁和钥匙的关系,应该理解成一个函数会更加直接。
我们来看一个例子:
假设我现在有一对公钥和私钥,公钥叫A,私钥叫B,有一个加密算法叫Fn,它接受两个参数,一个是秘钥,一个是信息。我将公钥A公开到网上,每个人都可以使用这个公钥A和算法Fn对信息进行加密,于是我的朋友X使用Fn函数,传入参数为公钥A和需要加密的信息Xmessage,输出加密后的信息Xprivate,现在友人X将Xprivate传给我。我使用算法Fn,传入私钥B和被加密了的信息Xprivate,输出的就是Xmessage了。画个图就是下面这样: