前两天

  一张图突降热搜

  刷爆了本人首页

  网友纷纷表示

  这波操作可谓是

  妙得很啊!

  打眼一瞧

  我便知道朋友们的热情是从何而来

  作为守护“网络安全”的一员

  “私钥”这个小东西

  我熟


  【图源自微博截图】


  那么重点来了

  图中所言“私钥”究竟是个什么东东?

  别着急

  您请往下看

  所谓“私钥”,即与公钥算法一起使用的密钥对得秘密一半。

  1、公钥和私钥成对出现;

  2、公开的密钥叫公钥,只有自己知道的叫私钥;

  3、用公钥加密的数据只有对应的私钥可以解密;

  4、用私钥加密的数据只有对应的公钥可以解密;

  5、如果可以用公钥解密,则必然是对应的私钥加的密;

  6、如果可以用私钥解密,则必然是对应的公钥加的密。


  密钥分类


  密钥分为两种:对称密钥与非对称密钥

  对称密钥加密,又称私钥加密或会话密钥加密算法,即信息的发送方和接收方使用同一个密钥去加密和解密数据。它的最大优势是加/解密速度快,适合于对大数据量进行加密,但密钥管理困难。

  非对称密钥加密系统,又称公钥密钥加密。它需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。信息发送者用公开密钥去加密,而信息接收者则用私用密钥去解密。公钥机制灵活,但加密和解密速度却比对称密钥加密慢得多。

  所以在实际的应用中,人们通常将两者结合在一起使用,例如,对称密钥加密系统用于存储大量数据信息,而公开密钥加密系统则用于加密密钥。

  既然是加密,肯定是不希望别人知道我的消息,所以只要我才能解密,

  所以得出,公钥负责加密,私钥负责解密。

  同理,既然是签名,那肯定是不希望有人冒充我发消息,只有我才能发布这个签名,

  所以得出,私钥负责签名,公钥负责验证。

  具体说来,密钥有公钥和私钥之分。

  假设这里一共有两组四个密钥:A的公钥(PUB_A),A的私钥(PRI_A);B的公钥(PUB_B),B的私钥(PRI_B)。

  公钥一般用来加密,私钥用来签名。

  通常公钥是公开出去的,但是私钥只能自己私密持有。

  公钥和私钥唯一对应,用某个公钥签名过的内容只能用对应的私钥才能解签验证;同样用某个私钥加密的内容只能用对应的公钥才能解密。

  这时A向B发送信息的整个签名和加密的过程如下:

  1、A先用自己的私钥(PRI_A)对信息(一般是信息的摘要)进行签名。

  2、A接着使用B的公钥(PUB_B)对信息内容和签名信息进行加密。

  这样当B接收到A的信息后,获取信息内容的步骤如下:

  1、用自己的私钥(PRI_B)解密A用B的公钥(PUB_B)加密的内容;

  2、得到解密后的明文后用A的公钥(PUB_A)解签A用A自己的私钥(PRI_A)的签名。

  整个过程就保证了开始说的端到端的唯一确认。A的签名只有A的公钥才能解签,这样B就能确认这个信息是A发来的;A的加密只有B的私钥才能解密,这样A就能确认这份信息只能被B读取。

  总而言之,公钥和私钥是成对的,它们互相解密(密钥指公钥或私钥,密钥对指公钥加私钥);公钥和私钥都可以加密和解密;私钥数字签名,公钥验证。