信息安全數(shù)字簽名課件_第1頁
信息安全數(shù)字簽名課件_第2頁
信息安全數(shù)字簽名課件_第3頁
信息安全數(shù)字簽名課件_第4頁
信息安全數(shù)字簽名課件_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名1信息安全與密碼學(xué)信息安全與密碼學(xué)數(shù)字簽名數(shù)字簽名2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名2主要內(nèi)容主要內(nèi)容數(shù)字簽名的基本概念1RSA簽名2數(shù)字簽名標(biāo)準(zhǔn)DSS3其他簽名算法4基于身份的簽名方案5問題的提出問題的提出v手寫簽名:手寫簽名:傳統(tǒng)的確認(rèn)方式,如書信、簽約、支付、批復(fù)等v在網(wǎng)絡(luò)時(shí)代,人們通過網(wǎng)絡(luò)支付費(fèi)用、買賣股票,為了保證網(wǎng)上商務(wù)活動(dòng)的安全,需要信息安全中一個(gè)很重要的安全機(jī)制數(shù)字簽名數(shù)字簽名v例子: 用戶A通過網(wǎng)絡(luò)發(fā)送一條消息,告訴銀行從用戶A的賬戶上給用戶B支付5000元1、銀行如何知道這條消息是由用戶A發(fā)送的?2、如果事后用戶

2、A否認(rèn)他曾經(jīng)發(fā)送過這條消息,或聲稱他的支付請求是1000元,銀行如何向公證機(jī)關(guān)證明用戶A確實(shí)發(fā)送過這條消息?2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名3 解決辦法之一:用戶A對他的請求“讓銀行從用戶A的賬戶上給用戶B支付5000元”進(jìn)行簽名v數(shù)字簽名數(shù)字簽名是手寫簽名數(shù)字化的產(chǎn)物,但又有著顯著的區(qū)別 每個(gè)消息的簽名都是不同的,否則簽名就會(huì)被獲取并復(fù)制到另外的文件中v數(shù)字簽名的基礎(chǔ)是公鑰密碼學(xué)2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名4數(shù)字簽名的目的和要求數(shù)字簽名的目的和要求 v數(shù)字簽名的目的:數(shù)字簽名的目的:保證信息的完整性和真實(shí)性,即消息內(nèi)容沒有被篡改,而且簽名也沒有被篡改,消息

3、只能始發(fā)于所聲稱的一方v一個(gè)完善的簽名方案應(yīng)滿足以下三個(gè)條件:1.1. 不可否認(rèn)性:不可否認(rèn)性:簽名者事后不能否認(rèn)或抵賴自己的簽名2.2. 不可偽造性:不可偽造性:其他任何人均不能偽造簽名,也不能對接收或發(fā)送的信息進(jìn)行篡改、偽造和冒充3. 若當(dāng)事雙方對簽名真?zhèn)伟l(fā)生爭執(zhí)時(shí),能夠在公正的仲仲裁裁者面前通過驗(yàn)證簽名來確定其真?zhèn)?022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名5數(shù)字簽名的定義數(shù)字簽名的定義vISO對數(shù)字簽名的定義對數(shù)字簽名的定義:數(shù)字簽名是指附加在數(shù)據(jù)單元上的一些數(shù)據(jù),或是對數(shù)據(jù)單元所做的密碼變換,這種數(shù)據(jù)或變換允許數(shù)據(jù)單元的接收者用以確認(rèn)數(shù)據(jù)單元來源和數(shù)據(jù)單元的完整性,并保護(hù)數(shù)據(jù),防

4、止被人偽造v簡單地說,數(shù)字簽名就是指消息的發(fā)送者通過某種簽名方法產(chǎn)生的別人無法偽造的一段“特殊報(bào)文”,該報(bào)文就是簽名2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名6簽名方案的組成簽名方案的組成一個(gè)簽名方案一個(gè)簽名方案是滿足下列條件的五元組(P, A, K, S, V):1. P:所有可能消息消息組成的有限集2. A:所有可能簽名簽名組成的有限集3. K:所有可能密鑰密鑰組成的有限集4. 對每一個(gè)kK,有一個(gè)簽名算法簽名算法SkS和一個(gè)相應(yīng)的驗(yàn)證算法驗(yàn)證算法VkV。對消息xP和相應(yīng)簽名yA,簽名算法Sk:PA和驗(yàn)證算法Vk:PA0, 1都滿足:當(dāng)ySk ( x )時(shí),Vk ( x, y )1,

5、否則Vk ( x, y )02022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名7數(shù)字簽名的過程數(shù)字簽名的過程v數(shù)字簽名方案一般包括三個(gè)過程數(shù)字簽名方案一般包括三個(gè)過程:1. 系統(tǒng)初始化過程系統(tǒng)初始化過程:產(chǎn)生數(shù)字簽名方案中用到的所有系統(tǒng)和用戶參數(shù)(公開的公開的+秘密的秘密的)2. 簽名產(chǎn)生過程簽名產(chǎn)生過程:用戶利用給定的簽名算法簽名算法對消息簽名,簽名過程可以公開也可以不公開,但一定包含僅簽名者才擁有的秘密信息(簽名密鑰)3. 簽名驗(yàn)證過程簽名驗(yàn)證過程:驗(yàn)證者利用公開的驗(yàn)證方法驗(yàn)證方法對給定消息的簽名進(jìn)行驗(yàn)證,得出簽名的有效性2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名82022-3-6信息

6、安全數(shù)字簽名信息安全數(shù)字簽名9RSA簽名簽名v基于RSA公鑰體制的簽名方案通常稱為RSA數(shù)字簽數(shù)字簽名方案名方案。 RSA簽名體制的基本算法可表述如下:1. 密鑰的生成密鑰的生成(與加密系統(tǒng)一樣): 公鑰Pk=e,n;私鑰Sk=d,p,q2. 簽名過程簽名過程 (d,n):用戶A對消息MZn進(jìn)行簽名,計(jì)算 S=Sig(H(M)=H(M)d mod n; 并將S附在消息M后作為對用戶對消息M的簽名3. 驗(yàn)證過程驗(yàn)證過程 (e,n): 給定(M,S),Ver(M,S)為真 H(M)=Se (mod n)成立2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名10RSA簽名方案圖簽名方案圖2022-3-

7、6信息安全數(shù)字簽名信息安全數(shù)字簽名11yeH(x)d比較消息x消息xy消息xyHH(x)ye對對RSA簽名的攻擊簽名的攻擊v假設(shè)假設(shè)RSA直接對消息進(jìn)行簽名,而不是對消息的直接對消息進(jìn)行簽名,而不是對消息的Hash值簽名值簽名v一般攻擊一般攻擊:設(shè)e和n是用戶A的公鑰,攻擊者任選一個(gè)數(shù)據(jù)Y,用A的公鑰計(jì)算XYe mod n,于是便可以用Y偽造偽造A對消息對消息X的簽名的簽名,因?yàn)?Y=Xd mod n 實(shí)際意義不大:偽造的消息X具有實(shí)際意義的概率很小 Hash函數(shù)函數(shù)可以抵御這種攻擊2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名12v 利用已有簽名進(jìn)行攻擊利用已有簽名進(jìn)行攻擊 :如果消息M1

8、、M2的簽名分別是S1和S2,則任何知道M1,S1,M2,S2的人可以偽造對消息M1M2的簽名S1S2,因?yàn)?Sig(M1M2) = Sig(M1)Sig(M2) 抵抗該攻擊的方法:用戶不要輕易地對其他人提用戶不要輕易地對其他人提供的隨機(jī)數(shù)據(jù)進(jìn)行簽名供的隨機(jī)數(shù)據(jù)進(jìn)行簽名 更有效的方法:不直接對數(shù)據(jù)簽名,而是對數(shù)據(jù)的對數(shù)據(jù)的Hash值簽名值簽名2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名13v利用簽名獲得明文利用簽名獲得明文: 設(shè)攻擊者截獲了密文C,CM e mod n,想求出明文M。于是選擇一個(gè)小的隨機(jī)數(shù)r,并計(jì)算xr e mod n;yx C mod n;tr1 mod n 則x d(r

9、 e) d =r mod n。然后攻擊者設(shè)法讓發(fā)送者對y簽名,獲得:Sy d mod n 攻擊者計(jì)算:t S mod nr1 y d mod nr1 x d C d mod nC d mod nM, 抵抗該攻擊的方法:用戶不要輕易地對其他人提供的隨機(jī)數(shù)據(jù)進(jìn)行簽名。最好是對數(shù)據(jù)的數(shù)據(jù)的Hash值值簽名簽名2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名14H(M)的重要性的重要性v H(M)H(M)的另一個(gè)作用的另一個(gè)作用:簽名算法對整個(gè)消息進(jìn)行簽名,由于公開密鑰密碼體制一般速度都比較慢,這樣當(dāng)消息比較長時(shí),整個(gè)簽名與驗(yàn)證過程都會(huì)相當(dāng)?shù)穆脤ο⒌腍ash值進(jìn)行簽名,則無論消息多長,簽名都只與

10、Hash值的長度有關(guān)2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名15RSA簽名標(biāo)準(zhǔn)簽名標(biāo)準(zhǔn)PSS 2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名16PSS算法的編碼操作過程EIGamal簽名方案簽名方案vElGamalElGamal數(shù)字簽名方案由數(shù)字簽名方案由T.ElGamal在1985年提出v簽名過程如下:簽名過程如下:1. 系統(tǒng)初始化過程:系統(tǒng)初始化過程:同加密算法。公鑰為(p,g,y),私鑰為x (1xp-1),其中y=gxmod p2. 簽名過程簽名過程:給定消息M,簽名者A進(jìn)行如下計(jì)算: 選擇隨機(jī)數(shù)kZp*,且k與(p1)互素; 首先計(jì)算消息M的哈希值H(M),然后計(jì)算: r

11、=gk mod p; s = (H(M)xr) k1mod( p1) 將(r,s)作為簽名,與M一起發(fā)送給接收方2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名173. 驗(yàn)證簽名過程驗(yàn)證簽名過程:接收方B收到M與其簽名(r,s)后: 計(jì)算消息M的Hash值H(M); 驗(yàn)證公式 yrr sgH(M) mod p 是否成立,成立確認(rèn)(r,s)為有效簽名,否則認(rèn)為簽名 是偽造的2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名18vElGamal數(shù)字簽名算法安全性數(shù)字簽名算法安全性1. ElGamal數(shù)字簽名算法是一個(gè)非確定性非確定性的數(shù)字簽名算法,對同一個(gè)消息M所產(chǎn)生的簽名依賴于隨機(jī)數(shù)k2. 由于用

12、戶的簽名密鑰x是保密的,攻擊者要從公開的驗(yàn)證密鑰y得到簽名密鑰x必須求解有限域上的離散對數(shù)問題。因此ElGamal數(shù)字簽名算法的安全安全性是基于有限域上計(jì)算離散對數(shù)的困難性性是基于有限域上計(jì)算離散對數(shù)的困難性3. 在簽名時(shí)用的隨機(jī)數(shù)隨機(jī)數(shù)r不能被泄露不能被泄露4. 隨機(jī)數(shù)隨機(jī)數(shù)k不能被重復(fù)使用不能被重復(fù)使用2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名19Schnorr簽名方案簽名方案v初始化過程初始化過程同EIgamalv簽名過程:簽名過程:對消息M,做下述運(yùn)算: 任選一隨機(jī)數(shù)kZq,計(jì)算簽名 ( e, s) r gk mod p e = H (r | M) s k-xe mod qv驗(yàn)證

13、簽名:驗(yàn)證簽名: (e, s) r gsye mod p,而后計(jì)算H( r| M) 驗(yàn)證H( r| M) = e 2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名20數(shù)據(jù)簽名標(biāo)準(zhǔn)數(shù)據(jù)簽名標(biāo)準(zhǔn)DSSv1991年,美國政府頒布了數(shù)字簽名標(biāo)準(zhǔn)數(shù)字簽名標(biāo)準(zhǔn)DSS(Digital Signature Standard) 和DES一樣,DSS也引起了激烈的爭論。反對者認(rèn)為:密鑰太短密鑰太短、效率不如效率不如RSA高高、不能實(shí)現(xiàn)數(shù)據(jù)加密不能實(shí)現(xiàn)數(shù)據(jù)加密并懷疑NIST在DSS中留有后門留有后門v隨后,美國政府對其做了一些改進(jìn)v目前DSS的應(yīng)用已經(jīng)十分廣泛,并被一些國際標(biāo)準(zhǔn)化組織采納為國際標(biāo)準(zhǔn)v2000年,美國

14、政府將RSA和橢圓曲線密碼引入到數(shù)字簽名標(biāo)準(zhǔn)中,進(jìn)一步豐富了DSS算法2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名21DSS算法描述算法描述vDSS簽名簽名利用Hash函數(shù)產(chǎn)生消息的Hash值值,Hash值連同隨機(jī)數(shù)隨機(jī)數(shù)k一起作為簽名函數(shù)的輸入,簽名函數(shù)還需使用發(fā)送方的私鑰私鑰SKA和一些公開參數(shù)PKG+,簽名函數(shù)的兩個(gè)輸出s和r就構(gòu)成了消消息的簽名息的簽名( s, r )v 接收方收到消息后再產(chǎn)生消息的Hash值,將Hash值與簽名一起輸入驗(yàn)證函數(shù),驗(yàn)證函數(shù)還需輸入PKG+和發(fā)方的公鑰公鑰PKA。驗(yàn)證函數(shù)的輸出如果與收到的簽名成分r相等,則簽名有效2022-3-6信息安全數(shù)字簽名信息安

15、全數(shù)字簽名222022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名23M|MHSigSrHVerPKG+SKGPKAPKG+k比較數(shù)字簽名算法DSA DSS的簽名算法稱為的簽名算法稱為DSA,DSA使用以下參數(shù):1. p為素?cái)?shù),2L1p2L,其中512L1024且L為64的倍數(shù),即L51264j j0, 1, 2, , 82. q為素?cái)?shù),是(p-1)的素因子,2159q21603. gh(p1)/q mod p,1hp-1,且滿足g14. x為隨機(jī)數(shù),0 xq,計(jì)算計(jì)算ygx mod p 參數(shù)p、q、g可以公開,且可為一組用戶公用。x和和y分別為用戶的私鑰和公鑰分別為用戶的私鑰和公鑰2022-3-

16、6信息安全數(shù)字簽名信息安全數(shù)字簽名24DSA簽名生成過程簽名生成過程v選擇一個(gè)隨機(jī)數(shù)k,0kg,進(jìn)行如下計(jì)算:r(gk mod p) mod q,sk1 (SHA(M) xr) mod qSHA (M)為160位的Hash函數(shù)值,把簽名r和s附在數(shù)據(jù)M后面發(fā)給接收者 ( M | r | s ) 應(yīng)檢驗(yàn)計(jì)算所得的r和s是否為零,若r0或s0,則重新產(chǎn)生k,并重新計(jì)算產(chǎn)生簽名r和s 每一簽名使用不同的k2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名25DSA簽名驗(yàn)證過程簽名驗(yàn)證過程1. 首先檢驗(yàn)是否有0rq,0sq,若其中之一不成立,則簽名為假2. 計(jì)算: ws 1 mod q,u1 wSHA(

17、M) mod q,u2rw mod q,v(gu1yu2 mod p) mod q3. 若vr,則簽名為真,否則簽名為假或數(shù)據(jù)被篡改2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名26ECDSA簽名算法簽名算法 簽名過程:簽名過程:消息m,全局參數(shù)D( q, a, b, G, n, h ),簽名者的公私鑰對(Q, d),(Q=dG)1. 選擇一個(gè)隨機(jī)數(shù)k,計(jì)算kG( x1, y1 )2. rx1 mod n;如果r0,則回到步驟13. eSHA1(m)4. sk1(edr) mod n,如果s0,則回到步驟1;5. 對消息的簽名為( r, s ),簽名者把消息m和簽名( r, s )發(fā)送給接收

18、者2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名27v驗(yàn)證簽名:驗(yàn)證簽名:收到消息m和簽名( r, s )之后1. 檢驗(yàn)r、s,要求r、s1, n12. 計(jì)算eSHA1 ( m )3. 計(jì)算ws1 mod n 4. 計(jì)算u1ew mod n;u2rw mod n5. 計(jì)算Xu1Gu2Q。如果X0,表示簽名無效;否則,X( x1, y1 ),計(jì)算vx1 mod n6. 如果vr,表示簽名有效;否則表示簽名無效2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名28基于身份的簽名方案基于身份的簽名方案 vShamir的基于身份的數(shù)字簽名方案的基于身份的數(shù)字簽名方案 -包括四個(gè)算法:1. 初始化初始化

19、:KGC選擇n為兩個(gè)大素?cái)?shù)p、q的乘積,e是一個(gè)與 (n)互素的大素?cái)?shù),f是一個(gè)單向函數(shù),則為公開的參數(shù)2. 密鑰提取密鑰提?。汗_的用戶身份值i,與i值相對應(yīng)的私鑰為g,滿足:g ei ( mod n )3. 簽名算法簽名算法:對消息m簽名,首先選擇一個(gè)隨機(jī)數(shù)r,計(jì)算tr e ( mod n ),sg r f(t m),則將簽名簽名( s, t, r )發(fā)送給驗(yàn)證者4. 驗(yàn)證算法驗(yàn)證算法:驗(yàn)證者收到簽名( s, t, r )之后,如果 成立,則接受該簽名為有效簽名;否則,拒絕該簽名2022-3-6信息安全數(shù)字簽名信息安全數(shù)字簽名29?()ef t msi t vCha-Cheon的基于身份的

20、數(shù)字簽名方案:的基于身份的數(shù)字簽名方案:1. 設(shè)置設(shè)置:給定安全參數(shù)k,生成素?cái)?shù)q,兩個(gè)q階群G1和G2,一個(gè)可接受的雙線性映射: G1G1G2。隨機(jī)選擇生成元PG1。取隨機(jī)數(shù)sZq*為主密鑰,令Ppubs P。選擇2個(gè)密碼學(xué)Hash函數(shù)H1: 0, 1*G1* 和 H2: 0, 1*G1* Zq*。系統(tǒng)參數(shù)為 params,主密鑰為sZq*2. 析出析出:給定串ID 0, 1*,PKG 計(jì)算QIDH1( ID ),計(jì)算私鑰dIDs QID3. 簽名簽名:給定私鑰dID和消息m,選取隨機(jī)數(shù)rZq*,計(jì)算Ur QID,hH2 (m, U)和V(rh) dID,輸出簽名簽名 ( U, V )4. 驗(yàn)證驗(yàn)證:消息m的簽名 ( U, V ),驗(yàn)證 (P, V ) (Ppub, Uh QID )是否成立,這里hH2 ( m, U

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論