您的位置  > 互联网

非对称、信息摘要、数字证书、公钥体系的基本原理

1、对称加密技术

对称和不对称是指加密和解密所使用的密钥是否相同。 如果加密和解密所使用的密钥相同,我们称之为对称密钥。

如图所示,对称加密过程使用相同的密钥进行加密和解密。 这导致了一个巨大的缺陷。 密钥在传输过程中很容易被获取,从而失去安全性。

特点: 1、加密强度不高但效率高; 2.密钥分配困难。

常见的对称加密算法:

DES算法:密钥长度为64位,实际密钥只有56位。 每个块的长度是8个字节。 密钥长度太短,现在被认为是不安全的。 一般不推荐使用DES算法。 如果一定要使用,建议使用3DES,即执行3次DES算法,每次使用不同的密钥。 此类密钥的长度变为先前 DES 密钥长度的三倍。

AES算法:密钥长度可以是128位、192位和256位。 每个块的长度固定为128位。 AES 支持多种分组模式,也称为块操作模式。

IDEA算法:常用的电子邮件加密算法,工作模式只有ECB,密钥长度为128位。

2.非对称加密算法

非对称加密(公钥加密)是指在加密和解密两个过程中使用不同的密钥。 在这种加密技术中,每个用户都有一对密钥:公钥和私钥。 加密时使用公钥,解密时使用私钥。 公钥可以向整个网络公开,而私钥需要由用户保管。 这就解决了对称加密中需要共享密钥带来的安全风险。

公钥和私钥可以互相加密和解密。

特点:加密速度慢。

如果黑客在加密时替换了原来的公钥,而用户不知情,则数据将无法解密。

常见的非对称加密算法:

RSA算法:2048位或1024位密钥,需要大量计算,很难破解。

三、信息汇总

数据摘要算法从所有数据中提取指纹信息(摘要信息),实现数据签名、数据完整性验证等功能。 由于其不可逆性,有时用于加密敏感信息。

信息摘要算法常用于保证信息的完整性,防止信息在传输过程中被篡改(无法确定信息是否被截获),这就是常说的签名验证。

数据摘要算法也称为哈希算法、散列算法;

特征:

1、无论输入的消息有多长,计算出的消息摘要的长度始终是固定的;

2、摘要只能生成,无法恢复;

3.如果原文发生变化,摘要也会发生变化;

4、只要输入的消息不同,汇总后生成的摘要消息也会不同(底层含义可以相同); 但相同的输入会产生相同的输出;

常用的总结算法:

MD算法:目前主流的是MD5算法,是该算法的第五版本。 之前有MD2、MD3、MD4算法。

SHA算法:安全哈希算法(Hash)主要适用于数字签名标准(DSS)中定义的数字签名算法(DSA);

MAC算法:带有密码信息的信息摘要算法,是MD和SHA算法的演变和改进,包括,,,-256等。

4. 数字签名

所谓“数字签名”,就是利用某种密码运算,生成一系列符号和代码,形成电子密码进行签名,而不是书写签名或盖章。

以上是一个比较混乱的理解。 对于非对称加密算法,用户无法识别发送者。 这时就可以使用数字签名来解决这个问题,而用户的私钥就是识别用户身份的关键。

看下面的例子:

如图所示,通过比较A和B的信息摘要是否相同,可以判断内容是否完整,用A的公钥解密可以判断是否是A发送的文本内容(私钥)密钥加密)。

数字签名技术是将消息摘要功能与公钥加密算法相结合的一种具体的加密应用技术。

特征:

1)信息传输的保密性

2)交易者身份可被识别

3)数据交换的完整性

4) 发送信息的不可否认性

5)信息传输的不可重播性

在数字签名中,如果使用在签名消息中添加序列号和时间戳等技术,可以防止重放攻击。

5. 数字证书和公钥系统

对于非对称加密,公钥是公开的。 如果用户A使用用户B的公钥进行加密,但用户A无法辨别该公钥是B的公钥,那么就引入了数字证书。

数字证书包含:

1、证书的版本信息;
2、证书的序列号,每个证书都有一个唯一的证书序列号;
3、证书所使用的签名算法;
4、证书的发行机构名称,命名规则一般采用X.500格式;
5、证书的有效期,通用的证书一般采用UTC时间格式;
6、证书所有人的名称,命名规则一般采用X.500格式;
7、证书所有人的公开密钥;
8、证书发行者对证书的签名。

此时,数字证书的内容不具有权威性,个人数字证书极有可能被伪造。

为了解决这个问题,需要有权威的第三方机构对数据证书的内容进行认证。 这就好比在证明文件上加盖权威印章,防止仿冒。 这个权威机构叫做CA()数字证书认证中心。 CA 如何对数据进行标记? 就是我们之前提到的数字签名技术。

查看数字证书内容的第8点,证书颁发者对证书进行签名。 此时,使用CA自己的私钥对数字证书进行签名,然后用户使用CA的公钥进行解密。

如图所示,CA中心提供数字证书。 用户B提取A的公钥,使用A的公钥加密自己(B)的密钥并将其传输给A。然后A和B使用传输的密钥进行加密。 其他保证信息传输安全的内容。