首先咱们须要区分加密和认证这两个基本概念。安全
加密是将数据资料加密,使得非法用户即便取得加密过的资料,也没法获取正确的资料内容,因此数据加密能够保护数据,防止监听攻击。其重点在于数据的安全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才能够依不一样的身份给予不一样的权限。其重点在于用户的真实性。二者的侧重点是不一样的。加密
其次咱们还要了解公钥和私钥的概念和做用。权限
在现代密码体制中加密和解密是采用不一样的密钥(公开密钥),也就是非对称密钥密码系统,每一个通讯方均须要两个密钥,即公钥和私钥,这两把密钥能够互为加解密。公钥是公开的,不须要保密,而私钥是由我的本身持有,而且必须妥善保管和注意保密。加密解密
公钥私钥的原则:密码
非对称密钥密码的主要应用就是公钥加密和公钥认证,而公钥加密的过程和公钥认证的过程是不同的,下面我就详细讲解一下二者的区别。im
好比有两个用户Alice和Bob,Alice想把一段明文经过双钥加密的技术发送给Bob,Bob有一对公钥和私钥,那么加密解密的过程以下:技术
上面的过程能够用下图表示,Alice使用Bob的公钥进行加密,Bob用本身的私钥进行解密。通信
身份认证和加密就不一样了,主要用户鉴别用户的真伪。这里咱们只要可以鉴别一个用户的私钥是正确的,就能够鉴别这个用户的真伪。数据
仍是Alice和Bob这两个用户,Alice想让Bob知道本身是真实的Alice,而不是假冒的,所以Alice只要使用公钥密码学对文件签名发送给Bob,Bob使用Alice的公钥对文件进行解密,若是能够解密成功,则证实Alice的私钥是正确的,于是就完成了对Alice的身份鉴别。整个身份认证的过程以下:图表
上面的过程能够用下图表示,Alice使用本身的私钥加密,Bob用Alice的公钥进行解密。