第六章 数字签名
一、背景
商业活动和文件逐步成为电子版本,需要验证,而手写签名在电子版本中不适用。
二、作用
数字签名可以提供作者、日期、时间的因素;可以验证内容,接收方可以确认这份文件的来源;主要是验证文件来源,对比文件本身不是加密的,需要通过对比解密的数字签名对比验证(自证身份)。
三、流程
与第五章非对称加密中的RSA大致相同,不过明文也一起发送,并且多出了接收端验证(RSA中的解密)后对比的过程。
四、特点
- 身份验证,确认来源。
- 身份绑定,不好赖账。
五、要求
- 加密后的数字签名必须取决于文件的本身。
- 但与源文件在形式内容上均不相同。
- 易于生成、验证、存储。
- 不易于破解。
六、长文件签名
首先使用Secure Hash Algrithm(SHA)进行哈希映射,将源文件映射为固定长度的哈希值,并对哈希值进行数字签名,接收方仅需要s对hash值进行验证即可(验证方也要先生成hash值)。
七、常见的数字签名方法
- 基于RSA的数字签名
- Schnorr Signature
- Threshold Signature
- Aggregate Signature
- Multi-signature
- Anonymous Signature(Group, Ring)
- Linkable Ring Signature,在区块链中使用
八、安全分析(攻击)
攻击方式:
- key-only attack
- known message attack
- generic chosen message attack
- directed chosen message attack
- adaptive chosen message attack
伪造方式:
- total break
- universal forgery
- selective forgery
- existential forgery