《信息安全工程》課件第6章_第1頁
《信息安全工程》課件第6章_第2頁
《信息安全工程》課件第6章_第3頁
《信息安全工程》課件第6章_第4頁
《信息安全工程》課件第6章_第5頁
已閱讀5頁,還剩95頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第6章數(shù)字簽名6.1數(shù)字簽名的相關(guān)概念6.2數(shù)字信封和數(shù)字簽名6.3

RSA簽名算法6.4

ElGamal簽名算法6.5

Schnorr簽名算法6.6

Rabin簽名算法6.7

DSS簽名算法6.8盲簽名6.9門限數(shù)字簽名6.10門限簽名-門限驗(yàn)證簽名6.11動(dòng)態(tài)門限簽名6.12其他數(shù)字簽名

6.1數(shù)字簽名的相關(guān)概念

隨著計(jì)算機(jī)通信網(wǎng)的發(fā)展,人們希望通過電子設(shè)備實(shí)現(xiàn)快速、遠(yuǎn)距離的交易,數(shù)字(或電子)簽名技術(shù)應(yīng)運(yùn)而生,并開始用于商業(yè)通信系統(tǒng),如電子郵遞、電子轉(zhuǎn)賬以及辦公自動(dòng)化等系統(tǒng)。

類似于手書簽名,數(shù)字簽名也應(yīng)滿足以下要求:

(1)收方能夠確認(rèn)或證實(shí)發(fā)方的簽名,但不能偽造,簡記為R1-條件。

(2)發(fā)方發(fā)出簽名的消息給收方后,就不能再否認(rèn)他所簽發(fā)的消息,簡記為S-條件。

(3)收方對(duì)已收到的簽名消息不能否認(rèn),即有收?qǐng)?bào)認(rèn)證,簡記為R2-條件。

(4)第三方可以確認(rèn)收發(fā)雙方之間的消息傳送,但不能偽造這一過程,簡記為T-條件。

數(shù)字簽名與手書簽名的區(qū)別在于:手書簽名是模擬的,且因人而異;數(shù)字簽名是0和1的數(shù)字串,因消息而異。數(shù)字簽名與消息認(rèn)證的區(qū)別在于:消息認(rèn)證使收方能驗(yàn)證消息發(fā)送者及所發(fā)消息內(nèi)容是否被篡改過。當(dāng)收發(fā)雙方之間沒有利害沖突時(shí),消息認(rèn)證對(duì)于防止第三者的破壞來說已經(jīng)足夠安全了;當(dāng)收者和發(fā)者之間有利害沖突時(shí),單純用消息認(rèn)證技術(shù)無法解決他們之間的糾紛,此時(shí)必須借助滿足上述要求的數(shù)字簽名技術(shù)。

為了實(shí)現(xiàn)簽名目的,發(fā)方必須向收方提供足夠的非保密信息,使其能驗(yàn)證消息的簽名,但又不能泄露用于產(chǎn)生簽名的機(jī)密信息,以防止他人偽造簽名。因此,簽名者和證實(shí)者可公用的信息不能太多。任何一種產(chǎn)生簽名的算法或函數(shù)都應(yīng)當(dāng)滿足這兩個(gè)條件,而且從公開的信息很難推測(cè)出用于產(chǎn)生簽名的機(jī)密信息。此外,任何一種數(shù)字簽名的實(shí)現(xiàn)都依賴于設(shè)計(jì)仔細(xì)的通信協(xié)議。數(shù)字簽名有兩種:一種是對(duì)整體消息的簽名,它是消息經(jīng)過密碼變換的被簽消息整體;另一種是對(duì)壓縮消息的簽名,它是附加在被簽名消息之后或某一特定位置上的一段簽名圖樣。

若按明文和密文的對(duì)應(yīng)關(guān)系劃分,每一種簽名又可分為兩個(gè)子類:一類是確定性(Deterministic)數(shù)字簽名,其明文與密文一一對(duì)應(yīng),它對(duì)特定消息簽名后,簽名結(jié)果不發(fā)生變化,如RSA、Rabin等;另一類是隨機(jī)化的(Randomized)或概率式數(shù)字簽名,它對(duì)同一消息的簽名是隨機(jī)變化的,取決于簽名算法中隨機(jī)參數(shù)的取值。一個(gè)明文可能有多個(gè)合法的數(shù)字簽名,如ElGamal等。一個(gè)簽名體制一般含有兩個(gè)組成部分:簽名算法(SignatureAlgorithm)和驗(yàn)證算法(VerificationAlgorithm)。對(duì)[WTBX]M的簽名簡記為Sig(M)=S,而對(duì)S的驗(yàn)證簡記為Ver(S)={真,偽}={0,1}。

簽名算法和簽名密鑰是秘密的,只有簽名人掌握;驗(yàn)證算法應(yīng)當(dāng)公開,以便于他人進(jìn)行驗(yàn)證。

一個(gè)簽名體制可由量(M,S,K,V)來表示。其中,M是明文空間;S是簽名的集合;K是密鑰空間;V是驗(yàn)證函數(shù)的值域,由真、偽組成。設(shè)m∈M為任一消息,對(duì)于每一k∈K,有一簽名算法,易于計(jì)算:(6.1.1)驗(yàn)證算法:(6.1.2)對(duì)每一m∈M,有簽名Sigk(m)∈S(為M→S的映射)。從m、s可以驗(yàn)證s是否為m的簽名,即(6.1.3)簽名體制的安全性在于:從明文m和其簽名s難以推出k或偽造一個(gè)m′,使m′和s可被驗(yàn)證為真。

6.2數(shù)字信封和數(shù)字簽名

6.2.1數(shù)字簽名原理

文件上的手寫簽名長期以來被用作作者身份的證明或表明簽名者同意文件的內(nèi)容。實(shí)際上,簽名體現(xiàn)了以下幾個(gè)方面的保證:

(1)簽名是可信的。簽名使文件的接收者相信簽名者是慎重地在文件上簽名的。

(2)簽名是不可偽造的。簽名證明是簽名者而不是其他人在文件上簽名。

(3)簽名不可重用。簽名是文件的一部分,不可能將簽名移動(dòng)到不同的文件上。

(4)簽名后的文件是不可變的。在文件簽名以后,文件就不能改變了,否則簽名失效。

(5)簽名是不可抵賴的。簽名和文件是不可分離的,簽名者事后不能聲稱他沒有簽過這個(gè)文件。

在計(jì)算機(jī)上進(jìn)行數(shù)字簽名,并使這些保證能夠繼續(xù)有效,還存在一些問題。

首先,計(jì)算機(jī)文件易于復(fù)制,即使某人的簽名難以偽造,但是將有效的簽名從一個(gè)文件剪切和粘貼到另一個(gè)文件上是很容易的。這就使這種簽名失去了意義。

其次,文件在簽名后也易于修改,并且不會(huì)留下任何修改的痕跡。有幾種公開密鑰算法都能用作數(shù)字簽名,這些公開密鑰算法的特點(diǎn)是不僅用公開密鑰加密的消息可以用私鑰解密,而且反過來用私鑰加密的消息也可以用公開密鑰解密。其基本協(xié)議如下:

(1)Alice用她的私鑰對(duì)文件加密,從而對(duì)文件簽名。

(2)Alice將簽名后的文件傳給Bob。

(3)Bob用Alice的公鑰解密文件,從而驗(yàn)證簽名。在下面的協(xié)議中,單向散列函數(shù)和數(shù)字簽名算法是事先協(xié)商好的。

(1)Alice產(chǎn)生文件的單向散列值。

(2)Alice用她的私鑰對(duì)散列值加密,以此表示對(duì)文件的簽名。

(3)Alice將文件和散列簽名發(fā)送給Bob。

(4)Bob用Alice發(fā)送的文件產(chǎn)生文件的單向散列值,同時(shí)用Alice的公鑰對(duì)簽名的散列值解密。如果簽名的散列值與自己產(chǎn)生的散列值匹配,則簽名是有效的。圖6.2.1數(shù)字簽名協(xié)議原理6.2.2數(shù)字簽名應(yīng)用實(shí)例

現(xiàn)在Alice向Bob傳送數(shù)字信息,為了保證信息傳送的保密性、真實(shí)性、完整性和不可否認(rèn)性,需要對(duì)要傳送的信息進(jìn)行數(shù)字加密和數(shù)字簽名。Alice向Bob傳送數(shù)字信息的過程如下:

(1)Alice準(zhǔn)備好要傳送的數(shù)字信息(明文)。

(2)Alice對(duì)數(shù)字信息進(jìn)行哈希(Hash)運(yùn)算,得到一個(gè)信息摘要。

(3)Alice用自己的私鑰(SK)對(duì)信息摘要進(jìn)行加密得到Alice的數(shù)字簽名,并將其附在數(shù)字信息上。

(4)Alice隨機(jī)產(chǎn)生一個(gè)加密密鑰(DES密鑰),并用此密鑰對(duì)要發(fā)送的信息進(jìn)行加密,形成密文。

(5)Alice用Bob的公鑰(PK)對(duì)剛才隨機(jī)產(chǎn)生的加密密鑰進(jìn)行加密,將加密后的DES密鑰連同密文一起傳送給Bob。

(6)Bob收到Alice傳送過來的密文和加密過的DES密鑰,先用自己的私鑰(SK)對(duì)加密的DES密鑰進(jìn)行解密,得到DES密鑰。

(7)Bob用DES密鑰對(duì)收到的密文進(jìn)行解密,得到明文的數(shù)字信息,然后將DES密鑰拋棄(即DES密鑰作廢)。

(8)Bob用Alice的公鑰(PK)對(duì)Alice的數(shù)字簽名進(jìn)行解密,得到信息摘要。

(9)Bob用相同的Hash算法對(duì)收到的明文再進(jìn)行一次Hash運(yùn)算,得到一個(gè)新的信息摘要。

(10)Bob將收到的信息摘要和新產(chǎn)生的信息摘要進(jìn)行比較,如果一致,則說明收到的信息沒有被修改過。

6.3

RSA簽名算法

6.3.1算法描述

1.體制參數(shù)令n=p1p2,p1和p2是大素?cái)?shù),M=S=Zn隨機(jī)選一整數(shù)e,1<e<φ(n),(φ(n),e)=1,其中φ(n)=(p1-1)(p2-1)。然后,計(jì)算出d使ed≡1modφ(n),公開n和e,將p1、p2和d保密,K=(n,p,q,e,d)。

2.簽名過程

對(duì)消息m∈Zn,定義:(6.3.1)為對(duì)m的簽名。3.驗(yàn)證過程對(duì)給定的m、s,可按下式驗(yàn)證:(6.3.2)圖6.3.1RSA簽名體制的基本框圖6.3.2安全性

在RSA算法中,由于只有簽名者知道d,因此其他人不能偽造簽名,但可以很容易地證實(shí)所給的任意m、s對(duì)是否符合消息m和相應(yīng)簽名構(gòu)成的合法對(duì)。如第5章中所述,RSA體制的安全性依賴于n=p1p2分解的困難性。

ISO/IEC9796和ANSIX9.30-199X在1997年已將RSA作為建議的數(shù)字簽名標(biāo)準(zhǔn)算法,這說明RSA簽名具有足夠的安全性。

6.4

ElGamal簽名算法

2.簽名過程

給定消息m,發(fā)端用戶進(jìn)行下述工作。

(1)選擇秘密隨機(jī)數(shù)k∈Z*p。

(2)計(jì)算h(m):(6.4.2)(6.4.3)

(3)以Sigk(m,k)=S=(r‖s)作為簽名,將m、(r‖s)發(fā)送給對(duì)方。

3.驗(yàn)證過程

收信人收到m、(r‖s),先計(jì)算h(m),并按下式驗(yàn)證:(6.4.4)由(6.4.3)式有:(6.4.5)故有:(6.4.6)在此方案中,對(duì)同一消息m,由于隨機(jī)數(shù)k不同,因而有不同的簽名值S=(r‖s)。這些都是離散對(duì)數(shù)問題。至于能否同時(shí)選出a和b,然后解出相應(yīng)m,這仍面臨求離散對(duì)數(shù)的問題,即需計(jì)算loggyrrs。則(r′‖s′)是消息m′的合法簽名。但這里的消息m并非由攻擊者選擇的利于他的消息。如果攻擊者想對(duì)其選定的消息得到相應(yīng)的合法簽名,則仍然面臨解離散對(duì)數(shù)的問題。如果攻擊者掌握了同一隨機(jī)數(shù)r下的兩個(gè)消息m1和m2,以及合法簽名(a1‖b1)和(a2‖b2),則由就可以解出用戶的秘密鑰x。因此,在實(shí)際應(yīng)用中,對(duì)每個(gè)消息的簽名,都應(yīng)變換隨機(jī)數(shù)k,而且對(duì)某消息m簽名所用的隨機(jī)數(shù)k不能泄露,否則將解出用戶的秘密鑰x。6.5

Schnorr簽名算法6.5.1算法描述

1.系統(tǒng)參數(shù)

p,q:大素?cái)?shù),q|p-1,q是大于等于160bits的整數(shù),p是大于等于512bits的整數(shù),保證Zp中求解離散對(duì)數(shù)困難;

g:Zp*中元素,且gq

1modp;

x:用戶密鑰1<x<q;

y:用戶公鑰y

gxmodp。消息空間M=Zp*,簽名空間S=Zp*×Zq;密鑰空間(6.5.1)

2.簽名過程

令待簽消息為m,對(duì)給定的m進(jìn)行下述運(yùn)算。

(1)發(fā)端用戶任選一秘密隨機(jī)數(shù)k∈Zq。

(2)計(jì)算:(6.5.2)(6.5.3)(6.5.4)式中:

(3)將消息m及其簽名S=Sigk(m)=(e‖s)送給收信人。

3.驗(yàn)證過程

收信人收到消息m及簽名S=(e‖s)后,進(jìn)行如下運(yùn)算。

(1)計(jì)算:

(6.5.5)而后計(jì)算h(r′‖m)。(2)驗(yàn)證:(6.5.6)因?yàn)槿?e‖s)是m的合法簽名,則有(6.5.7)等號(hào)必成立。6.6

Rabin簽名算法6.6.1算法描述

1.系統(tǒng)參數(shù)令n=pq,其中p和q為素?cái)?shù);密鑰空間K=(n,p,q),其中n是公鑰,p、q是私鑰;M=S=QRp∩QRq,其中QR為二次剩余集,M和S分別為消息空間和簽名空間。(6.6.1)

3.驗(yàn)證過程

任何人可計(jì)算:(6.6.2)并檢驗(yàn):(6.6.3)6.6.2安全性

攻擊者選一x,求出x2=mmodn,送給簽名者簽名,簽名者將簽名s回送給攻擊者。若s≠±x(其概率為1/2),則攻擊者有1/2的機(jī)會(huì)分解n,從而可破譯此系統(tǒng)。因此,一個(gè)系統(tǒng)若可證明(如二次剩余體制)等于大整數(shù)分解的困難性,則要小心使用,否則不安全。RSA的安全性“被認(rèn)為等于”大整數(shù)分解的困難性(無法證明),因而無上述缺點(diǎn)。

ISO/IEC7996于1997年曾將Rabin算法作為建議的數(shù)字簽名標(biāo)準(zhǔn)算法。 6.7

DSS簽名算法

6.7.1概況

DSS(DigitalSignatureStandard)簽名標(biāo)準(zhǔn)是1991年8月由美國NIST公布、1994年5月19日正式公布、1994年12月1日正式采用的美國聯(lián)邦信息處理標(biāo)準(zhǔn)。其安全性基于解離散對(duì)數(shù)的困難性,它是在ElGamal和Schnorr(1991年)兩個(gè)方案的基礎(chǔ)上設(shè)計(jì)的(見FIPS186,1994年)。DSS中所采用的算法簡記為DSA(DigitalSignatureAlgorithm)。此算法由D.W.Kravitz于1993年設(shè)計(jì)。

這類簽名標(biāo)準(zhǔn)具有較大的兼容性和適用性,已成為網(wǎng)絡(luò)安全體系的基本構(gòu)件之一。6.7.2基本框圖

圖6.7.1表示DSS簽名體制的基本框圖。圖6.7.1

DSS簽名體制的基本框圖

2.簽名過程

對(duì)消息m∈M=Z*p,其簽名為(6.7.1)其中:(6.7.2)(6.7.3)

3.驗(yàn)證過程

計(jì)算:(6.7.4)6.7.4

DSS簽名和驗(yàn)證框圖

圖6.7.2

DSS簽名和驗(yàn)證框圖6.7.5相關(guān)說明

RSADataSecurityInc(DSI)想以RSA算法作為標(biāo)準(zhǔn),因而對(duì)DSS的反對(duì)非常強(qiáng)烈,在標(biāo)準(zhǔn)公布之前就指出采用公用模可能使政府能夠進(jìn)行偽造簽名。許多大的軟件公司早已得到RSA的許可證,因而反對(duì)DSS。主要批評(píng)意見有:

(1)DSA不能用于加密或密鑰分配。

(2)DSA由NSA開發(fā)的,算法中可能設(shè)有陷門。

(3)DSA比RSA慢。

(4)RSA已是一個(gè)實(shí)際上的標(biāo)準(zhǔn),而DSS與現(xiàn)行國際標(biāo)準(zhǔn)不相容。

(5)DSA未經(jīng)公開選擇過程,還沒有足夠的時(shí)間進(jìn)行分析證明。

(6)DSA可能侵犯了其他專利(Schnorr簽名算法和Diffie-Hellman的公鑰密鑰分配算法)。

(7)由512bit所限定的密鑰量太小,盡管現(xiàn)已改為512~1024中可被64除盡的即可供使用。

關(guān)于DSA的速度需要說明的是,可以通過增加預(yù)計(jì)算來提高計(jì)算速度(隨機(jī)數(shù)r與消息無關(guān),選一數(shù)串k,預(yù)先計(jì)算出其r)。對(duì)k-1也可這樣做。預(yù)計(jì)算能夠大大加快DSA的速度。 6.8盲簽名

一般數(shù)字簽名中,總是要先知道文件內(nèi)容而后才簽署,這正是通常所需要的。但有時(shí)我們需要某人對(duì)一個(gè)文件簽字,但又不讓他知道文件內(nèi)容,通常稱之為盲簽名(BlindSignature),它是由Chaum在1983年最先提出的。在選舉投票和數(shù)字貨幣協(xié)議中將會(huì)碰到這類要求。利用盲變換可以實(shí)現(xiàn)盲簽名,參看圖6.8.1。圖6.8.1盲簽名框圖

6.8.1完全盲簽名

B是一位仲裁人,A要B簽署一個(gè)文件,但不想讓他知道所簽的是什么,而B也并不關(guān)心所簽的內(nèi)容,他只要確保在需要時(shí)可以對(duì)此進(jìn)行仲裁,這種情況下可通過下述協(xié)議完全盲簽名協(xié)議實(shí)現(xiàn)。

(1)A取一文件并以一隨機(jī)值乘之,此隨機(jī)值稱為盲因子(BlindingFactor)。

(2)A將此盲文件送給B。

(3)B對(duì)盲文件簽名。

(4)A以盲因子除之,得到B對(duì)原文件的簽名。

若簽名函數(shù)和乘法函數(shù)是可換的,則上述做法成立,否則要采用其他方法(而不是乘法)修改原文件。安全性討論:

B可以欺詐嗎?是否可以獲取有關(guān)文件的信息?若盲因子完全隨機(jī),則可保證B不能由協(xié)議(2)中所看到的盲文件得出原文件的信息。即使B將協(xié)議(3)中所簽盲文件復(fù)制,他也不能(對(duì)任何人)證明在此協(xié)議中所簽的真正文件,而只是知道其簽名成立,并可證實(shí)其簽名。即使他簽了100萬個(gè)文件,也無從得到所簽文件的信息。完全盲簽名具有如下特點(diǎn):

(1)B對(duì)文件的簽名合法,它證明B簽了該文件,且具有以前介紹過的普通簽名的屬性。

(2)B不能將所簽文件與實(shí)際上簽的文件聯(lián)系起來,即使他保存所有曾簽過的文件,也不能決定所簽文件的真實(shí)內(nèi)容,竊聽者所得信息更少。6.8.2盲簽名的應(yīng)用

完全盲簽名使A可以讓B簽任何他所想要的文件,例如,“B欠A1000萬元”等,因而這種協(xié)議不可能真正實(shí)用。

采用分割-選擇(Cut-and-Choose)技術(shù),可使B知道他所簽的,但仍可保留盲簽名的一些有用特征。

