Loading... # 数字签名 ## 概述 一个把数字形式的信息和某个源发实体相联系的数据串,把它附加在一个消息或完全加密的消息上,以便于消息的接收方能够鉴别消息的内容,并证明消息只能源发于所声称的发送方 在信息安全,包括鉴别、数据完整性、抗抵赖性,大型网络安全通信中的密钥分配、鉴别及电子商务系统中,具有重要作用;主要作用:将消息和拥有消息的实体可信地联系起来 **需满足** * 签名不可伪造:除合法签名者外,任何其他人伪造签名困难 * 签名不可抵赖:签名者事后不能否认自己的签名 * 签名可信:任何人都可以验证签名的有效性 * 签名不可复制 * 签名不可篡改:签名的消息被篡改,任何人都可以发现消息与签名的不一致 | 手写签名 | 数字签名 | | ------------------------------------ | -------------------------------------------- | | 签名被认为是被签名消息的一部分 | 签名与消息是分开的,需要绑定在一起 | | 验证通过同以前的签名相比较进行的 | 使用公开的方法对签名进行验证 | | 签名的物理复制是无效的或容易识别的 | 签名代码物理上可被复制,故需要组织重复使用 | **数字签名方案** 由带有陷门的数字签名算法和验证算法构成 ### 数字签名的执行方式 #### 直接数字签名方式 数字签名的执行过程只有通信双方参与,并假定双方有共享的秘密密钥,或者接受一方知道发送方的公钥 缺点:方案的有效性依赖于发送方秘密密钥的安全性 #### 具有仲裁的数字签名方式 在通信双方的基础上引入了第三方仲裁者参与,S表示发送方,R表示接收方,A是仲裁者,M是传送的消息 1. **应用对称加密,仲裁者能看到消息内容**:每个用户都有与仲裁者共享的秘密密钥 2. **应用对称加密,仲裁者不能看到消息内容**:每个用户都有与仲裁者共享的秘密密钥,两两用户间也有共享密钥 3. **应用公钥加密,仲裁者不能看到消息内容**:每个用户都能安全获取仲裁者和其他用户的公钥 ## 基于公钥密码体制的典型数字签名方案 ### RSA数字签名方案 RSA数字签名体制的安全性决定于RSA公开密钥密码算法的安全性 ### ElGamal数字签名方案 安全性基于求解离散对数问题的困难性,不费时间打过程了,直接贴图(¬‿¬) ![image-20220606212822951.png](http://xherlock.top/usr/uploads/2022/06/1185837138.png) ![image-20220606212935170.png](http://xherlock.top/usr/uploads/2022/06/852833751.png) ### 数字签名标准DSS 其中的算法称为DSA,可看作ElGamal的变体,也是基于离散对数问题 ### 基于椭圆曲线密码的数字签名算法ECDSA ![image-20220606213838547.png](http://xherlock.top/usr/uploads/2022/06/3054435718.png) **签名过程** ![image-20220606213854058.png](http://xherlock.top/usr/uploads/2022/06/2837328266.png) ![image-20220606213915373.png](http://xherlock.top/usr/uploads/2022/06/2626903849.png) ![image-20220606213923923.png](http://xherlock.top/usr/uploads/2022/06/3609391809.png) ## 特殊数字签名方案 ### 不可否认签名 在现实生活中,有时需要在签名者参加的情况下才能进行签名的验证,而签名者又不能否认签名。满足这个要求的数字签名称为不可否认签名方案(Undeniable signature scheme)这一方案的主要目的是阻止签名文件的随便复制和任意散布。 包含三部分 * 签名算法 * 验证算法 * 否认协议 ### 盲数字签名 在常规的数字签名方案中,签名者总是先知道数据的内容后才实施签名,这是通常的办公事务所需要的。但有时却需要某个人对某数据签名,而又不能让他知道数据的内容,这种签名方式称为盲数字签名(Blind Signature),简称盲签名。 显著特点: * 消息内容对签名者不可见 * 在签名被接收者公开后,签名者不能追踪签名 ### 群签名 …… 最后修改:2022 年 07 月 29 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 0 如果觉得我的文章对你有用,请随意赞赏