您的位置:首页 > 其它

信息安全与密码学1-加密与认证(验证)

2015-12-10 11:56 495 查看
信息安全与密码学1-加密与认证(验证)

1、加密和认证的概念

加密

将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。

其重点在于数据的安全性。

身份认证

用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权限。

其重点在于用户的真实性。

两者的侧重点是不同的。

2、公钥和私钥的概念

在现代密码体制中,加密和解密是采用不同的密钥(公开密钥和私有秘钥),也就是非对称密钥密码系统,每个通信方均需要两个密钥,即公钥和私钥。这两把密钥可以互为加解密。公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。

一个公钥对应一个私钥。

密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥。

如果用其中一个密钥加密数据,则只有对应的那个密钥才可以解密。

如果用其中一个密钥可以进行解密数据,则该数据必然是对应的那个密钥进行的加密。

3、加密和认证的过程

非对称密钥密码的主要应用就是公钥加密和公钥认证,而公钥加密的过程和公钥认证的过程是不一样的,下面详细讲解一下两者的区别。

加密过程

例如有两个用户Alice和Bob,Alice想把一段明文通过双钥加密的技术发送给Bob,Bob有一对公钥和私钥,那么加密解密的过程如下:

1) Bob将他的公开密钥传送给Alice。

2) Alice用Bob的公开密钥加密她的消息,然后传送给Bob。

3) Bob用他的私人密钥解密Alice的消息。

过程如下图。



身份认证

身份认证和加密就不同了,主要用户鉴别用户的真伪。这里我们只要能够鉴别一个用户的私钥是正确的,就可以鉴别这个用户的真伪。

还是Alice和Bob这两个用户,Alice想让Bob知道自己是真实的Alice,而不是假冒的,因此Alice只要使用公钥密码,对文件签名,发送给Bob,Bob使用Alice的公钥对文件进行解密,如果可以解密成功,则证明Alice的私钥是正确的,因而就完成了对Alice的身份鉴别。

整个身份认证的过程如下:

Alice用她的私人密钥对文件加密,从而对文件签名。

Alice将签名的文件传送给Bob。

Bob用Alice的公钥解密文件,从而验证签名。

整个流程如下:



其实这个验证流程还是有漏洞:

后来,Bob感觉不对劲,发现自己无法确定公钥是否真的属于Alice。

比如第三个人Tom想欺骗Bob,Tom偷偷使用了Bob的电脑,用自己的公钥换走了Alice的公钥。此时,Bob实际拥有的是Tom的公钥,但是还以为这是Alice的公钥。因此,Tom就可以冒充Alice,用自己的私钥做成"数字签名",写信给Bob,让Bob用假的Alice公钥进行解密。这样Tom就成功伪装成Alice了。

如何避免这种情况呢?

有一个办法,Alice去找"证书中心"(certificate authority,简称CA),为公钥做认证。

证书中心用自己的私钥,对Alice的公钥和一些相关信息一起加密,生成"数字证书"(Digital Certificate)。

Alice拿到数字证书以后再给Bob写信,只要在签名的同时,再附上数字证书就行了。

Bob收信后,用CA的公钥解开数字证书,就可以拿到Alice真实的公钥了,然后就能证明"数字签名"是否真的是Alice签的。

这样的话,Tom就很难冒充Alice来欺骗Bob了。

著作权声明:本文由http://my.csdn.net/Nathan1987_原创,欢迎转载分享。请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: