什么是数字信封、数字签名、数字证书?

一、基本概念
1.完整性
首先我们要知道信息在互联网传输过程中除了保密性外,还要确保信息的完整性,所谓信息的完整性一方面是指信息在利用、传输、存储等过程中不被删除、修改、伪造、乱序、重放和插入等,另一方面是指信息处理方法的正确性。不适当的操作(例如,误删除文件等)有可能造成重要文件的丢失。
所以完整性和保密性不同,保密性要求信息不被泄露给未授权的人,而完整性则要求信息不受到各种原因的破坏。完整性主要通过杂凑算法实现如MD5、SM3、SHA等。
2.认证
认证(authentication)又称为鉴别或确认,是证实某事物是否名副其实或是否有效的过程。认证和加密的区别在于,加密用于确保数据的保密性,阻止非法者的被动攻击,例如,截取和窃听等;而认证用于确保数据发送者和接收者的真实性和消息的完整性,阻止非法者的主动攻击,例如,冒充、篡改和重放等。认证往往是许多应用系统中安全保护的第一道防线,因而极为重要。
3.公钥和私钥
公钥和私钥是非对称加密的两张钥匙,公钥和私钥通过复杂的数学算法(如RSA、ECC)生成,彼此唯一对应,但无法通过公钥推导出私钥。
公钥(Public Key):公开的密钥,可自由分发给任何人。用于加密数据或验证签名。
私钥(Private Key):保密的密钥,仅由所有者持有。用于解密数据或生成签名。
加密与解密:用公钥加密的数据,只能用对应的私钥解密;反之亦然(部分算法支持双向,但实际中通常单向使用)。
签名与验证:用私钥生成数字签名,公钥用于验证签名真实性。
4.CA机构
CA机构(证书授权机构)是负责发放和管理数字证书的权威可信的第三方机构,在非对称加密体系中承担公钥合法性验证与身份认证的核心职责。其核心任务是:
- 验证用户身份:通过严格审核申请者信息(如企业营业执照、个人身份证明等),确认其合法性。
- 签发数字证书:为通过审核的用户颁发包含公钥、身份信息及CA签名的数字证书,证明用户合法拥有其公钥。
- 管理证书生命周期:包括证书的签发、更新、撤销和查询等全流程服务。
二、加密与认证结合的应用
1.数字信封
数字信封通过“对称密钥加密数据+非对称密钥加密对称密钥”的方式,既保障了加密效率,又解决了密钥分发难题。主要应用于电子邮件、文件传输等场景,以保护数据的机密性和完整性,
发送方操作流程:
- 发送方生成一个随机的对称密钥。
- 接发送方运用这个对称密钥,对要传输的数据进行加密。
- 发送方使用接收方的公钥,对这个对称密钥进行加密,这个加密后的对称密钥就如同一个密封的信封,我们称之为“数字信封”。
- 发送方将加密后的数据和数字信封一起打包,发送给接收方。
接收方操作流程:
- 接收方首先使用自己的私钥打开数字信封,获取其中的对称密钥。
- 使用对称密钥解密数据,得到原文信息。
2.数字签名
数字签名如同个人专属签名,发送方采用非对称加密的方式,使用私钥对原始数据进行加密生成数字签名,然后将数字签名和原始数据一起传输给接收方,接收方再使用公钥对数字签名进行解密验证,以证明数据的真实性和完整性。
基于数字签名还衍生出了数字签章,都是通过私钥留痕,实现不可抵赖,主要应用于电子商务、金融交易等场景,以保证数据的真实性和完整性。
数字签名的主要功能是保证信息传输的完整性、发送者的身份认证、防止交易中的抵赖发生。因此,不管使用哪种算法,数字签名必须保证以下三点:
- 接收者能够核实发送者对数据的签名,这个过程称为鉴别。
- 发送者事后不能抵赖对数据的签名,这称为不可否认。
- 接收者不能伪造对数据的签名,这称为数据的完整性。
三、数字证书
上面讲的数字信封发送方使用接收方公钥加密的过程中,如果公钥被换了那么接收方无法正确解密拿到密钥,而且原数据有暴露的风险。
如何保障使用的公钥一定是接收方的呢?
这就涉及到了三方可信平台发布的数字证书。
数字证书又称为数字标识,是由认证中心(CertifcateAuthority,CA)签发的对用户的公钥的认证。数字证书的内容应包括 CA的信息、用户信息、用户公钥、CA 签发时间和有效期等。
目前,国际上对证书的格式和认证方法遵从X.509体系标准。在X.509格式中,数字证书通常包括版本号、序列号(CA下发的每个证书的序列号都是唯一的)、签名算法标识符、发行者名称、有效期、主体名称、主体的公钥信息、发行者唯一识别符、主体唯一识别符、扩充域、发行者签名(就是CA用自己的私钥对上述数据进行数字签名
数字证书主要应用于网络安全、电子政务等场景,以保证数据的安全性和可信度。

当数字证书过了有效期、用户私钥已泄露、用户放弃使用原CA的服务、CA私钥泄露等,都需要吊销证书,这时,CA会维护一个证书撤销列表,供用户查询。
三、总结
数字信封:结合对称加密和非对称加密技术,成功解决了对称密钥的传输问题,为数据的机密性提供了有力保障。
数字签名:使用发送方的私钥对数据进行加密,唯一标识发送方,确保数据的来源可靠和完整性。
数字证书:由认证中心(CertifcateAuthority,CA)签发的对用户的公钥的认证,保证公钥的可信度。
本文内容仅供参考,不构成任何专业建议。使用本文提供的信息时,请自行判断并承担相应风险。



