加密和认证
首先咱们须要区分加密和认证这两个基本概念。
加密是将数据资料加密,使得非法用户即便取得加密过的资料,也没法获取正确的资料内容,因此数据加密能够保护数据,防止监听攻击。其重点在于数据的安全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才能够依不一样的身份给予不一样的权限。其重点在于用户的真实性。二者的侧重点是不一样的。 安全
公钥和私钥
公钥和私钥就是俗称的不对称加密方式,是从之前的对称加密(使用用户名与密码)方式的提升。 服务器
在现代密码体制中加密和解密是采用不一样的密钥(公开密钥),也就是非对称密钥密码系统,每一个通讯方均须要两个密钥,即公钥和私钥,这两把密钥能够互为加解密。公钥是公开的,不须要保密,而私钥是由我的本身持有,而且必须妥善保管和注意保密。 网站
公钥私钥的原则: 加密
用电子邮件的方式说明一下原理。
使用公钥与私钥的目的就是实现安全的电子邮件,必须实现以下目的:
1. 我发送给你的内容必须加密,在邮件的传输过程当中不能被别人看到。
2. 必须保证是我发送的邮件,不是别人冒充个人。
要达到这样的目标必须发送邮件的两人都有公钥和私钥。
公钥,就是给你们用的,你能够经过电子邮件发布,能够经过网站让别人下载,公钥实际上是用来加密/验章用的。私钥,就是本身的,必须很是当心保存,最好加上 密码,私钥是用来解密/签章,首先就Key的全部权来讲,私钥只有我的拥有。公钥与私钥的做用是:用公钥加密的内容只能用私钥解密,用私钥加密的内容只能 用公钥解密。
好比说,我要给你发送一个加密的邮件。首先,我必须拥有你的公钥,你也必须拥有个人公钥。
首先,我用你的公钥给这个邮件加密,这样就保证这个邮件不被别人看到,并且保证这个邮件在传送过程当中没有被修改。你收到邮件后,用你的私钥就能够解密,就能看到内容。
其次我用个人私钥给这个邮件加密,发送到你手里后,你能够用个人公钥解密。由于私钥只有我手里有,这样就保证了这个邮件是我发送的。 spa
非对称密钥密码的主要应用就是公钥加密和公钥认证,而公钥加密的过程和公钥认证的过程是不同的,下面我就详细讲解一下二者的区别。 原理
基于公开密钥的加密过程 权限
好比有两个用户Alice和Bob,Alice想把一段明文经过双钥加密的技术发送给Bob,Bob有一对公钥和私钥,那么加密解密的过程以下: 下载
Alice使用Bob的公钥进行加密,Bob用本身的私钥进行解密。 加密解密
基于公开密钥的认证过程 密码
身份认证和加密就不一样了,主要用户鉴别用户的真伪。这里咱们只要可以鉴别一个用户的私钥是正确的,就能够鉴别这个用户的真伪。
仍是Alice和Bob这两个用户,Alice想让Bob知道本身是真实的Alice,而不是假冒的,所以Alice只要使用公钥密码学对文件签名发送给Bob,Bob使用Alice的公钥对文件进行解密,若是能够解密成功,则证实Alice的私钥是正确的,于是就完成了对Alice的身份鉴别。整个身份认证的过程以下:
Alice使用本身的私钥加密,Bob用Alice的公钥进行解密。
根证书
根证书是CA认证中心给本身颁发的证书,是信任链的起始点。安装根证书意味着对这个CA认证中心的信任。
总结
根据非对称密码学的原理,每一个证书持有人都有一对公钥和私钥,这两把密钥能够互为加解密。公钥是公开的,不须要保密,而私钥是由证书持人本身持有,而且必须妥善保管和注意保密。
数字证书则是由证书认证机构(CA)对证书申请者真实身份验证以后,用CA的根证书对申请人的一些基本信息以及申请人的公钥进行签名(至关于加盖发证书机构的公章)后造成的一个数字文件。CA完成签发证书后,会将证书发布在CA的证书库(目录服务器)中,任何人均可以查询和下载,所以数字证书和公钥同样是公开的。
能够这样说,数字证书就是通过CA认证过的公钥,而私钥通常状况都是由证书持有者在本身本地生成的,由证书持有者本身负责保管。具体使用时,签名操做是发送方用私钥进行签名,接受方用发送方证书来验证签名;加密操做则是用接受方的证书进行加密,接受方用本身的私钥进行解密。