对于摘要、签名、数字证书的理解

2019-04-25  本文已影响0人  风吹过山

基本的加密技术:分两种

1.可逆算法 有:对称和非对称

2.不可逆算法 有:哈希加密算法(摘要)

对称和非对称是对原文和密文相互转换的算法

在应用中,签名与验证签名的过程

1.一般通过哈希加密算法得到一个摘要。(验证了完整性)

2.再使用非对称加密算法用私钥对摘要进行加密得到一个签名(验证了来源)

要验证以上两部的话,

需要用公钥对签名进行解密,再用原文计算出摘要,与解密出来的摘要对比。相同则表示原文是完整的,且是验证签名用到的公钥对应的私钥持有者发的。

那么在应用中是怎么使用的呢?

发送方: 将原文使用自己的私钥签名,再将原文和签名一起用对称密钥加密(签名和原文),其中对称密钥要用接收方的公钥加密。

接收方: 1.用私钥去解密对称密钥 2.再用对称密钥解密出原文和签名 3.用发送方的公钥对原文进行签名验证 (验证通过则说明原文是完整的且是来自发送方的)

致此,信息的机密.完整性.来源都靠谱了,那么就Ok了吗? 想想这个过程中如果有个人拿着A的公钥,说我就是A,如果A的这个身份万一是假冒的呢? 这就涉及到数字证书的问题了。

上面说了,使用公私钥解决通信过程中,信息是否来自对方的,但是不能解决对方是谁的问题。

数字证书是一个公认的机构颁发的证书,公认的机构,将信任传递,你机构认证过得,我也是机构认证过得,他也是机构认证过得,那么都拿着这个证书的人,都能相互信任,就是身份证的一种概念。

信任证书:      .cer或.der

私钥:    .pem或.pvk

包含私钥的证书:  .pfx或.p12

撤销列表:  .crl (表示被CA机构签发的,包含所有在有效期内被撤销的证书序列号。)

以下补充以下一些术语:

消息认证码 密码学上的一种数据校验和,通过使用对称密码来验证数据是否发生意外或有意的修改,简称为MAC

分组密码 对称算法的一种,将明文分成等长的组,并用相同的算法对每组进行加密。

流密码  对称算法得一种,用算法和密钥一起产生一个随机码流,将其与数据流XOR产生加密后的数据流。

工作模式 指使用分组密码算法对数据进行加密转换的算法,常用的有:ECB.CBC.CFB.OFB.CTR五种加密模式,还有CMAC.GMAC两种认证模式,及CCM.GCM两种认证加密模式。

初始向量IV  是许多工作模式中用于随机化加密的一块数据,因此可以由相同的明文和相同的密钥产生不同的密文。

填充  前面说到的分组密码算法中,对数据长度分组,填充就是保证数据长度符合分组长度整数倍的一种方式。

安全强度: 用来衡量密码算法或密码系统的安全性,对破解密码算法或系统所需要工作量的一个数值度量。

口令  用于身份认证.鉴权.或者导出加密密钥的字符串,可以由数字 字母 符号组成。

盐值: 如:加密函数乘以某个数字,这个数字就是盐值,这就是加盐的一个过程,当然这个值也可以是一个字符串或者其他固定的东西。因为是固定得,很容易被推导出,所以一般会多次加盐,并反复变换盐值,这样推导者就不知道各盐值和迭代次数。

密钥  结合密码算法一起使用的参数,拥有它的实体可以加密或恢复数据。没有就不行。

上一篇 下一篇

猜你喜欢

热点阅读