密码学初级教程(五)数字签名 Digital Signature

密码学家工具箱中的6个重要的工具:

  • 对称密码
  • 公钥密码
  • 单向散列函数
  • 消息认证码
  • 数字签名
  • 伪随机数生成器

提问:

有了消息认证码为什么还要有数字签名?

因为消息认证码无法防止否认。消息认证码可以识别消息是否被篡改或者发送者身份是否被伪装。(消息认证码保证完整性、可以进行认证)

为什么消息认证码无法防止否认,数字签名就能够否认呢?

消息认证码中,能够计算出MAC值的密钥(共享密钥)是由发送者和接受者双方共同持有的,因此发送者和接受者中的任何一方都能够计算MAC值,发送者也就可以声称“这个MAC值不是我计算的,而是接收者计算的”。

相反的,在数字签名中,能够生成签名的密钥(私钥)是只有发送者才持有的,只有发送者才能够生成签名,因此发送者也就没办法说“这个签名不是我生成的”了。

数字签名的方法

  • 直接对消息进行签名

发送者用私钥对消息进行签名并把签名和消息发送给接收者,接收者用公钥解密得到消息原文并和收到的消息进行匹配。

  • 对消息的散列值进行签名

对散列值签名就是多了一步,先计算消息的散列值,再计算签名。

数字签名的应用实例

  • 安全信息公告
  • 软件下载

    (1)验证软件是否有被修改。

(2)一种名为带签名的Applet的软件就是一个具体的例子。这种软件就是用Java编写的(一种浏览器进行下载并执行的软件),并加上了作者的签名,而浏览器会在下载之后对签名进行验证。

  • 公钥证书
  • SSL/TLS

实现数字签名的方法

  • RSA

    •   
  • EIGamal
    •   由Taher EIGammal设计的公钥算法,利用了在mod N中求离散对数的困难度。可被用于公钥密码和数字签名。
  • DSA
    •   NIST于1991年制定的数字签名规范,DSA是Schnorr算法与EIGammal方式的变体,只能用于数字签名。
  • Rabin
    •   由M.O.Rabin设计的公钥算法,利用了在mod N中求平方根的困难度。Rabin可以被用于公钥密码和数字签名。
时间: 2024-08-06 12:07:45

密码学初级教程(五)数字签名 Digital Signature的相关文章

密码学初级教程(五)消息认证码MAC-Message Authentication Code

密码学家工具箱中的6个重要的工具: 对称密码 公钥密码 单向散列函数 消息认证码 数字签名 伪随机数生成器 MAC能识别出篡改和伪装,也就是既可以确认消息的完整性,也可以进行认证. 消息认证码的输入包括任意长度的消息和一个发送者与接受者之间共享的密钥,它可以输出固定长度的数据,这个数据就是MAC. 消息认证码是一种与密钥相关联的单向散列函数. 消息认证码的应用实例 SWIFT(Society for Wordwide Interbank Financial Telecommunication,环

密码学初级教程(三)证书-为公钥加上数字签名

名词解释: 证书(公钥证书,PKC,Public-KeyCertificate):类比驾照,里面记有姓名.组织.邮箱地址.公钥(用于加密的公钥)等个人信息. 举个实际证书的例子:天猫的证书 证书标准规范X.509:证书的标准规范,大体包含三部分: 签名前的证书-签名对象的信息 数字签名算法-对证书签名时所使用的算法 数字签名-对证书施加的签名 PKI(公钥基础设施,Public-Key Infrastructure) 用户-使用PKI的人 认证机构-颁发证书的人 仓库-保存证书的数据库 认证机构

密码学初级教程(二)对称密码

密码学家工具箱中的6个重要的工具: 对称密码 公钥密码 单向散列函数 消息认证码 数字签名 伪随机数生成器 编码:将现实世界中的东西映射为比特序列的操作成为编码. XOR:异或运算,同零异一,0XOR0=0,0XOR1=1,1XOR0=1,1XOR1=0 异或的性质:A异或B异或B为A. 一次性密码本-绝对不会被破译的密码 定义:将明文与一串与明文等长的比特序列进行异或运算. 不具有实用性. DES(Data Encryption Standard) 现在DES已经能够破解,强度大不如前了. 具

密码学初级教程(二)公钥密码RSA与单向散列函数与消息认证码

求离散对数非常困难 RSA是Ron Rivest/Adi Shamir/Leonard Adleman的姓氏首字母组成. RSA可以被用于公钥密码和数字签名. RSA加密:密文=明文EmodN(E和N为公钥) RSA解密:明文=密文DmodN(D和N为私钥) 对RSA的破解: 暴力破解:暴力破解的难度会随着D的长度增加而变大,当D足够长时,就不可能在现实的时间内通过暴力破解找出D. 混合密码系统:用对称密码提高速度,用公钥密码保护会话密钥 混合密码系统的组成机制: 用对称密码加密消息 通过伪随机

密码学初级教程(一)基本概念及DES加密算法

第1章 加密-解密 破译 明文-密文 密钥 密码算法 对称密码-公钥密码(非对称密码) 单向散列函数-散列值 消息认证码 数字签名 伪随机数生成器 信息安全中所面临的威胁与密码技术的对应关系图 --- 隐写术 数字水印 不要使用保密的密码算法 密码算法的密码早晚会公诸于世 开发高强度的密码算法是非常困难的 使用低强度的密码比不进行任务加密更危险 任何密码总有一天都会被破解 第2章 凯撒密码:将字母表按照一定的行数“平移”进行加密.利用暴力破解很容易解密. 简单替换密码:利用字母替换表进行加密.利

密码学初级教程(四)SSL/TLS-为了更安全的通信

SSL/TLS是世界上应用最广泛的密码通信方法.用到对称密码.消息认证码.公钥密码.数字签名.伪随机数生成器等密码技术. 密码套件 SSL/TLS提供了一种密码通信的框架,SSL/TLS中使用的对称密码.公钥密码.数字签名.单向散列函数等技术,如果发现所用的密码技术有弱点,可以将这一部分进行替换就行了. SSL(Secure Socket Layer,安全套接层) SSL是网景(Netscape)公司设计的一种协议.SSL3.0 TLS(Transport Layer Security,传输层安

VFP+6.0中文版教程--初级教程

下载地址:网盘下载 Microsoft Visual FoxPro 6.0中文版教程 初级教程目录 第一课 开场白第二课 见识一下面向对象的编程第三课 简要介绍对象.属性.事件.方法第四课 常用的对象.属性.事件.方法第五课 常用编程命令及常用函数第六课 编一个完整的软件第七课 编程中的一些技巧第八课 程序的调试第九课 软件的编译及生成安装盘 下载地址:网盘下载

《英语语法新思维初级教程》学习笔记(一)名词短语

参考资料: 1. <英语语法新思维初级教程> ? 知识点 ▼ 英语是“固定词序语言(a fixed-word-order language)”. ▼ 语言的构造级别分五个层次:1. 词(word):2. 短语(phase):3. 句子(sentence):4. 段落(paragraph):5. 篇章(discourse) a red rectangle emblazoned with five starts. ▼ 名词短语是由名词和它的修饰语一起构成的.名词的修饰语与名词的关系分两种:1. 放

平面设计 计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut