




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
信息安全原理與技術(shù)第3版第4章公鑰密碼技術(shù)主要知識(shí)點(diǎn):
--公鑰密碼體制
--RSA密碼
--ElGamal密碼
--橢圓曲線密碼
--SM2
--公鑰分配
--利用公鑰密碼分配對(duì)稱密鑰
--Diffie-Hellman密鑰交換2024/4/5Ch1-公鑰密碼技術(shù)2公鑰密碼技術(shù)是為了解決對(duì)稱密碼技術(shù)中最難解決的兩個(gè)問題而提出的一是對(duì)稱密碼技術(shù)的密鑰分配問題二是對(duì)稱密碼不能實(shí)現(xiàn)數(shù)字簽名Diffie和Hellmna于1976年在《密碼學(xué)的新方向》中首次提出了公鑰密碼的觀點(diǎn),標(biāo)志著公鑰密碼學(xué)研究的開始1977年由Rviest,Shmair和Adlmena提出了第一個(gè)比較完善的公鑰密碼算法,即RSA算法。從那時(shí)候起,人們基于不同的計(jì)算問題提出了大量的公鑰密碼算法2024/4/5Ch1-公鑰密碼技術(shù)3公鑰密碼體制
公鑰密碼體制(Public-KeyCryptosystem)也稱非對(duì)稱密碼體制(AsymmetricCryptosystem)或者雙鑰密碼體制(Two-KeyCryptosystem)公鑰密碼算法是基于數(shù)學(xué)函數(shù)(如單向陷門函數(shù))而不是基于代換和置換公鑰密碼是非對(duì)稱的,它使用兩個(gè)獨(dú)立的密鑰,即公鑰和私鑰,任何一個(gè)都可以用來(lái)加密,另一個(gè)用來(lái)解密公鑰可以被任何人知道,用于加密消息以及驗(yàn)證簽名;私鑰僅僅自己知道的,用于解密消息和簽名加密和解密會(huì)使用兩把不同的密鑰,因此稱為非對(duì)稱2024/4/5Ch1-公鑰密碼技術(shù)4一個(gè)公鑰密碼體制有6個(gè)部分構(gòu)成:明文,加密算法,公鑰和私鑰,密文,解密算法可以構(gòu)成兩種基本的模型:加密模型和認(rèn)證模型在加密模型中,發(fā)送方用接收方的公鑰作為加密密鑰,用接收方私鑰作解密密鑰,由于該私鑰只有接收方擁有,因此即只有接收者才能解密密文得到明文在認(rèn)證模型中,發(fā)送方用自己的私鑰對(duì)消息進(jìn)行變換,產(chǎn)生簽名。接收者用發(fā)送者的公鑰對(duì)簽名進(jìn)行驗(yàn)證以確定簽名是否有效。只有擁有私鑰的發(fā)送者才能對(duì)消息產(chǎn)生有效的簽名,任何人均可以用簽名人的公鑰來(lái)檢驗(yàn)該簽名的有效性2024/4/5Ch1-公鑰密碼技術(shù)5消息加密算法解密算法消息MMC攻擊者接收方B發(fā)送方A密鑰源PRBPUB圖4.1公鑰加密模型2024/4/5Ch1-公鑰密碼技術(shù)6消息加密算法解密算法消息MMC攻擊者接收方B發(fā)送方A密鑰源PUAPRA圖4.2公鑰認(rèn)證模型2024/4/5Ch1-公鑰密碼技術(shù)7消息加密算法解密算法消息MXC接收方B發(fā)送方A密鑰源PUAPRA圖4.3公鑰密碼體制的保密和認(rèn)證加密算法X解密算法M密鑰源PRBPUB2024/4/5Ch1-公鑰密碼技術(shù)8公鑰密碼系統(tǒng)滿足的要求同一算法用于加密和解密,但加密和解密使用不同的密鑰。兩個(gè)密鑰中的任何一個(gè)都可用來(lái)加密,另一個(gè)用來(lái)解密,加密和解密次序可以交換。產(chǎn)生一對(duì)密鑰(公鑰和私鑰)在計(jì)算上是可行的。已知公鑰和明文,產(chǎn)生密文在計(jì)算上是容易的。接收方利用私鑰來(lái)解密密文在計(jì)算上是可行的。僅根據(jù)密碼算法和公鑰來(lái)確定私鑰在計(jì)算上不可行。已知公鑰和密文,在不知道私鑰的情況下,恢復(fù)明文在計(jì)算上是不可行的。2024/4/5Ch1-公鑰密碼技術(shù)9上面要求的實(shí)質(zhì)是要找一個(gè)單向陷門函數(shù)單向函數(shù)指計(jì)算函數(shù)值是容易的,而計(jì)算函數(shù)的逆是不可行的陷門單向函數(shù)則存在一個(gè)附加信息,當(dāng)不知道該附加信息時(shí),求函數(shù)逆是困難的,但當(dāng)知道該附加信息時(shí),求函數(shù)逆就變得容易了陷門單向函數(shù)在附加信息未知時(shí)是單向函數(shù),而當(dāng)附加信息已知時(shí),就不再是單向函數(shù)了通常把附加信息稱為陷門信息,陷門信息作為私鑰,公鑰密碼體制就是基于這一原理而設(shè)計(jì)的其安全強(qiáng)度取決于它所依據(jù)的問題的計(jì)算復(fù)雜度。2024/4/5Ch1-公鑰密碼技術(shù)10公鑰密碼分析
和對(duì)稱密碼體制一樣,如果密鑰太短,公鑰密碼體制也易受到窮舉搜索攻擊但公鑰密碼體制所使用的可逆函數(shù)的計(jì)算復(fù)雜性與密鑰長(zhǎng)度是比線性函數(shù)增大更快函數(shù)。密鑰長(zhǎng)度太大又會(huì)使得加密和解密運(yùn)算太慢而不實(shí)用目前提出的公鑰密碼體制的密鑰長(zhǎng)度已經(jīng)足夠抵抗窮舉攻擊,但也使它加密和解密速度變慢,因此公鑰密碼體制一般用于加密小數(shù)據(jù),如會(huì)話鑰,目前主要用于密鑰管理和數(shù)字簽字。對(duì)公鑰密碼算法的第二種攻擊是從公鑰計(jì)算出私鑰。目前為止,還沒有在數(shù)學(xué)上證明這個(gè)方面是不可行的。2024/4/5Ch1-公鑰密碼技術(shù)11RSA密碼
RSA算法是1977年由Rivest、Shamir、Adleman提出的非常著名的公鑰密碼算法它是基于大合數(shù)的質(zhì)因子分解問題的困難性RSA算法是一種分組密碼,明文和密文是0到n-1之間的整數(shù),通常n的大小為1024位二進(jìn)制數(shù)或309位十進(jìn)制數(shù).2024/4/5Ch1-公鑰密碼技術(shù)12算法描述
1.密鑰的產(chǎn)生
隨機(jī)選擇兩個(gè)大素?cái)?shù)p,q
計(jì)算n=p×q計(jì)算秘密的歐拉函數(shù)
(n)=(p-1)(q-1)選擇e使得1<e<
(n),且gcd(e,
(n))=1解下列方程求出d
ed
≡1mod
(n),且0≤d≤n
公開公鑰:PU={e,N}保存私鑰:PR={d,p,q}2024/4/5Ch1-公鑰密碼技術(shù)132.加密過(guò)程加密時(shí)明文以分組為單位進(jìn)行加密,每個(gè)分組m的二進(jìn)制值均小于n,對(duì)明文分組m作加密運(yùn)算:c=memodn,且0≤m<n3.解密過(guò)程密文解密m=cd
modn
4.簽名過(guò)程計(jì)算簽名s=mdmodn5.簽名驗(yàn)證過(guò)程簽名驗(yàn)證m=se
modn2024/4/5Ch1-公鑰密碼技術(shù)14例4.1選擇素?cái)?shù):p=47和q=71。計(jì)算n=pq
=47×71=3337,
(n)=(p–1)(q-1)=46×70=3220。選擇e:使gcd(e,3220)=1,選取e=79;決定d:de≡1mod3220,得d=1019公開公鑰
{79,3337},保存私鑰{1019,47,71};假設(shè)消息為M=6882326879666683,進(jìn)行分組,分組的位數(shù)比n要小,我們選取M1=688,M2=232,M3=687,M4=966,M5=668,M6=003。M1的密文為C1=68879mod3337=1570,繼續(xù)進(jìn)行類似計(jì)算,可得到最終密文為
C=1570275620912276158解密時(shí)計(jì)算M1=15701019mod3337=688,類似可以求出其他明文。2024/4/5Ch1-公鑰密碼技術(shù)15RSA算法的安全性
RSA密碼體制的安全性是基于分解大整數(shù)的困難性假設(shè)RSA算法的加密函數(shù)c=memodn是一個(gè)單向函數(shù),所以對(duì)于攻擊者來(lái)說(shuō),試圖解密密文是計(jì)算上不可行的對(duì)于接收方解密密文的陷門是分解n=pq,由于接收方知道這個(gè)分解,他可以計(jì)算
(n)=(p-1)(q-1),然后用擴(kuò)展歐幾里德算法來(lái)計(jì)算解密私鑰d。對(duì)RSA算法的攻擊有下面幾個(gè)方法:窮舉攻擊,數(shù)學(xué)攻擊,選擇密文攻擊,公共模數(shù)攻擊,計(jì)時(shí)攻擊
2024/4/5Ch1-公鑰密碼技術(shù)16最基本的攻擊是窮舉攻擊,也就是嘗試所有可能的私鑰數(shù)學(xué)攻擊的實(shí)質(zhì)是試圖對(duì)兩個(gè)素?cái)?shù)乘積的分解計(jì)時(shí)攻擊也可以用于對(duì)RSA算法的攻擊。計(jì)時(shí)攻擊是攻擊者通過(guò)監(jiān)視系統(tǒng)解密消息所花費(fèi)的時(shí)間來(lái)確定私鑰。時(shí)間攻擊方式比較獨(dú)特,它是一種只用到密文的攻擊方式2024/4/5Ch1-公鑰密碼技術(shù)17ElGamal密碼
ElGamal是1985年由T.EIGamal提出的一個(gè)著名的公鑰密碼算法該算法既能用于數(shù)據(jù)加密也能用于數(shù)字簽名其安全性是依賴于計(jì)算有限域上離散對(duì)數(shù)這一難題2024/4/5Ch1-公鑰密碼技術(shù)181.密鑰產(chǎn)生任選一個(gè)大素?cái)?shù)p,使得p-1有大素因子,g是模p的一個(gè)本原根,公開p與g。使用者任選一私鑰x,x∈[0,p-1]計(jì)算公鑰公開公鑰:y,p,g保密私鑰:x2024/4/5Ch1-公鑰密碼技術(shù)192.加密過(guò)程對(duì)于明文m,選取一個(gè)r,r∈[0,p-1]計(jì)算則密文為3.解密過(guò)程先計(jì)算再計(jì)算出明文2024/4/5Ch1-公鑰密碼技術(shù)204.簽名過(guò)程假設(shè)對(duì)消息m簽名,任選一個(gè)隨機(jī)數(shù)k,使k∈[0,p-1]計(jì)算簽名為(5)簽名驗(yàn)證過(guò)程
2024/4/5Ch1-公鑰密碼技術(shù)21需要說(shuō)明的是,為了避免選擇密文攻擊,ElGamal是對(duì)消息m的hash值進(jìn)行簽名,而不是對(duì)m簽名與RSA方法比較,ElGamal方法具有以下優(yōu)點(diǎn):(1)系統(tǒng)不需要保存秘密參數(shù),所有的系統(tǒng)參數(shù)均可公開;(2)同一個(gè)明文在不同的時(shí)間由相同加密者加密會(huì)產(chǎn)生不同的密文但ElGamal方法的計(jì)算復(fù)雜度比RSA方法要大。2024/4/5Ch1-公鑰密碼技術(shù)22橢圓曲線密碼
大多數(shù)公鑰密碼系統(tǒng)都使用具有非常大數(shù)目的整數(shù)或多項(xiàng)式,計(jì)算量大人們發(fā)現(xiàn)橢圓曲線是克服此困難的一個(gè)強(qiáng)有力的工具橢圓曲線密碼體制(Ellipticcurvecryptosystem,ECC)的依據(jù)是定義在橢圓曲線點(diǎn)群上的離散對(duì)數(shù)問題的難解性橢圓曲線系統(tǒng)第一次應(yīng)用于密碼學(xué)上是于1985年由Koblitz與Miller分別提出兩個(gè)較著名的橢圓曲線密碼系統(tǒng);一是利用ElGamal的加密法,二是Menezes-Vanstone的加密法2024/4/5Ch1-公鑰密碼技術(shù)23橢圓曲線的定義
在實(shí)數(shù)系中,橢圓曲線可定義成所有滿足方程E:y2=x3+ax
+b的點(diǎn)(x,y)所構(gòu)成的集合若x3+ax
+b沒有重復(fù)的因式或4a3+27b2≠0,則E:y2=x3+ax
+b能定義成為一個(gè)群橢圓曲線是連續(xù)的,并不適合用于加密必須把橢圓曲線變成離散的點(diǎn),即將橢圓曲線定義在有限域上密碼學(xué)中關(guān)心的是有限域上的橢圓曲線
2024/4/5Ch1-公鑰密碼技術(shù)24橢圓曲線密碼體制中使用的變?cè)拖禂?shù)均為有限域中元素的橢圓曲線密碼應(yīng)用中所使用的兩類橢圓曲線是定義在素域Zp上的素曲線(primecurve)和在GF(2m)上構(gòu)造的二元曲線對(duì)于素域Zp上的素曲線,我們使用三次方程,其中的變量和系數(shù)在集合{0,1,2,…,p-1}上取值,運(yùn)算為模p運(yùn)算對(duì)于在GF(2m))上的二元曲線,變量和系數(shù)在GF(2m)內(nèi)取值,且運(yùn)算為GF(2m)里的運(yùn)算2024/4/5Ch1-公鑰密碼技術(shù)25密碼系統(tǒng)在素域Zp或者GF(2m)下定義為橢圓曲線E:y2=x3+ax
+b,其中4a3+27b2≠0,a和b是小于p(p為素?cái)?shù))的非負(fù)數(shù)。在GF(2m)下定義為橢圓曲線E:y2+xy=x3+ax
+b,其中b≠0,2024/4/5Ch1-公鑰密碼技術(shù)26橢圓曲線有一個(gè)特殊的點(diǎn),記為O,它并不在橢圓曲線上,此點(diǎn)稱為無(wú)限遠(yuǎn)的點(diǎn)或零點(diǎn)用E(K)表示在K上橢圓曲線E所有的點(diǎn)所構(gòu)成的集合,如E(Zp)表示在素域Zp上橢圓曲線E所有的點(diǎn)所構(gòu)成的集合,而E(GF(2m))則表示在GF(2m)上橢圓曲線E所有的點(diǎn)所構(gòu)成的集合橢圓曲線上的所有點(diǎn)E(K)集合通過(guò)定義一個(gè)加法運(yùn)算,滿足一定的運(yùn)算規(guī)則可以構(gòu)成一個(gè)Abel群點(diǎn)P=(x,y)對(duì)X坐標(biāo)軸反射的點(diǎn)為-P=(x,-y),而稱-P為點(diǎn)P的負(fù)點(diǎn)。若nP=O,且n為最小的正整數(shù),則n為橢圓曲線E上點(diǎn)的階除了無(wú)限遠(yuǎn)的點(diǎn)O之外,橢圓曲線E上任何可以生成所有點(diǎn)的點(diǎn)都可視為是E的生成數(shù)(generator)2024/4/5Ch1-公鑰密碼技術(shù)27橢圓曲線上的兩個(gè)相異的點(diǎn)相加與雙倍(doubling)的點(diǎn)P的幾何含義如下。兩個(gè)相異的點(diǎn)相加:假設(shè)P和Q是橢圓曲線上兩個(gè)相異的點(diǎn),而且P不等于-Q。若P+Q=R,則點(diǎn)R是經(jīng)過(guò)P、Q兩點(diǎn)的直線與橢圓曲線相交的唯一交點(diǎn)的負(fù)點(diǎn)。如圖4.5所示。雙倍的點(diǎn)P:令P+P=2P,則點(diǎn)2P是經(jīng)過(guò)P的切線與橢圓曲線相交之唯一交點(diǎn)的負(fù)點(diǎn)。如圖所示。2024/4/5Ch1-公鑰密碼技術(shù)28兩個(gè)相異點(diǎn)相加和雙倍點(diǎn)
2024/4/5Ch1-公鑰密碼技術(shù)29橢圓曲線運(yùn)算規(guī)則
1.橢圓曲線在素域Zp上的運(yùn)算規(guī)則說(shuō)明一點(diǎn),在橢圓曲線運(yùn)算中,大寫參數(shù)表示點(diǎn),小寫參數(shù)表示數(shù)值。加法規(guī)則:
2024/4/5Ch1-公鑰密碼技術(shù)30其中乘法規(guī)則:2024/4/5Ch1-公鑰密碼技術(shù)31橢圓曲線在GF(2m)上的運(yùn)算規(guī)則
加法規(guī)則:
2024/4/5Ch1-公鑰密碼技術(shù)32乘法規(guī)則:2024/4/5Ch1-公鑰密碼技術(shù)33橢圓曲線密碼算法橢圓曲線上所有的點(diǎn)外加一個(gè)叫做無(wú)窮遠(yuǎn)點(diǎn)的特殊點(diǎn)構(gòu)成的集合,連同一個(gè)定義的加法運(yùn)算構(gòu)成一個(gè)Abel群在等式kP
=P+P+…+P=Q中,已知k和點(diǎn)P求點(diǎn)Q比較容易,反之已知點(diǎn)Q和點(diǎn)P求k卻是相當(dāng)困難的,這個(gè)問題稱為橢圓曲線上點(diǎn)群的離散對(duì)數(shù)問題(EllipticCurveDiscreteLogarithmProblem,ECDLP)橢圓曲線密碼算法正是利用這個(gè)困難問題而設(shè)計(jì)的2024/4/5Ch1-公鑰密碼技術(shù)34ElGamal的橢圓曲線密碼算法
(1)密鑰產(chǎn)生假設(shè)系統(tǒng)公開參數(shù)為一個(gè)橢圓曲線E及模數(shù)p。使用者執(zhí)行:任選一個(gè)整數(shù)k,任選一個(gè)點(diǎn),并計(jì)算公鑰為,私鑰為k。2024/4/5Ch1-公鑰密碼技術(shù)35(2) 加密過(guò)程令明文M為E上的一點(diǎn)。首先任選一個(gè)整數(shù),然后計(jì)算密文密文為兩個(gè)點(diǎn)。(3) 解密過(guò)程計(jì)算明文2024/4/5Ch1-公鑰密碼技術(shù)36Menezes-Vanstone橢圓曲線密碼算法
Menezes-Vanstone橢圓曲線密碼算法是效率比較高的橢圓曲線加密法其明文沒有限制一定要落于橢圓曲線E上2024/4/5Ch1-公鑰密碼技術(shù)372024/4/5Ch1-公鑰密碼技術(shù)38橢圓曲線密碼的性能
橢圓曲線密碼體制的安全性是建立在橢圓曲線離散對(duì)數(shù)的數(shù)學(xué)難題之上橢圓曲線離散對(duì)數(shù)問題被公認(rèn)為要比整數(shù)分解問題(RSA方法的基礎(chǔ))和模p離散對(duì)數(shù)問題(DSA算法的基礎(chǔ))難解得多目前解橢圓曲線上的離散對(duì)數(shù)問題的最好算法是Pollardrho方法,其計(jì)算復(fù)雜度上是完全指數(shù)級(jí)的,而目前對(duì)于一般情況下的因數(shù)分解的最好算法的時(shí)間復(fù)雜度是亞指數(shù)級(jí)的ECC算法在安全強(qiáng)度、加密速度以及存儲(chǔ)空間方面都有巨大的優(yōu)勢(shì)。如161位的ECC算法的安全強(qiáng)度相當(dāng)于RSA算法1024位的強(qiáng)度2024/4/5Ch1-公鑰密碼技術(shù)39SM2SM2是國(guó)家商用密碼管理局于2010年12月17日發(fā)布的公鑰算法。它是基于橢圓曲線點(diǎn)群上的離散對(duì)數(shù)問題的難解性。一個(gè)合適的橢圓曲線應(yīng)具有的性質(zhì)為:
--有限域上橢圓曲線在點(diǎn)加運(yùn)算下構(gòu)成有限交換群,且其階與基域規(guī)模相近;
--類似于有限域乘法群中的乘冪運(yùn)算,橢圓曲線多倍點(diǎn)運(yùn)算構(gòu)成一個(gè)單向函數(shù)。在多倍點(diǎn)運(yùn)算中,已知多倍點(diǎn)與基點(diǎn),求解倍數(shù)的問題稱為橢圓曲線離散對(duì)數(shù)問題。
2024/4/5Ch1-公鑰密碼技術(shù)40SM2公鑰算法選擇素域Fp的橢圓曲線。素域Fp的特征為:p是奇素?cái)?shù)p,素域中的元素用整數(shù)0,1,2,···,p?1表示。a)加法單位元是整數(shù)0;b)乘法單位元是整數(shù)1;c)域元素的加法是整數(shù)的模p加法,即若a,b∈Fp,則a+b
=(a+b)modp;d)域元素的乘法是整數(shù)的模p乘法,即若a,b∈Fp,則a·b=(a·b)modp。
SM2推薦素域Fp(p是大于3的素?cái)?shù))上的橢圓曲線方程為:y2=x3+ax+b,a,b∈Fp,且(4a3+27b2)modp≠0。有限域上的橢圓曲線E(Fp)定義為:
E(Fq)={(x,y)|x,y∈Fp,且滿足上式}∪{O},其中O是無(wú)窮遠(yuǎn)點(diǎn)。2024/4/5Ch1-公鑰密碼技術(shù)41橢圓曲線E(Fp)上的點(diǎn)的數(shù)目用#E(Fq)表示,稱為橢圓曲線E(Fp)的階。有限域Fq上的橢圓曲線是由點(diǎn)組成的集合。在仿射坐標(biāo)系下,橢圓曲線上點(diǎn)P(非無(wú)窮遠(yuǎn)點(diǎn))的坐標(biāo)表示為P=(xP,yP),其中xP,yP為滿足一定方程的域元素,分別稱為點(diǎn)P的x坐標(biāo)和y坐標(biāo)。
2024/4/5Ch1-公鑰密碼技術(shù)42SM2密鑰對(duì)生成輸入:一個(gè)有效的Fq(q
=p且p為大于3的素?cái)?shù),或q=2m)上橢圓曲線系統(tǒng)參數(shù)的集合。輸出:與橢圓曲線系統(tǒng)參數(shù)相關(guān)的一個(gè)密鑰對(duì)(d,P)。a)用隨機(jī)數(shù)發(fā)生器產(chǎn)生整數(shù)d∈
[1,n?2];b)G為基點(diǎn),計(jì)算點(diǎn)P=(xP,yP)=[d]G;c)密鑰對(duì)是(d,P),其中d為私鑰,P為公鑰。其中[d]G表示橢圓曲線上點(diǎn)G的d倍點(diǎn)
2024/4/5Ch1-公鑰密碼技術(shù)43公鑰的驗(yàn)證
輸入:一個(gè)有效的Fp(p>3且p為素?cái)?shù))上橢圓曲線系統(tǒng)參數(shù)集合及一個(gè)相關(guān)的公鑰P。輸出:對(duì)于給定的橢圓曲線系統(tǒng)參數(shù),若公鑰P是有效的,則輸出“有效”;否則輸出“無(wú)效”。a)驗(yàn)證P不是無(wú)窮遠(yuǎn)點(diǎn)O;b)驗(yàn)證公鑰P的坐標(biāo)xP和yP是域Fp中的元素;(即驗(yàn)證xP和yP是區(qū)間[0;p?1]中的整數(shù)。)
c)驗(yàn)證;
d)驗(yàn)證[n]P=O;
e)如果通過(guò)了所有驗(yàn)證,則輸出“有效”;否則輸出“無(wú)效”。2024/4/5Ch1-公鑰密碼技術(shù)44加密算法設(shè)需要發(fā)送的消息為比特串M,klen為M的比特長(zhǎng)度。對(duì)明文M進(jìn)行加密運(yùn)算步驟如下:A1:用隨機(jī)數(shù)發(fā)生器產(chǎn)生隨機(jī)數(shù)k∈[1,n-1];A2:計(jì)算橢圓曲線點(diǎn)C1=[k]G=(x1,y1),將C1的數(shù)據(jù)類型轉(zhuǎn)換為比特串;A3:計(jì)算橢圓曲線點(diǎn)S=[h]PB,若S是無(wú)窮遠(yuǎn)點(diǎn),則報(bào)錯(cuò)并退出;A4:計(jì)算橢圓曲線點(diǎn)[k]PB=(x2,y2),將坐標(biāo)x2、y2
的數(shù)據(jù)類型轉(zhuǎn)換為比特串;A5:計(jì)算t=KDF(x2||y2,klen),若t為全0比特串,則返回A1;A6:計(jì)算C2=M⊕t;A7:計(jì)算C3=Hash(x2||M||y2);A8:輸出密文C=C1||C2||C3。
2024/4/5Ch1-公鑰密碼技術(shù)45解密算法
klen為密文中C2的比特長(zhǎng)度。對(duì)密文C=C1||C2||C3
進(jìn)行解密的運(yùn)算步驟如下:B1:從C中取出比特串C1,將C1的數(shù)據(jù)類型轉(zhuǎn)換為橢圓曲線上的點(diǎn),驗(yàn)證C1是否滿足橢圓曲線方程,若不滿足則報(bào)錯(cuò)并退出;B2:計(jì)算橢圓曲線點(diǎn)S=[h]C1,若S是無(wú)窮遠(yuǎn)點(diǎn),則報(bào)錯(cuò)并退出;B3:計(jì)算[dB]C1=(x2,y2),將坐標(biāo)x2、y2的數(shù)據(jù)類型轉(zhuǎn)換為比特串;B4:計(jì)算t=KDF(x2||y2,klen),若t為全0比特串,則報(bào)錯(cuò)并退出;B5:從C中取出比特串C2,計(jì)算M′=C2⊕t;B6:計(jì)算u=Hash(x2||M′||y2),從C中取出比特串C3,若u≠C3,則報(bào)錯(cuò)并退出;B7:輸出明文M′。2024/4/5Ch1-公鑰密碼技術(shù)46公鑰分配公鑰密碼體制的密鑰分配與對(duì)稱密碼體制的密鑰分配有著本質(zhì)的差別對(duì)稱密碼體制的密鑰分配中必須同時(shí)確保密鑰的秘密性、真實(shí)性和完整性公開密鑰密碼體制中有兩個(gè)密鑰,私鑰由自己保管,不需要進(jìn)行分配公鑰密碼體制不需要保證公鑰的秘密性,只需確保公鑰的真實(shí)性和完整性,這樣就能保證公鑰沒有被攻擊者替換或篡改公鑰的分配方法可歸納為四種:公開發(fā)布、公用目錄表、公鑰授權(quán)和公鑰證書。2024/4/5Ch1-公鑰密碼技術(shù)47公開發(fā)布公開發(fā)布指用戶將自己的公鑰發(fā)給其他用戶,或廣播給某一團(tuán)體這種方法雖然簡(jiǎn)單,但有一個(gè)較大的缺點(diǎn),即任何人都可偽造這種公開發(fā)布如果某個(gè)用戶假裝是用戶A并以A的名義向另一用戶發(fā)送或廣播自己的公開鑰,則在A發(fā)現(xiàn)假冒者以前,這一假冒者可解讀所有意欲發(fā)向A的加密消息,而且假冒者還能用偽造的密鑰獲得認(rèn)證。2024/4/5Ch1-公鑰密碼技術(shù)48公用目錄表公用目錄表指一個(gè)公用的公鑰動(dòng)態(tài)目錄表公用目錄表的建立、維護(hù)以及公鑰的分布由某個(gè)可信的實(shí)體或組織承擔(dān),稱這個(gè)實(shí)體或組織為公用目錄的管理員與第一種分配方法相比,這種方法的安全性更高該方法有以下一些組成部分:(1)管理員為每個(gè)用戶在目錄表中建立一個(gè)目錄,目錄中有兩個(gè)數(shù)據(jù)項(xiàng):一是用戶名,二是用戶的公開鑰。2024/4/5Ch1-公鑰密碼技術(shù)49(2)每一用戶都親自或以某種安全的認(rèn)證通信在管理者那里為自己的公開鑰注冊(cè)。(3)用戶可以隨時(shí)用新密鑰替換現(xiàn)有的密鑰。這可能由于自己的公鑰用過(guò)的次數(shù)太多或由于與公鑰相關(guān)的私鑰已泄漏。(4)管理員定期公布或定期更新目錄表。例如,像電話號(hào)碼本一樣公布目錄表或在發(fā)行量很大的報(bào)紙上公布目錄表的更新。(5)用戶可通過(guò)電子手段訪問目錄表。此時(shí),從管理員到用戶必須有安全的認(rèn)證通信。這種方案的安全性明顯高于公開發(fā)布的安全性,但仍易受到攻擊。如果敵手成功地獲得管理員的私人密鑰,就可偽造一個(gè)公鑰目錄表,以后既可以假冒任一用戶又可以監(jiān)聽發(fā)往任一用戶的消息。2024/4/5Ch1-公鑰密碼技術(shù)50公鑰授權(quán)與公用目錄表類似,假定有一個(gè)公鑰管理機(jī)構(gòu)來(lái)為用戶建立、維護(hù)動(dòng)態(tài)的公鑰目錄但同時(shí)對(duì)系統(tǒng)提出以下要求,即:每個(gè)用戶都可靠地知道管理機(jī)構(gòu)的公鑰,而只有管理機(jī)構(gòu)自己知道相應(yīng)的私鑰圖4.7是典型的公鑰分配方案,在這個(gè)分配方案中完成了兩個(gè)功能,一是獲得需要的公鑰;二是雙方相互認(rèn)證2024/4/5Ch1-公鑰密碼技術(shù)512024/4/5Ch1-公鑰密碼技術(shù)52公鑰證書公鑰授權(quán)中的管理機(jī)構(gòu)有可能成為系統(tǒng)的瓶頸,而且由管理機(jī)構(gòu)維護(hù)的公鑰目錄表也易被攻擊者篡改。分配公鑰的另一方法是公鑰證書用戶通過(guò)交換公鑰證書來(lái)互相交換自己的公鑰公鑰證書類似人們使用的紙類證書,如駕駛執(zhí)照、畢業(yè)證等,兩者都包括擁有者的屬性,可以驗(yàn)證證書一般由第三方發(fā)行,這個(gè)第三方稱為證書權(quán)威中心(certificateauthority,CA)。證書由CA
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 草原割草在整合教育資源中的作用考核試卷
- 安全文明施工方案誰(shuí)編寫
- 航天器在軌燃料補(bǔ)給技術(shù)考核試卷
- 環(huán)境工程教學(xué)課件
- 再生橡膠在寵物用品行業(yè)的應(yīng)用考核試卷
- 2025年無(wú)縫管熱連軋機(jī)合作協(xié)議書
- 火工品生產(chǎn)過(guò)程中的安全生產(chǎn)措施考核試卷
- 藤材種植與可持續(xù)農(nóng)業(yè)考核試卷
- 盾構(gòu)機(jī)施工中的隧道工程地質(zhì)調(diào)查考核試卷
- 選擇與誰(shuí)同行決定你的職場(chǎng)高度
- 0720小罐茶品牌介紹
- 汽車設(shè)計(jì)-汽車熱成型零部件設(shè)計(jì)規(guī)范模板
- 美國(guó)南北戰(zhàn)爭(zhēng) 詳細(xì)版課件
- 神經(jīng)介入患者圍術(shù)期管理
- 企業(yè)組織機(jī)構(gòu)架構(gòu)圖
- 房地產(chǎn)集團(tuán)公共區(qū)域標(biāo)準(zhǔn)化裝修教學(xué)課件
- 吉林省辦學(xué)基本標(biāo)準(zhǔn)手冊(cè)
- 閩教版(2020版)六年級(jí)下冊(cè)信息技術(shù)整冊(cè)教案
- 光電倍增管PPT
- 1-2會(huì)員代表選票
- 滬科七年級(jí)數(shù)學(xué)下冊(cè) 實(shí)數(shù)單元綜合測(cè)試卷解析
評(píng)論
0/150
提交評(píng)論