数字签名Digital signature
本文参考wiki条目:
http://en.wikipedia.org/wiki/Digital_signature
数字签名的目的
:
一个有效的数字签名可以用来验证一份数字信息(文件)是由特定的发送者创建的,并且在传输过程中没有被修改。
经常用于 软件分发,金融交易,电子政务,以及其他需要检测伪造及篡改信息的领域。
数字签名与电子签名:
数字签名是电子签名的一种实现方式。电子签名的含义更广泛一些。在美国以及欧盟成员国,电子签名具有法律效力。我国也出台了《中华人民共和国电子签 名法》
,因此含有数字签名的文件是具有法律效力的。
数字签名的实现方式:
数字签名基于3个算法:
-
生成密钥的算法,用于产生一对私钥和公钥。
-
签名签署算法:给定一个需要签署的信息(文件)以及私钥,生成数字签名
-
签名验证算法:给定一个信息,签名,以及公钥,判断此签名是否可信。
在 Haskell中有一个 RSA 库,其中对应的函数为:
但是在实际使用过程中,直接使用非对称加密算法,会比较慢,因此可以对文件先用 md5 或 sha-1 取得特征码,再对文件特征码做加解密验证。
对于这几个算法,有两个重要的特性:
1. 一个特定的信息用一个特定的私钥生成的签名,必须可以被对应的公钥所验证。(这个很好理解)
2. 对于不掌握特定私钥的人或组织,想要生成一个有效的数字签名是计算不可行的。(说白了,就是没有私钥想伪造个签名是没门儿的)
数字证书
数字证书是由一个权威机构发行的,包含公钥,证书持有者的名称信息,以及证书授权中心对这些信息的数字签名文件。
数字证书是由第三方颁发的,这个第三方也有自己的数字证书,称为“根证书”。
数字证书的例子:
数字签名在安全领域的应用:
对于一个具有有效数字证书的文件,一般可以信任为安全的文件。比如从网上下载一个软件,怎么才能确定它不是个木马呢?看数字签名,如果包含了知名公司的数字签名,一般就可以认为是安全的。(除非这个公司不想混了,特意加入了恶意代码,或者私钥被盗用了,但这种情况太罕见了)
但是,是不是有数字签名的文件都是正常安全的文件呢? 也不一定,有些木马程序就带有数字签名!因为签名虽然很难伪造,但申请个数字签名并非多难的事情。
对数字证书也要防假冒伪劣啊。
分享到:
相关推荐
一种基于数字证书的无线局域网认证机制初探
Android TensorFlow Lite 初探 数字分类器 非kotlin 相关文章:https://blog.csdn.net/ansondroider/article/details/108508065 修改后的JAVA代码
数字认证证书在医疗器械注册工作中的应用与管理初探.pdf
基于时空信息模型的智慧城市数字底座设计初探.docx
数字化城市管理标准体系框架初探.doc
成语中数字作用的初探
微博营销数字化分析初探
区块链-初探中国央行数字货币DCEP .pdf
初探信息技术与英语课程整合.pdf初探信息技术与英语课程整合.pdf初探信息技术与英语课程整合.pdf初探信息技术与英语课程整合.pdf初探信息技术与英语课程整合.pdf初探信息技术与英语课程整合.pdf
文物数字化技术其数字化文物系统初探.ppt
数字档案馆网络安全问题与对策初探.pdf
高等教育证书化初探,喻登科,周荣,针对现阶段高等教育体制的弊端,从技术角度层面提出了一种新的高等教育改革思路——高等教育证书化,旨在通过整合我国高考机制、
《数字电子技术》课程教学创新改革研究与初探.doc
城市广电媒体在数字化城市发展中的问题与出路初探.pdf
SpringCloud服务拆分初探与案例解析 cloud-demo第一次 SpringCloud服务拆分初探与案例解析 cloud-demo第一次 SpringCloud服务拆分初探与案例解析 cloud-demo第一次 SpringCloud服务拆分初探与案例解析 cloud-demo第...
USB2.0规范初探.pdfUSB2.0规范初探.pdfUSB2.0规范初探.pdfUSB2.0规范初探.pdf
中职学校图书馆数字化建设初探.pdf
基于云计算的公共数字文化建设初探.pdf
数字城市地理空间框架信息安全保障体系初探
天基物联网发展与应用关键问题初探.pdf