公钥私钥傻傻分不清楚之非对称加解密相关问题

       所谓非对称加密,就是公钥加密的信息,只有私钥才能解开;私钥加密的信息,只有公钥才能解开。既然有非对称加密,也有对称加密,加密和解密用的是同一个**。

       公钥和私钥归根结底就是通过一种算法(RSA、DAS、ECC等算法)获得的一对**,顾名思义公钥就是公开的钥匙,私钥就是私人的不公开的钥匙。于我个人的理解来说,公私钥本质上是一样的东西,只是因为人们把其中一个**公开了,所以才有了公私钥匙之分。

因为算法的原因,导致私钥只能由公钥解密,公钥只能由私钥解密,具体的算法可以查看这位大佬的博客,

阮一峰RSA算法原理(一)阮一峰RSA算法原理(二)

一般来说,公私钥使用场景有以下两种:

1、加解密

如果要进行传输的报文加密,就用公钥加密,私钥解密;

2、签名

如果要用于签名,通俗理解就是自己证明自己,那就用私钥签名(即加密),公钥验签(解密)。

       上面这两种用法也很好理解,公钥是所有人都阔以拿到的一把钥匙,那么如果要进行报文加密,那就不能让公钥去进行解密,只能要私钥解密,由于非对称加解密的特性,所以就要用公钥加密,让私钥来进行解密。

       那么到了第二个场景,既然是要自己证明自己,也就是让外面的人知道这是我发出来的东西,我就是我,目的就是让大家知道这个报文的内容,而且还不想被人篡改这个证明信息,那就用自己的私钥进行签名(即加密),然后发布出去,让公钥持有者进行验签(即解密),如此一来,就证明了自己是自己。

公钥私钥傻傻分不清楚之非对称加解密相关问题