数字签名

17 Mar 2025 | 4 分钟阅读

数字签名是一种数学技术,用于验证消息、软件或数字文档的真实性和完整性。它允许我们验证作者姓名、签名日期和时间,以及验证消息内容。 数字签名提供了更内在的安全性,旨在解决数字通信中的篡改和冒充(故意复制另一个人的特征)问题。

基于计算机的商业信息认证涉及技术和法律。 它还需要不同专业背景和专业领域的人们之间的合作。 数字签名与其他电子签名不同,不仅在过程和结果方面不同,而且使数字签名更适合法律用途。 一些在法律上可识别为签名的电子签名可能不如数字签名安全,并可能导致不确定性和争议。

数字签名的应用

在通信中实施数字签名的重要原因是

  • 认证
  • 不可否认性
  • 诚信

认证

身份验证是一个验证想要访问系统的用户身份的过程。 在数字签名中,身份验证有助于验证消息的来源。

不可否认性

不可否认性是指对某事物的保证,即不能被否认。 它确保合同或通信中的某人以后不能否认他们在文档或文件上的签名或发送他们发起的邮件的真实性。

诚信

完整性确保消息是真实的、准确的,并在传输过程中防止未经授权的用户修改。

数字签名中的算法

数字签名由三个算法组成

1. 密钥生成算法

密钥生成算法从一组可能的私钥中随机选择私钥。 该算法提供私钥及其相应的公钥。

2. 签名算法

签名算法为文档生成签名。

3. 签名验证算法

签名验证算法接受或拒绝文档的真实性。

数字签名如何工作

数字签名是使用公钥加密(也称为非对称加密)创建和验证的。 通过使用公钥算法(例如RSA),可以生成两个在数学上链接的密钥——一个是私钥,另一个是公钥。

创建数字签名的用户使用自己的私钥来加密与签名相关的文档。 解密该文档的唯一方法是使用签名者的公钥。

这项技术要求所有各方都相信创建签名的人已经能够保守自己的私钥。 如果有人可以访问签名者的私钥,则他们可能会以私钥持有人的名义创建欺诈性签名。

创建数字签名时遵循的步骤是

  1. 选择要进行数字签名的文件。
  2. 计算消息或文件内容的哈希值。 使用发送者的私钥加密此消息或文件内容以形成数字签名。
  3. 现在,原始消息或文件内容连同数字签名一起传输。
  4. 接收者使用发送者的公钥解密数字签名。
  5. 接收者现在有消息或文件内容,可以计算它。
  6. 将这些计算出的消息或文件内容与原始计算出的消息进行比较。 需要确保比较结果相同,以确保完整性。

数字签名的类型

不同的文档处理平台支持不同类型的数字签名。 它们描述如下

Digital Signature

认证签名

认证的数字签名文档在文档顶部显示一个独特的蓝色缎带。 认证的签名包含文档签名者的姓名和证书颁发者,这表明了文档的作者身份和真实性。

批准签名

文档上的批准数字签名可用于组织的业务流程中。 它们有助于优化组织的审批程序。 该程序涉及捕获我们和其他个人进行的审批,并将它们嵌入到PDF文档中。 批准签名包括详细信息,例如我们的物理签名的图像、位置、日期和官方印章。

可见数字签名

可见数字签名允许用户以数字方式签署单个文档。 此签名在文档上的显示方式与在物理文档上签名的方式相同。

不可见数字签名

不可见数字签名在任务栏中的文档中带有蓝色缎带的可视指示。 当我们没有或不想显示我们的签名但需要提供文档的真实性、完整性和来源时,可以使用不可见数字签名。


下一个主题网络安全工具