数字签名概术

数字签名应具有的特征:

  1. 签名可信
  2. 签名不可伪造
  3. 签名不可复制
  4. 签名的消息不可更改
  5. 签名不可抵赖

数字签名分类:

  • 基于数学难题:
    离散对数问题、大整数素数因子分解、
    椭圆曲线离散对数、离散对数和素数因子分解

  • 基于数字签名是否具有恢复特性:
    不具有消息恢复特性的签名、
    具有消息恢复特性

  • 基于不同加密方法:
    对称加密算法(Hash 函数、单向函数)、
    公钥加密

  • 基于签名用户分类:
    单用户签名、
    多用户签名(多重签名:有序多重数字签名、广播多重数字签名)

  • 基于签名人对消息是否可见:
    盲签名

  • 基于签名者对消息是否可以进行追踪:
    弱盲签名方案、强盲签名方案

  • 基于签名者是否接受别人委托签名:
    普通数字签名、代理签名

  • 基于签名是否有仲裁:
    直接数字签名、仲裁数字签名

数字签名设计主要依靠方法

  1. 单向陷门函数
    陷门信息作为签名人的私钥
    基于的两条基本假设:
    私钥安全,只有其拥有者才能获得以及产生数字签名的唯一途径是使用私钥
  2. 从身份识别协议通过非交互零知识证明的机制转化而来的知识签名
  3. 利用可交换的公钥加密直接构造

基于单向函数的一次性签名-La port一次签名方案

其方案满足唯密钥攻击条件下的存在性不可伪造

基于对称加密的一次性签名-Rabin
Rabin数字签名的安全性等价于大整数分解困难性
其容易受选择消息攻击
因为其要求被签消息必须是模n的平方剩余,否则需要映射后签名

RSA数字签名及安全性分析
其安全性基于大整数因子分解的困难性
该方案可视为基于可交换的加密方案
1·单一的使用该方案签名会存在:
2·唯密钥攻击条件下的存在性伪造
3·选择消息攻击下的选择性伪造
4·已知消息攻击条件下的存在性伪造
这是来自于签名函数的同态特性,即两个签名的乘积等于另一个消息的签名

常见的处理是:在签名之前,先对消息做hash 变换

Rabin、RSA签名和EIGamal签名设计思路的差异

前两者采用类似加密体制中的解密函数进行签名,用加密函数进行验证,签名只由一项构成。

后者构造了一种“等式关系”进行签名,该关系证明了签名者对私钥的拥有,其签名拥有两部分(s:签名部分,r:承诺部分)
a:Rabin、RSA签名体制;b:EIGamal 签名体制

Schnorr签名
签名方案实现过程

该数字签名是典型的基于身份识别协议的转化形式,通过非交互零知识证明协议,证明了对签名私钥的拥有

数字签名标准-DSS
在这里插入图片描述
在这里插入图片描述

其安全性基于:一、乘法群Zp*上的离散对数问题,二、其q阶子群上的离散对数问题

已知的最好攻击是亚指数算法

EIGamal,Schnorr,DSA签名体制比较
在这里插入图片描述
在这里插入图片描述
基于身份识别协议的签名
一、Feige-Fiat-Shamir签名方案
其安全性基于模n平方根的困难性
在这里插入图片描述
Guillou-Quisquater方案
该方案基于陷门单向函数u=r^e mod n
在这里插入图片描述
正确性证明:
只需证明u=u’

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值