下面我們借用王育民、劉建偉編著的《通信網(wǎng)的安全——理論與技術(shù)》一書中給出的例子來說明盲簽名的應(yīng)用。

【例6.8.1】每天有許多人進(jìn)入某國,海關(guān)想知道他們是不是販毒者,于是海關(guān)用概率方法而不是檢查每個(gè)人來實(shí)現(xiàn)這一目的。對(duì)入關(guān)者抽取1/10進(jìn)行檢查。販毒者在多數(shù)情況下將可逃脫,但有1/10機(jī)會(huì)被抓獲。為了有效懲治販毒,一旦抓獲,法院對(duì)其的罰金將大于其他9次的獲利。要想增加捕獲率,必須檢查更多的人,因此利用搜查概率值可以成功地控制抓獲販毒分子的協(xié)議。

【例6.8.2】反間諜組織成員的身份必須保密,甚至連反間諜機(jī)構(gòu)也不知道他是誰。反間諜機(jī)構(gòu)的頭目要給每個(gè)成員一個(gè)簽名的文件,文件上注明:持此簽署文件人××(為某掩蔽的成員名字)有充分外交豁免權(quán)。每個(gè)成員都有自己的掩蔽名單,使反間諜機(jī)構(gòu)不能恰好提供出簽名的文件。成員們不想將他們的掩蔽名單送給反間諜機(jī)構(gòu),敵人也可能會(huì)破壞反間諜機(jī)構(gòu)的計(jì)算機(jī)。另一方面,反間諜機(jī)構(gòu)也不會(huì)對(duì)成員給他的任何文件都進(jìn)行盲簽名。例如,一個(gè)聰明的成員可能用“成員(名字)已退休,并每年發(fā)給100萬退休金”進(jìn)行消息代換后,請(qǐng)總統(tǒng)先生簽名。此種情況下,盲簽名可能有用。假定每個(gè)成員有10個(gè)可能的掩蔽名字,他們可以自行選用,別人不知道。假定成員們并不關(guān)心在那個(gè)掩蔽名字下他們得到了外交豁免權(quán),并假定機(jī)構(gòu)的計(jì)算機(jī)為Agency’sIntelligentComputingEngine,簡記為AICE,則可利用下述協(xié)議實(shí)現(xiàn)。

協(xié)議6.8.1

(1)每個(gè)成員準(zhǔn)備10份文件,各用不同的掩護(hù)名字,以得到外交豁免權(quán)。

(2)成員以不同的盲因子盲化每個(gè)文件。

(3)成員將10個(gè)盲文件送給AICE。

(4)AICE隨機(jī)選擇9個(gè),并詢問成員每個(gè)文件的盲因子。

(5)成員將適當(dāng)?shù)拿ひ蜃铀徒oAICE。

(6)AICE從9個(gè)文件中移去盲因子,確信其正確性。

(7)AICE將所簽署的10個(gè)文件送給成員。

(8)成員移去盲因子,并讀出他的新掩護(hù)名字:“TheCrimsonStreak”,在該名字下這份簽署的文件給了他外交豁免權(quán)。

這一協(xié)議在抗反間諜成員欺詐上是安全的,他必須知道哪個(gè)文件不被檢驗(yàn)才可進(jìn)行欺詐,其機(jī)會(huì)只有10%。當(dāng)然,他可以送更多的文件。AICE對(duì)所簽的第10個(gè)文件比較有信心,雖然未曾檢驗(yàn)。這具有盲簽性,保存了所有匿名性。反間諜成員可以按下述方法進(jìn)行欺詐:他生成兩個(gè)不同的文件,AICE只愿簽其中之一,B找兩個(gè)不同的盲因子將每個(gè)文件變成同樣的盲文件。這樣若AICE要求檢驗(yàn)文件,則B將原文件的盲因子給他;若AICE不要求看文件并簽名,則可用盲因子轉(zhuǎn)換成另一蓄意制造的文件。以特殊的數(shù)學(xué)算法可以將兩個(gè)盲文件做得幾乎一樣,顯然,這僅在理論上是可能的。6.8.3信封

D.Chaum將盲變換看做信封,盲化文件是對(duì)文件加個(gè)信封,而去掉盲因子的過程就是打開信封。文件在信封中時(shí)無人可讀它,在盲文件上簽名相當(dāng)于在復(fù)寫紙信封上簽名,這樣就得到了對(duì)(信封內(nèi))真文件的簽名。

6.8.4盲簽名算法

D.Chaum在1985年曾提出第一個(gè)實(shí)現(xiàn)盲簽名的算法,他采用了RSA算法。令B的公鑰為e,秘密鑰為d,模為n。

(1)A要對(duì)消息m進(jìn)行盲簽名,選1<k<n且(k,n)=1,作(6.8.1)(2)B對(duì)t簽名:(6.8.2)(3)A計(jì)算s≡td/kmodn得:(6.8.3)這是B對(duì)m按RSA體制的簽名。證明:

任何盲簽名都必利用分割-選擇原則。Chaum在1987年給出了一種更復(fù)雜的算法來實(shí)現(xiàn)盲簽名,他還提出了一些更復(fù)雜、但更靈活的盲簽名算法。 6.9門限數(shù)字簽名

6.9.1系統(tǒng)參數(shù)

一個(gè)(t,n)門限簽名方案表明n個(gè)簽名者中任何t個(gè)能夠代表所有簽名者對(duì)消息m進(jìn)行簽名,而t-1個(gè)或更少的簽名者合作不能完成對(duì)m的有效簽名。不失一般性,假設(shè)U={U1,U2,…,Un}是n個(gè)簽名者的集合。首先,系統(tǒng)中的所有成員需要協(xié)商選定公共參數(shù):安全的大素?cái)?shù)p和q以及元素g,其中q|(p-1),并且g在素域Zp上的階為q;h(·)為一個(gè)強(qiáng)的密碼哈希函數(shù)(見第7章)。接著,每個(gè)成員Ui對(duì)外公開自己的唯一標(biāo)識(shí)號(hào)ui,它可以唯一地代表簽名者Ui。(6.9.1)如果上面的等式成立,那么fi(uj)是有效的;否則,是無效的。

(2)在收到其他參與簽名的成員發(fā)送的zi后,Ui計(jì)算:其中,(6.9.4)6.9.5群簽名驗(yàn)證協(xié)議

任何群簽名的接收者都可以通過驗(yàn)證下面的等式是否成立來驗(yàn)證群簽名{r,s}是否有效:(6.9.5)令h-1(m)h(m

)s=s

,要使群簽名驗(yàn)證成立,攻擊者需要根據(jù)下面的等式

(6.9.6) 6.10門限簽名-門限驗(yàn)證簽名

6.11動(dòng)態(tài)門限簽名

(6-11-2)6.11.4個(gè)體簽名產(chǎn)生協(xié)議

假設(shè)l(1≤l≤n)個(gè)簽名者構(gòu)成的子集 同意代表整個(gè)團(tuán)體對(duì)消息m進(jìn)行門限值為l的簽名。其中,每個(gè)簽名者Ui(i=1,2,…,l)可以應(yīng)用下面的過程生成自己的個(gè)體簽名。

首先,每個(gè)簽名者需要從中隨機(jī)選取一個(gè)秘密整數(shù),計(jì)算:(6.11.8)(6.11.9)(6.11.10)(6.11.11)其中,。最后,Ui將{r,si}作為自己對(duì)m的個(gè)體簽名提交給指定的群簽名生成者DC(DesignatedCombiner)。當(dāng)收到l個(gè)有效的個(gè)體簽名后,DC計(jì)算如下信息:(6.11.13)(6.11.14)6.11.6群簽名驗(yàn)證協(xié)議

任何群簽名的接收者都可以通過驗(yàn)證下面的等式是否成立來驗(yàn)證群簽名是否為的有效簽名:(6.11.15) 6.12其他數(shù)字簽名

6.12.1代理簽名

代理(Proxy)簽名是某人授權(quán)其代理進(jìn)行的簽名。在不將其簽名秘密鑰交給代理人的條件下代理簽名是如何實(shí)現(xiàn)的呢?Mambo等人在1995年提出了一種解決辦法,能夠使代理簽名具有如下特點(diǎn):

(1)不可區(qū)分性(Distinguishability):代理簽名

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論