本页使用了标题或全文手工转换

數位簽章

维基百科,自由的百科全书
(重定向自数字签名
跳到导航 跳到搜索
Gnome-mime-text-x-copying.svg

數位簽章英语:Digital Signature,又称公鑰數位簽章)是一種類似写在上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证,但法條中的電子簽章與數位簽章,代表之意義並不相同,電子簽章用以辨識及確認電子文件簽署人身分、資格及電子文件真偽者。而數位簽章則是以數學演算法或其他方式運算對其加密,才形成的電子簽章,意即並非所有的電子簽章都是數位簽章。

数字签名不是指将签名扫描成数字图像,或者用触摸板获取的签名,更不是落款

数字签名了的文件的完整性是很容易验证的(不需要骑缝章骑缝签名,也不需要笔迹鑑定),而且数字签名具有不可抵赖性(即不可否認性),不需要笔迹专家来验证。

简单的数字签名原理
生成数字签名并加密以及解密并验证数字签名

使用[编辑]

使用者可以對其发出的每一封电子邮件进行数字签名。這不是指落款或簽名檔(普遍把落款讹误成签名)。

中国大陆,数字签名是具法律效力的,正在被普遍使用。2000年,中華人民共和國的新《合同法》首次确认了电子合同、电子签名的法律效力。2005年4月1日起,中華人民共和國首部《电子签名法》正式实施。

在台湾,2001年公佈實施《電子簽章法》做為數位簽章的法源依據及規範,並且製發中華民國自然人憑證及工商憑證。

每个人都有一对「钥匙」(数字身份),其中一个只有本人知道(私钥),另一个公开的(公钥)。签名的时候用私钥,验证签名的时候用公钥。又因为任何人都可以落款申称他就是使用者本人,因此公钥必须向接受者信任的人(身份认证机构)来注册。注册后身份认证机构给使用者发一数字证书。对文件签名后,使用者把此数字证书连同文件及签名一起发给接受者,接受者向身份认证机构求证是否真地是用使用者的密钥签发的文件。

信息发布者可以使用数字签名:信息发布的目的是让人们知道信息,虽然没必要对消息进行加密,但是必须排除有人伪装信息发布者发布假消息的风险,这时信息发布者就可以使用数字签名。而对明文消息施加的签名,称为明文签名(clearsign)。[1]

软件的作者可以加上数字签名,以便用户下载后对签名进行验证。[2]

认证机构(CA)也可以为用户的公钥加上数字签名生成证书,以便人们确认用户公钥的合法性。[3]

SSL/TLS使用服务器证书(加上了数字签名的服务器公钥)认证服务器身份是否合法。[3]

原理[编辑]

通常我们使用公钥加密,用私钥解密。而在数字签名中,我们使用私钥加密(相当于生成签名),公钥解密(相当于验证签名)。[4]

签名方法:我们可以直接对消息进行签名(即使用私钥加密,此时加密的目的是为了签名,而不是保密),验证者用公钥正确解密消息,如果和原消息一致,则验证签名成功。但通常我们会对消息的散列值签名,因为通常散列值的长度远小于消息原文,使得签名(非对称加密)的效率大大提高。注意,计算消息的散列值不是数字签名的必要步骤。[5]

在实际使用中,我们即想加密消息,又想签名,所以要对加密和签名组合使用。[6]

数字签名应用了公钥密码领域使用的单向函数原理。单向函数指的是正向操作非常简单,而逆向操作非常困难的函数,比如大整数乘法。这种函数往往提供一种难解或怀疑难解的数学问题。目前,公钥密码领域具备实用性的三个怀疑难解问题为:质数分解离散对数椭圆曲线问题。

操作[编辑]

一言以蔽之,数字签名就是将公钥密码反过来使用。签名者将讯息用私鑰加密(這是一種反用,因為通常公鑰密碼中私鑰用於解密),然后公布公钥;验证者使用公钥将加密讯息解密并比对消息(一般签名对象为消息的散列值。本节为了讲解方便,假设数字签名直接将消息而非散列值签名)。

因此,可靠的公钥密码算法均能构建出可靠的数字签名。下面講解為何反用公鑰密碼算法能夠構建出安全的數字簽名。

Alice是簽名者,假設她要對消息A進行簽名。現在, Alice生成了其公私鑰密碼對,公佈該公鑰,然後將消息用私鑰加密後發布。

現在,我們希望Alice的簽名算法具有如下特性:1,確認消息在傳輸過程中沒有丟位,沒被篡改(完整性). 2,確認消息的發送者是發布公鑰的Alice(認證). 3,確認Alice的確發布過該消息(不可否認性)

实现[编辑]

数字签名算法依靠公钥加密技术来实现的。在公钥加密技术里,每一个使用者有一对密钥:一把公钥和一把私钥。公钥可以自由发布,但私钥则秘密保存;还有一个要求就是要让通过公钥推算出私钥的做法不可能实现。

普通的数字签名算法包括三种算法:

  • 一种密码生成算法
  • 标记算法
  • 验证算法

RSA,EIGamal,DSA,ECDSA,Rabin等算法可以实现数字签名。[7]

参考文献[编辑]

  1. ^ 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 218页. ISBN 978-7-115-42491-4. 
  2. ^ 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 219页. ISBN 978-7-115-42491-4. 
  3. ^ 3.0 3.1 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 220页. ISBN 978-7-115-42491-4. 
  4. ^ 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 207页. ISBN 978-7-115-42491-4. 
  5. ^ 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 209–211页. ISBN 978-7-115-42491-4. 
  6. ^ 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 214–215页. ISBN 978-7-115-42491-4. 
  7. ^ 结城浩. 图解密码技术(第3版). 人民邮电出版社. 2016: 222–223页. ISBN 978-7-115-42491-4. 

外部連結[编辑]

Wikisource-logo.svg 您可以在維基文庫中查找此百科條目的相關原始文獻: