版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
應(yīng)用密碼學(xué)與PKI介紹linfb@
應(yīng)用密碼學(xué)與PKI介紹linfb@目錄對(duì)稱(chēng)加密技術(shù) ↓moreOP-MODE ↓公鑰密碼技術(shù) ↓認(rèn)證和Hash算法 ↓數(shù)字簽名 ↓PKI原理 ↓PKI應(yīng)用與實(shí)驗(yàn) ↓案例分析 目錄對(duì)稱(chēng)加密技術(shù) ↓加密技術(shù)基本術(shù)語(yǔ)明文、密文 plaintext,cipher密鑰 key加密算法、解密算法 encryption,decryption密碼分析(攻擊者行為)密碼算法vs.密碼協(xié)議 原理vs.標(biāo)準(zhǔn)tocol cryptographic加密技術(shù)基本術(shù)語(yǔ)加密算法分兩類(lèi)對(duì)稱(chēng)加密算法 symmetriccryptography解密時(shí)使用和加密時(shí)相同的密鑰非對(duì)稱(chēng)加密算法 asymmetriccryptography >公鑰算法 public-keycryptography解密時(shí)使用不同的密鑰公鑰、私鑰加密算法分兩類(lèi)對(duì)稱(chēng)加密算法 symmetriccrypto對(duì)稱(chēng)密碼體制圖示對(duì)稱(chēng)加密對(duì)稱(chēng)密碼體制圖示對(duì)稱(chēng)加密對(duì)稱(chēng)加密的數(shù)學(xué)抽象 Alice加密 E(P,K)=C Bob解密
D(C,K)=P
1、Key只有A、B知道 2、函數(shù)E、D公開(kāi),且一般D=E對(duì)稱(chēng)加密的數(shù)學(xué)抽象 Alice加密安全性分類(lèi)無(wú)條件安全性即使攻擊者有無(wú)限的計(jì)算能力,也不能得出明文符合該特性的算法都?xì)w為one-timepad,不便實(shí)用有條件安全性/計(jì)算安全性假設(shè)攻擊者擁有的計(jì)算能力有限,則在合適的時(shí)間內(nèi)不能得到明文密碼學(xué)上主要考慮滿(mǎn)足該特性的算法安全性分類(lèi)無(wú)條件安全性對(duì)稱(chēng)加密算法的兩種形式分組密碼算法 blockcipher明文分塊叫分組,典型64或128bits(8/16字節(jié))每個(gè)分組使用相同的密鑰加密流密碼算法(序列密碼) streamcipher使用密鑰做為隨機(jī)數(shù)種子,用產(chǎn)生的偽隨機(jī)序列和明文序列XOR對(duì)稱(chēng)加密算法的兩種形式分組密碼算法 blockciphe常用的對(duì)稱(chēng)加密算法DES(Lucifer)第一代美國(guó)(國(guó)際)標(biāo)準(zhǔn),1970s~2000AES(Rijndael)第二代,2000+RC4非常流行的流密碼算法,靈活又快速I(mǎi)DEA、CAST、RC5/6、Blowfish/Twofish、常用的對(duì)稱(chēng)加密算法DES(Lucifer)DESLuciferbyFeistel,IBM分組64bits密鑰56bitsFeistel體制16輪常量S盒,8個(gè)小表FIPS-46DESLuciferbyFeistel,IBMDESOverviewDESOverview神秘的S盒(Substitutionbox)神秘的S盒(Substitutionbox)續(xù)續(xù)DES工作模式DES算法每次處理64位/8個(gè)字節(jié),如何用來(lái)加密大消息/文件?推薦的4種工作模式ECBCBCOFBCFBCTSCT
DES工作模式DES算法每次處理64位/8個(gè)字節(jié),如何用來(lái)加電子密碼本方式
ECB:ElectronicCodebook報(bào)文被順序分割分成8字節(jié)分組各個(gè)分組獨(dú)立加密,解密時(shí)需等齊整個(gè)分組必要的填充*優(yōu)點(diǎn)并行加密、隨機(jī)存取*缺點(diǎn)Padding相同的明文分組對(duì)應(yīng)著相同的密文分組,暴露了統(tǒng)計(jì)規(guī)律,也存在替換、竄改、亂序重排等威脅電子密碼本方式
ECB:ElectronicCodeboECB
ECB密碼分組鏈接方式
CBC:CipherBlockChaining明文分組被加密前先和前一個(gè)密文異或初始向量(initializationvector)被視為第0個(gè)密文 (IV不必保密,但必須一致)*優(yōu)點(diǎn)避免明密對(duì)應(yīng)還可以用做鑒別碼(authenticationcode)*缺點(diǎn)等待緩沖區(qū)湊足8字節(jié)分組,否則需padding不能并行加密、隨機(jī)存取密碼分組鏈接方式
CBC:CipherBlockChaCBC
CBC其他模式CFBOFBCTSCTR其他模式CFBCFB:CipherFeedback密碼反饋方式IV64bit,IV用Key加密得到RIV不必保密,但是必須相同明文s比特,與R的高位s比特XOR,得密文s比特s比特的密文同時(shí)從R的低位進(jìn)入,擠掉R的高位的s比特*優(yōu)點(diǎn)流密碼streamcipher也有校驗(yàn)的效果CFB:CipherFeedback密碼反饋方式CFB
CFBOFB:OutputFeedback輸出反饋方式(也是一種流方式應(yīng)用)重復(fù)加密初始向量IV,獲得密鑰流IV不必保密,但是雙方得一致明文與之XOR*優(yōu)點(diǎn)比特錯(cuò)誤不會(huì)擴(kuò)散(自同步,適合衛(wèi)星通信)*缺點(diǎn)正是優(yōu)點(diǎn)的反面OFB:OutputFeedback輸出反饋方式(也是一OFB
OFBCTR:CounterMode計(jì)數(shù)方式(也是一種流方式應(yīng)用,但是可以非順序存取)重復(fù)加密初始counter++,得密鑰流明文與之XOR優(yōu)點(diǎn)適合隨機(jī)存取*注意:Counter的初值須不能預(yù)測(cè)CTR:CounterMode計(jì)數(shù)方式(也是一種流方式應(yīng)CTR
CTRCBCRC5模式之CTS:CiphertextStealingMode
CN-1DecPNCNX+XCNDecPN-1+KCN-20KCBCRC5模式之CTS:CiphertextStealDES標(biāo)準(zhǔn)文檔FIPS46-3,DataEncryptionStandard(DES)/publications/fips/fips46-3/fips46-3.pdfDES實(shí)現(xiàn)OpenSSLMicrosoftCryptoAPIDES標(biāo)準(zhǔn)文檔FIPS46-3,DataEncrypDES應(yīng)用實(shí)例分析/etc/passwd|shadowusername:Npge08pfz4wuk:503:100:FN:/home/username:/bin/shchar*crypt(constchar*key,constchar*salt);DES應(yīng)用實(shí)例分析/etc/passwd|shadowZipcrackersampleAdvancedZIPPasswordRecoverystatistics:EncryptedZIP-file:sdjfks.zipTotalpasswords:2,091,362,752Totaltime:6m58s725msAveragespeed(passwords/s):4,994,597Passwordforthisfile:7uee23PasswordinHEX:377565653233ZipcrackersampleAdvancedZIPDES已不再安全使用窮舉密鑰攻擊,如果每秒能?chē)L試100萬(wàn)個(gè)密鑰(70s),則約需要1000年才能枚舉完所有2^56個(gè)密鑰。使用特制的專(zhuān)用硬件芯片,結(jié)合互聯(lián)網(wǎng)分布式計(jì)算,最快曾經(jīng)在1天內(nèi)攻擊成功。DES已不再安全使用窮舉密鑰攻擊,如果每秒能?chē)L試100萬(wàn)個(gè)密“DeepCrack”HardwareCrackerDevelopedbytheElectronicFrontierFoundationCost$80,000design$210,000materials(chips,boards,chassisetc)ChipbyAdvancedWirelessTechnologies40MHz/16cyclesperencryption=2.5millionkeys/s24searchunitsperchip,64chipsperboard,29boardsinto6cabinets90billionkeys/s,solvedRSA’sDES-IIIin22hoursJan18,199937,000searchunitsc.f.DistributedNet’s34billionkeys/s“DeepCrack”HardwareCrackerD3DES關(guān)于2DES關(guān)于3DES3DES關(guān)于2DESAES“Rijndael”分組128bits密鑰128bits(也可192/256)常量S盒使用有限域GF(2^8)構(gòu)造1+9+1輪FIPS-197AES“Rijndael”AESOverview
AESOverview1Round1RoundS-boxinAESx/y0123456789ABCDEF0637C777BF26B6FC53001672BFED7AB761CA82C97DFA5947F0ADD4A2AF9CA472C02B7FD9326363FF7CC34A5E5F171D83115304C723C31896059A071280E2EB27B275409832C1A1B6E5AA0523BD6B329E32F84553D100ED20FCB15B6ACBBE394A4C58CF6D0EFAAFB434D338545F9027F503C9FA8751A3408F929D38F5BCB6DA2110FFF3D28CD0C13EC5F974417C4A77E3D645D1973960814FDC222A908846EEB814DE5E0BDBAE0323A0A4906245CC2D3AC629195E479BE7C8376D8DD54EA96C56F4EA657AAE08CBA78252E1CA6B4C6E8DD741F4BBD8B8AD703EB5664803F60E613557B986C11D9EEE1F8981169D98E949B1E87E9CE5528DFF8CA1890DBFE6426841992D0FB054BB16S-boxinAESx/y01234S-boxinAES(逆)x/y0123456789ABCDEF052096AD53036A538BF40A39E81F3D7FB17CE339829B2FFF87348E4344C4DEE9CB2547B9432A6C2233DEE4C950B42FAC34E3082EA16628D924B2765BA2496D8BD125472F8F66486689816D4A45CCC5D65B69256C704850FDEDB9DA5E154657A78D9D84690D8AB008CBCD30AF7E45805B8B345067D02C1E8FCA3F0F02C1AFBD0301138A6B83A9111414F67DCEA97F2CFCEF0B4E673996AC7422E7AD3585E2F937E81C75DF6EA47F11A711D29C5896FB7620EAA18BE1BBFC563E4BC6D279209ADBC0FE78CD5AF4C1FDDA8338807C731B11210592780EC5FD60517FA919B54A0D2DE57A9F93C99CEFEA0E03B4DAE2AF5B0C8EBBB3C83539961F172B047EBA77D626E169146355210C7DS-boxinAES(逆)x/y012AES標(biāo)準(zhǔn)文檔AES-AdvancedEncryptionStandard-FIPSPUB197/publications/fips/fips197/fips-197.pdfAES實(shí)現(xiàn)OpenSSLMicrosoftCryptoAPIAES標(biāo)準(zhǔn)文檔AES-AdvancedEncrypti使用對(duì)稱(chēng)算法為傳輸而加密vs.為存儲(chǔ)而加密□
(0)考慮需求(1)選定算法(2)產(chǎn)生密鑰(2.1)自動(dòng)產(chǎn)生密鑰vs.從口令衍生密鑰 (3)遵循標(biāo)準(zhǔn),如PKCS#5使用對(duì)稱(chēng)算法為傳輸而加密vs.為存儲(chǔ)而加密對(duì)稱(chēng)密碼體制的缺陷使用對(duì)稱(chēng)算法時(shí),接收/解密方必須持有和發(fā)送/加密方一模一樣的密鑰把密鑰傳遞給接收方通常是困難的因?yàn)橹辽賯鬟f密鑰時(shí),不能使用和傳輸密文同樣的信道對(duì)稱(chēng)密碼體制的缺陷使用對(duì)稱(chēng)算法時(shí),接收/解密方必須持有和發(fā)送非對(duì)稱(chēng)加密1976年,Diffie和Hellman指明方向公鑰加密,私鑰解密非對(duì)稱(chēng)加密1976年,Diffie和Hellman指明方向Diffie-Hellman密鑰交換協(xié)議選取公開(kāi)參數(shù):大素?cái)?shù)q,Zq的生成元gA選擇隨機(jī)數(shù)Xa,B選擇隨機(jī)數(shù)Xb
A計(jì)算Ya=g^Xamodq,B計(jì)算Yb=g^Xbmodq交換Ya,YbA計(jì)算K=Y(jié)b^Xamodq,B計(jì)算K'=Y(jié)a^Xbmodq事實(shí)上,K=K'Diffie-Hellmankeyagreementisnotlimitedtonegotiatingakeysharedbyonlytwoparticipants.Diffie-Hellman密鑰交換協(xié)議選取公開(kāi)參數(shù):大素Diffie-Hellman密鑰協(xié)商標(biāo)準(zhǔn)文檔RFC-2631,2409/3526RFC2631Diffie-HellmanKeyAgreementMethodRFC2409TheInternetKeyExchange(IKE)RFC3526MoreModularExponential(MODP)Diffie-HellmangroupsforInternetKeyExchange(IKE)U.S.Patent4,200,770,nowexpired,describesthealgorithmandcreditsHellman,Diffie,andMerkleasinventors.Diffie-Hellman密鑰協(xié)商標(biāo)準(zhǔn)文檔RFC-2631RSA算法1977年,Rivest,
Shamir&Adleman提出基于大數(shù)分解難題解密n=pq是困難的公鑰密碼算法事實(shí)上的標(biāo)準(zhǔn),PKI的支柱RSA算法1977年,Rivest,Shamir&AdRSA加密算法找素?cái)?shù),典型選取兩個(gè)512bit的隨機(jī)素?cái)?shù)p,q計(jì)算模n=pq找ed≡1mod(p-1)(q-1)選取數(shù)e,用擴(kuò)展Euclid算法求數(shù)d公布公鑰(e,n),保密私鑰(d,n)加密明文分組m(被視為整數(shù)須小于n) c=memodn解密
m=cdmodnRSA加密算法找素?cái)?shù),典型選取兩個(gè)512bit的隨機(jī)素?cái)?shù)p,RSA加密解密計(jì)算實(shí)例選p=7,q=17則n=pq=119且φ(n)=(p-1)(q-1)=6×16=96取e=5則d=77(5×77=385=4×96+1≡1mod96)公鑰(5,119),私鑰(77,119)加密m=19則c=memodn=195mod119=66mod119解密c=66m=cdmodn=6677mod119=19mod119RSA加密解密計(jì)算實(shí)例選p=7,q=17關(guān)于大數(shù)的模冪乘:X^YmodZ關(guān)于提速與芯片計(jì)算a8%m 8次累乘:a×a×a×a×a×a×a×a%m 3次平方:((a2)2)2%m
進(jìn)一步:((a2%m)2%m)2%m再比如a47%m a47
=a32+8+4+2+1%m
=a32a8a4a2a1%m
=…關(guān)于大數(shù)的模冪乘:X^YmodZ關(guān)于提速與芯片RSA的安全性分解整數(shù):一般數(shù)域篩法 Foranordinarycomputer,thegeneralnumberfieldsieve(GNFS)isthebestpublishedalgorithmforlargen(morethanabout100digits).Forab-bitnumbern,itsrunningtimeis:RSA的安全性分解整數(shù):一般數(shù)域篩法PKCS#1,RFCRSA.comPKCS系列標(biāo)準(zhǔn)PKCS#1,關(guān)于RSA算法的工業(yè)規(guī)范密鑰產(chǎn)生、消息編碼加密/解密簽名/驗(yàn)證其他PKCS#RFC2313-PKCS#1:RSAEncryptionVersion1.5RFC2437-PKCS#1:RSACryptographySpecificationsVersion2.0RFC3447-PKCS#1:RSACryptographySpecificationsVersion2.1PKCS#1,RFCRSA.com其他公鑰加密算法兩個(gè)密碼算法依賴(lài)的數(shù)學(xué)難解問(wèn)題大數(shù)分解問(wèn)題:分解n=pq離散對(duì)數(shù)問(wèn)題:求解y=g^xmodp中的xDSA、ECDSA:FIPSPUB186-3:DigitalSignatureStandard其他公鑰加密算法兩個(gè)密碼算法依賴(lài)的數(shù)學(xué)難解問(wèn)題其他公鑰加密算法新方向:橢圓曲線(xiàn)密碼算法(ECC)以橢圓曲線(xiàn)上點(diǎn)的加法運(yùn)算為背景的離散對(duì)數(shù)問(wèn)題在達(dá)到相同安全強(qiáng)度的前提下,ECC速度快很多其他公鑰加密算法新方向:橢圓曲線(xiàn)密碼算法(ECC)混合密碼體制:使用公鑰傳遞會(huì)話(huà)密鑰公鑰算法太慢典型情況,對(duì)稱(chēng)算法比公鑰算法快1000倍只用來(lái)傳遞會(huì)話(huà)密鑰(假設(shè)A已經(jīng)有B的公鑰KeB)A發(fā)起和B的通信A產(chǎn)生會(huì)話(huà)密鑰Ks,并用KeB加密后傳給BB能用自己的私鑰KdB解開(kāi)其他人不會(huì)知道Ks使用Ks和對(duì)稱(chēng)算法處理批量數(shù)據(jù)混合密碼體制:使用公鑰傳遞會(huì)話(huà)密鑰公鑰算法太慢混合密碼體制應(yīng)用實(shí)例PKCS#5Password-BasedCryptographyStandardSSL/TLSPGP混合密碼體制應(yīng)用實(shí)例PKCS#5Password-Base消息認(rèn)證why?(此前一直討論加密)消息加密后可以抵抗竊聽(tīng)。因?yàn)闆](méi)有密鑰,攻擊者無(wú)法讀懂密文。但是密文仍可以被惡意篡改,而且接收方解密后未必一定能發(fā)現(xiàn)這種攻擊。? 問(wèn)題:對(duì)密文的篡改,能否一定被察覺(jué)?消息認(rèn)證why?(此前一直討論加密)密文不能提供完整性保護(hù)兩個(gè)例子 (1)解密后能發(fā)現(xiàn)異常 (2)解密后不能發(fā)現(xiàn)異常密文不能提供完整性保護(hù)兩個(gè)例子消息認(rèn)證&身份認(rèn)證認(rèn)證和加密是兩種不同的技術(shù)(服務(wù)),有的場(chǎng)合需要不加密需要保護(hù)完整性認(rèn)證技術(shù)涉及消息認(rèn)證和身份認(rèn)證兩個(gè)方面消息認(rèn)證:鑒別消息來(lái)源,保護(hù)消息的完整性身份認(rèn)證:提供身份真實(shí)性鑒別服務(wù)消息認(rèn)證&身份認(rèn)證認(rèn)證和加密是兩種不同的技術(shù)(服務(wù)),有消息認(rèn)證碼MAC認(rèn)證碼(MessageAuthenticationCode)離線(xiàn):表明消息是完整的(未被篡改)在線(xiàn):表明自己/對(duì)方是真實(shí)的(未被假冒)生成MAC也需要密鑰,有兩個(gè)思路產(chǎn)生基于加密的方法,比如CBD模式最后一個(gè)密文分組(FIPS-113)基于Hash函數(shù)的方法(HMAC)消息認(rèn)證碼MAC認(rèn)證碼(MessageAuthenticCBC-MAC:CBC模式最后一個(gè)分組把消息明文和CN一起傳送,以表明消息的真實(shí)性FIPSPUB113CBC-MAC:CBC模式最后一個(gè)分組把消息明文和CN一起傳HMAC從概念上講,HMAC可以這樣理解 HMAC=Hash(M||Key)引出Hash函數(shù)相關(guān)的標(biāo)準(zhǔn):HMAC,RFC-2104HMAC從概念上講,HMAC可以這樣理解Hash函數(shù)輸入任意長(zhǎng)度(或<2^64)報(bào)文輸出固定長(zhǎng)度n=128/160/224/256/384/512bits函數(shù)特性單向性質(zhì) 對(duì)給定的h,找x滿(mǎn)足H(x)=h是困難的弱抗碰撞特性 對(duì)于給定的y,找x滿(mǎn)足H(x)=H(y)是困難的強(qiáng)抗碰撞特性(生日攻擊) 找x和y滿(mǎn)足H(x)=H(y)是困難的Hash函數(shù)輸入任意長(zhǎng)度(或<2^64)報(bào)文常用的Hash函數(shù)MD5輸出128bitsSHA-0,F(xiàn)IPSPUB180SHA-1,F(xiàn)IPSPUB180-1輸出160bitsSHA-2輸出192/224/256/384/512bits常用的Hash函數(shù)MD5MD5OverviewRFC1321MD5OverviewMD5
MD5MD5crack2004年的國(guó)際密碼討論年會(huì)(CRYPTO)尾聲,王小云及其研究同工展示了MD5、SHA-0及其他相關(guān)雜湊函數(shù)的雜湊沖撞。所謂雜湊沖撞指兩個(gè)完全不同的訊息經(jīng)雜湊函數(shù)計(jì)算得出完全相同的雜湊值。根據(jù)鴿巢原理,以有長(zhǎng)度限制的雜湊函數(shù)計(jì)算沒(méi)有長(zhǎng)度限制的訊息是必然會(huì)有沖撞情況出現(xiàn)的。可是,一直以來(lái),電腦保安專(zhuān)家都認(rèn)為要任意制造出沖撞需時(shí)太長(zhǎng),在實(shí)際情況上不可能發(fā)生,而王小云等的發(fā)現(xiàn)可能會(huì)打破這個(gè)必然性。2005年2月,王小云與其同事提出SHA-1雜湊函數(shù)的雜湊沖撞。由于SHA-1雜湊函數(shù)被廣泛應(yīng)用于現(xiàn)今的主流電腦保安產(chǎn)品,其影響可想而知。王小云所提的雜湊沖撞算法只需少于269步驟,少于生日攻擊法(BirthdayAttack)所需的280步。同年8月,王小云、姚期智,以及姚期智妻子姚儲(chǔ)楓聯(lián)手于國(guó)際密碼討論年會(huì)提出SHA-1雜湊函數(shù)雜湊沖撞算法的改良版。此改良版使破解SHA-1時(shí)間縮短為263步。[1]MD5crack2004年的國(guó)際密碼討論年會(huì)(CRYPTOCollisionsintheMD5CollisionsintheMD5HMACHMAC(K,M)=
H[(K+⊕opad)|| H[(K+⊕ipad)||M]]HMACHMAC(K,M)=身份認(rèn)證:使用公鑰算法如果你已經(jīng)有他的公鑰Ke,則可鑒別他的身份取隨機(jī)秘密消息P加密
C
=E(P,Ke)把密文C交給所謂的”他”,請(qǐng)他來(lái)解密除非”他”擁有Kd,否則不能解開(kāi)
D(C,Kd)=P比較他解出的明文P是否正確如果他能正確解密,則”他”是真他身份認(rèn)證:使用公鑰算法如果你已經(jīng)有他的公鑰Ke,則可鑒別他的HMAC標(biāo)準(zhǔn)文檔FIPSPUB198-TheKeyed-HashMessageAuthenticationCode(HMAC)RFC2104-HMAC:Keyed-HashingforMessageAuthenticationHMAC標(biāo)準(zhǔn)文檔FIPSPUB198-TheKey(轉(zhuǎn)折)數(shù)字簽名加密抗偷窺,認(rèn)證抗篡改,以上都是人民聯(lián)手共同對(duì)付“敵我矛盾”的手段,現(xiàn)在是處理“人民內(nèi)部矛盾”的時(shí)候了“內(nèi)部矛盾”主要指抵賴(lài)拒絕承認(rèn)曾經(jīng)發(fā)出過(guò)某條消息拒絕承認(rèn)曾經(jīng)收到過(guò)內(nèi)部矛盾不能靠共享密鑰解決(轉(zhuǎn)折)數(shù)字簽名加密抗偷窺,手寫(xiě)簽名簽名的含義簽名者慎重表達(dá)認(rèn)可文件內(nèi)容的意向的行為主要形式手寫(xiě)簽名、簽章、手指紋印(其他生物技術(shù))特性不可偽造,特異性不可改變,能發(fā)現(xiàn)涂改、轉(zhuǎn)移意義或用途不可重用,日期和時(shí)間相關(guān)性不可抵賴(lài),能夠質(zhì)證可仲裁的,可做為法律證據(jù)手寫(xiě)簽名簽名的含義數(shù)字簽名:要適應(yīng)的新變化數(shù)字簽名 手寫(xiě)簽名數(shù)字文件 紙版文件 數(shù)字小文件 手寫(xiě)字(簽章)如何綁定? 同一頁(yè)紙關(guān)于掃描手寫(xiě)字跡、鼠標(biāo)手寫(xiě)No!數(shù)學(xué)支持:簽名函數(shù)數(shù)字簽名:要適應(yīng)的新變化數(shù)字簽名 手寫(xiě)簽名數(shù)字簽名/驗(yàn)證操作概念簽名驗(yàn)證簽名函數(shù)報(bào)文(大)報(bào)文簽名(小)秘密報(bào)文簽名驗(yàn)證函數(shù)身份是否數(shù)字簽名/驗(yàn)證操作概念簽名簽名函數(shù)報(bào)文(大)報(bào)文簽名(小)秘用私鑰運(yùn)算(加密)當(dāng)作簽名簽名:給定報(bào)文m,使用私鑰d產(chǎn)生簽名值s md=s驗(yàn)證:用公鑰e判斷(m,s)是否符合
se
=?m是否滿(mǎn)足簽名要求的特性不可偽造、不可改變因此抗抵賴(lài)用私鑰運(yùn)算(加密)當(dāng)作簽名簽名:給定報(bào)文m,使用私鑰d產(chǎn)生簽兩個(gè)重要問(wèn)題簽名過(guò)程(公鑰運(yùn)算)太慢啟用散列函數(shù),用散列值代表消息PKCS#1公鑰/私鑰的管理如何得到公鑰?如何讓人相信該公鑰的真實(shí)和正確?* 如何把公鑰和身份信息綁定m,h(m)dmodn兩個(gè)重要問(wèn)題簽名過(guò)程(公鑰運(yùn)算)太慢m,h(m)dmod如何發(fā)布公鑰臨時(shí)索要是靠不住的朋友之間(相互信任的人之間)傳播比如PGP在線(xiàn)中心:公開(kāi)目錄、離線(xiàn)中心:PKI如何發(fā)布公鑰臨時(shí)索要無(wú)中心方式當(dāng)要通信時(shí),臨時(shí)向?qū)Ψ剿饕涔€沒(méi)有先驗(yàn)知識(shí),不能確定對(duì)方的身份,不能提供鑒別特性只能用在不究身份時(shí)的加密,如萍水相逢的兩人之間的防偷聽(tīng)聊天朋友擴(kuò)散通過(guò)可信的朋友之間的輾轉(zhuǎn)交換PGP中即有此種公鑰交換機(jī)制朋友并不總可信問(wèn)題:相信閣下的人品,但是不相信閣下的智商無(wú)中心方式當(dāng)要通信時(shí),臨時(shí)向?qū)Ψ剿饕涔€在線(xiàn)中心:公開(kāi)目錄公開(kāi)的目錄服務(wù)目錄的維護(hù)得由信得過(guò)的機(jī)構(gòu)執(zhí)行每個(gè)用戶(hù)在目錄里有一項(xiàng){身份信息,其公鑰}面對(duì)面的審核和注冊(cè)可以更新或廢止提供網(wǎng)絡(luò)的訪(fǎng)問(wèn)手段,可公開(kāi)查詢(xún)目錄中心的安全負(fù)擔(dān)太重,也是性能瓶頸在線(xiàn)中心:公開(kāi)目錄公開(kāi)的目錄服務(wù)在線(xiàn)中心的一種設(shè)計(jì)有在線(xiàn)中心幫助的公鑰交換A請(qǐng)求中心給B的公鑰,帶時(shí)間戳中心用私鑰簽署的消息,包括:原始請(qǐng)求和時(shí)間戳,B的公鑰,A用B的公鑰加密:自己的身份IDa和會(huì)話(huà)標(biāo)識(shí)號(hào)N1B也如法取得A的公鑰B用A的公鑰加密:N1和N2A用B的公鑰加密N2,以最后確認(rèn)會(huì)話(huà)在線(xiàn)中心容易成為單點(diǎn)故障和性能瓶頸在線(xiàn)中心的一種設(shè)計(jì)有在線(xiàn)中心幫助的公鑰交換在線(xiàn)中心
在線(xiàn)中心離線(xiàn)中心:PKI/證書(shū)CertificateAuthenticationCA是受信任的權(quán)威機(jī)構(gòu),有一對(duì)公鑰私鑰。每個(gè)用戶(hù)自己產(chǎn)生一對(duì)公鑰和私鑰,并把公鑰提交給CA申請(qǐng)證書(shū)。CA以某種可靠的方式核對(duì)申請(qǐng)人的身份及其公鑰,并用自己的私鑰“簽發(fā)”證書(shū)。證書(shū)主要內(nèi)容:用戶(hù)公鑰,持有人和簽發(fā)人的信息,用途,有效期間,簽名等。證書(shū)在需要通信時(shí)臨時(shí)交換,并用CA的公鑰驗(yàn)證。有了經(jīng)CA簽名保證的用戶(hù)公鑰,則可進(jìn)行下一步的身份驗(yàn)證和交換會(huì)話(huà)密鑰等。離線(xiàn)中心:PKI/證書(shū)CertificateAuthentCA
CAPKI:信息安全的基礎(chǔ)設(shè)施密碼學(xué)在互聯(lián)網(wǎng)上的應(yīng)用主要體現(xiàn)為PKI。PKI的核心目的是公鑰的可信發(fā)布。PKI給出了以證書(shū)為載體的公鑰發(fā)布方法,以及進(jìn)一步做加密、認(rèn)證和數(shù)字簽名的規(guī)范。PKI系統(tǒng)中的關(guān)鍵角色是證書(shū)中心CA。在PKI的應(yīng)用過(guò)程中,必須結(jié)合使用加密算法、認(rèn)證算法、Hash及簽名算法等密碼學(xué)要素。PKI:信息安全的基礎(chǔ)設(shè)施密碼學(xué)在互聯(lián)網(wǎng)上的應(yīng)用主要體現(xiàn)為PPKIPKI的首要環(huán)節(jié)在于分發(fā)公鑰PKIPKI的首要環(huán)節(jié)在于分發(fā)公鑰證書(shū)中心CA(Certificateauthority)目的:可信地分發(fā)公鑰CA是一個(gè)受到各方信任的權(quán)威機(jī)關(guān)所謂可信第三方CA有自己的公鑰私鑰對(duì),其公鑰廣為所知CA的功能和職責(zé)是簽發(fā)證書(shū)證書(shū)中心CA(Certificateauthority)Certificate證書(shū)證書(shū)是一個(gè)帶有CA的數(shù)字簽名的文件。證書(shū)是用戶(hù)公鑰的載體和容器。證書(shū)的基本內(nèi)容公鑰持有人信息簽發(fā)人信息簽名其他輔助內(nèi)容Certificate證書(shū)證書(shū)是一個(gè)帶有CA的數(shù)字簽名的文證書(shū)的申請(qǐng)用戶(hù)自己產(chǎn)生公鑰私鑰對(duì)(或委托CA產(chǎn)生)用戶(hù)自己保密私鑰用戶(hù)提交公鑰到CA/RA,PKCS#10格式RegistrationAuthorityRA負(fù)責(zé)審核用戶(hù)的信息的真實(shí)性(收費(fèi))CA簽名,產(chǎn)生證書(shū)證書(shū)(連同CA的公鑰)返回用戶(hù)CA公鑰是以CA自簽名證書(shū)的形式存在目錄分發(fā)證書(shū)的申請(qǐng)用戶(hù)自己產(chǎn)生公鑰私鑰對(duì)(或委托CA產(chǎn)生)證書(shū)的格式版本序列號(hào)簽名算法標(biāo)識(shí) 其參數(shù)簽發(fā)者名字不早于,不遲于主題名(持有人名)算法標(biāo)識(shí) 其參數(shù) 公鑰簽發(fā)人標(biāo)識(shí)(重名)持有人標(biāo)識(shí)擴(kuò)展簽名算法 參數(shù) 簽名證書(shū)的格式版本證書(shū)的使用取得證書(shū)從公開(kāi)目錄獲得,或臨時(shí)交換判斷證書(shū)本身的有效性驗(yàn)證CA的簽名(需要用到CA的證書(shū)/公鑰)在離線(xiàn)協(xié)議中用公鑰加密傳遞會(huì)話(huà)密鑰在在線(xiàn)協(xié)議中進(jìn)一步判別對(duì)方是否持有對(duì)應(yīng)的私鑰然后通信證書(shū)的使用取得證書(shū)證書(shū)的撤銷(xiāo)在證書(shū)有效期內(nèi)需要提前作廢證書(shū)CA會(huì)定期簽發(fā)作廢證書(shū)黑名單(CRL)證書(shū)使用者需要經(jīng)常更新CRL即使證書(shū)本身合法有效,仍有可能在CRL中OCSP-OnlineCertificateStatusProtocol把證書(shū)有效性檢查工作推給了服務(wù)器,有利于小客戶(hù)端證書(shū)的撤銷(xiāo)在證書(shū)有效期內(nèi)需要提前作廢證書(shū)PKI技術(shù)標(biāo)準(zhǔn)與規(guī)范PKI技術(shù)標(biāo)準(zhǔn)與規(guī)范PKI擴(kuò)展與之外SPKIbyIETF(SimplePKI)mergedwithSDSI(SimpleDistributedSecurityInfrastructure)XKMS-XMLKeyManagementSpecificationXKISS,XKRSSXMLSignature,XMLEncryptionSAMLWebofTrust(PGP-like)"smallworldphenomenon"PKI擴(kuò)展與之外SPKIbyIETF(SimpleCA的運(yùn)營(yíng)電子簽名法、電子認(rèn)證服務(wù)管理辦法等CA運(yùn)營(yíng)公司資質(zhì)安保措施機(jī)房環(huán)境硬件環(huán)境軟件系統(tǒng)服務(wù)和管理規(guī)程CA的運(yùn)營(yíng)電子簽名法、電子認(rèn)證服務(wù)管理辦法等SDCA“aboutus”…,于2000年12月28日揭牌成立的為信息安全提供綜合服務(wù)的有限責(zé)任公司,是山東地區(qū)唯一從事跨部門(mén)、跨行業(yè)數(shù)字證書(shū)簽發(fā)的權(quán)威性認(rèn)證機(jī)構(gòu),又是山東地區(qū)數(shù)字證書(shū)安全認(rèn)證體系的建設(shè)與管理主體。$是信任服務(wù)和安全認(rèn)證服務(wù)的專(zhuān)業(yè)提供商,把建設(shè)互聯(lián)網(wǎng)安全信任有序的環(huán)境作為目標(biāo),保證交易方主體身份的真實(shí)性,為信息的保密性、完整性以及交易的不可抵賴(lài)性提供全面的服務(wù)。SDCA將為網(wǎng)絡(luò)安全和電子商務(wù)等網(wǎng)上作業(yè)提供信任服務(wù)。$為電子商務(wù)、電子政務(wù)、網(wǎng)上金融、網(wǎng)上證券、網(wǎng)上辦公等提供安全可靠的認(rèn)證和信任服務(wù),作為被信任的第三方,從四個(gè)方面保證交易的安全:1、信息傳輸中的機(jī)密性;2、信息的不可篡改;3、身份的認(rèn)證;4、交易的不可抵賴(lài)。$主要負(fù)責(zé)數(shù)字證書(shū)的申請(qǐng)、簽發(fā)、制作、認(rèn)證和管理,為個(gè)人、企事業(yè)單位、網(wǎng)站、軟件代碼等提供網(wǎng)上身份認(rèn)證、數(shù)字簽名、證書(shū)目錄查詢(xún)、電子公正、安全電子郵件、密鑰托管、企事業(yè)單位安全辦公、政府安全上網(wǎng)、CA建設(shè)和運(yùn)行咨詢(xún)等服務(wù)。SDCA“aboutus”…,于2000年12月28日揭牌CA間的互通層次式的CA體系橋模式的CA互認(rèn)證體系CA間的互通層次式的CA體系CA軟件項(xiàng)目和產(chǎn)品CAinOpenSSL,簡(jiǎn)陋,可用于開(kāi)發(fā)和測(cè)試CAinWindows,可用于企業(yè)環(huán)境簡(jiǎn)單應(yīng)用EJBCA,一個(gè)基于J2EE的CA項(xiàng)目OpenCA國(guó)內(nèi)外各安全公司的商業(yè)化產(chǎn)品各CA公司自己開(kāi)發(fā)或基于商業(yè)或/開(kāi)源產(chǎn)品修改增強(qiáng)的系統(tǒng)CA軟件項(xiàng)目和產(chǎn)品CAinOpenSSL,簡(jiǎn)陋,可用于開(kāi)應(yīng)用與實(shí)驗(yàn)CAinWindowsServerSSL:IIS+IE,HTTPS安全電子郵件:S/MIMEwithOutlookExpEFSinWindowsEJBCAPGPVPNPPTP/VPNinWindowsIPSec/VPNinIPv4/IPv6OpeVPN應(yīng)用與實(shí)驗(yàn)CAinWindowsServer實(shí)驗(yàn)環(huán)境介紹:Vmware實(shí)驗(yàn)環(huán)境介紹:VmwareCAinWindowsServer接下來(lái),現(xiàn)場(chǎng)實(shí)驗(yàn)或觀看實(shí)驗(yàn)過(guò)程的屏幕錄像CAinWindowsServer接下來(lái),現(xiàn)場(chǎng)實(shí)驗(yàn)CAinWindows2003Windowsserver2000/2003添加/配置CA組件CAinWindows2003WindowsservHTTP+SSL=HTTPS給IE發(fā)證給IIS發(fā)證HTTP+SSL=HTTPS給IE發(fā)證安全電子郵件S/MIMES/MIMEwithOutlookExp實(shí)驗(yàn)演示安全電子郵件S/MIMES/MIMEwithOutloEFSinWindows
EFSinWindowsEFS原理Windows為用戶(hù)產(chǎn)生一對(duì)RSA公鑰私鑰公鑰以證書(shū)形式存在,私鑰受口令保護(hù)加密文件時(shí),產(chǎn)生密鑰Key,使用對(duì)稱(chēng)算法(DES?)加密文件,而Key使用公鑰加密保護(hù)解密是用戶(hù)使用自己的私鑰(需提供口令)解密得到Key,再用Key解密得到明文文件。EFS原理Windows為用戶(hù)產(chǎn)生一對(duì)RSA公鑰私鑰備份EFS證書(shū)和私鑰如果重新安裝了Windows系統(tǒng),則先前使用EFS加密的文件和目錄將無(wú)法解密。為了能夠解密,必須事先備份好舊的Windows中的EFS證書(shū)及私鑰,并在重裝后導(dǎo)入舊的EFS證書(shū)及私鑰。關(guān)于備份員。備份EFS證書(shū)和私鑰如果重新安裝了Windows系統(tǒng),則先前EJBCA實(shí)驗(yàn)過(guò)程的屏幕錄像EJBCAisafullyfunctionalCertificateAuthority.BasedonJ2EEtechnologyitconstitutesarobust,highperformanceandcomponentbasedCA.Bothflexibleandplatformindependent,EJBCAcanbeusedstandaloneorintegratedinanyJ2EEapplication.EJBCAisanenterpriseclassPKI,meaningthatyoucanuseEJBCAtobuildacompletePKIinfrastructureforyourorganisation.Ifyouonlywanttoissueafewsinglecertificatesfortesting,thereareprobablyoptionsthatwillgetyoustartedquicker,butifyouwantaseriousPKIwerecommendEJBCA.EJBCA實(shí)驗(yàn)過(guò)程的屏幕錄像PGP課堂實(shí)驗(yàn)PrettyGoodPrivacyisacomputerprogramthatprovidescryptographicprivacyandauthentication.ItwasoriginallycreatedbyPhilipZimmermannin1991.PGPandothersimilarproductsfollowtheOpenPGPstandard(RFC4880)forencryptinganddecryptingdata.PGPencryptionusespublic-keycryptographyandincludesasystemwhichbindsthepublickeystoausername.ThefirstversionofthissystemwasgenerallyknownasaweboftrusttocontrastwiththeX.509systemwhichusesahierarchicalapproachbasedoncertificateauthorityandwhichwasaddedtoPGPimplementationslater.CurrentversionsofPGPencryptionincludebothalternativesthroughanautomatedkeymanagementserver.PGP課堂實(shí)驗(yàn)PGP對(duì)報(bào)文的操作
PGP對(duì)報(bào)文的操作案例學(xué)習(xí)先看一個(gè)短文Google(“加密的慘劇”)試用網(wǎng)上某些文件加密工具“值得一提的是它的加密速度極快,上百G的數(shù)據(jù)僅需1秒鐘完成。沒(méi)有大小限制。”分析和猜測(cè)其實(shí)現(xiàn)的思路和可能的缺陷案例學(xué)習(xí)先看一個(gè)短文案例分析360密盤(pán) 破解,至少需要十萬(wàn)年的時(shí)間案例分析360密盤(pán)案例分析高強(qiáng)度文件夾加密大師 “這種加密方式安全性極高,不僅僅是簡(jiǎn)單的文件夾隱藏文件隱藏。值得一提的是它的加密速度極快,上百G的數(shù)據(jù)僅需1秒鐘完成。沒(méi)有大小限制。”案例分析高強(qiáng)度文件夾加密大師實(shí)驗(yàn)指導(dǎo):磁盤(pán)/目錄/文件加密專(zhuān)題實(shí)驗(yàn)指導(dǎo):磁盤(pán)/目錄/文件加密專(zhuān)題VPNRRASinWindowsServerVPN撥號(hào)連接inWindowsXP實(shí)驗(yàn)使用證書(shū)的VPN撥號(hào)VPNRRASinWindowsServerOpenVPNOpenVPNwithcert橋接withOpenVPNbridge試驗(yàn)與演示OpenVPNQ&AQ&A應(yīng)用密碼學(xué)與PKI介紹linfb@
應(yīng)用密碼學(xué)與PKI介紹linfb@目錄對(duì)稱(chēng)加密技術(shù) ↓moreOP-MODE ↓公鑰密碼技術(shù) ↓認(rèn)證和Hash算法 ↓數(shù)字簽名 ↓PKI原理 ↓PKI應(yīng)用與實(shí)驗(yàn) ↓案例分析 目錄對(duì)稱(chēng)加密技術(shù) ↓加密技術(shù)基本術(shù)語(yǔ)明文、密文 plaintext,cipher密鑰 key加密算法、解密算法 encryption,decryption密碼分析(攻擊者行為)密碼算法vs.密碼協(xié)議 原理vs.標(biāo)準(zhǔn)tocol cryptographic加密技術(shù)基本術(shù)語(yǔ)加密算法分兩類(lèi)對(duì)稱(chēng)加密算法 symmetriccryptography解密時(shí)使用和加密時(shí)相同的密鑰非對(duì)稱(chēng)加密算法 asymmetriccryptography >公鑰算法 public-keycryptography解密時(shí)使用不同的密鑰公鑰、私鑰加密算法分兩類(lèi)對(duì)稱(chēng)加密算法 symmetriccrypto對(duì)稱(chēng)密碼體制圖示對(duì)稱(chēng)加密對(duì)稱(chēng)密碼體制圖示對(duì)稱(chēng)加密對(duì)稱(chēng)加密的數(shù)學(xué)抽象 Alice加密 E(P,K)=C Bob解密
D(C,K)=P
1、Key只有A、B知道 2、函數(shù)E、D公開(kāi),且一般D=E對(duì)稱(chēng)加密的數(shù)學(xué)抽象 Alice加密安全性分類(lèi)無(wú)條件安全性即使攻擊者有無(wú)限的計(jì)算能力,也不能得出明文符合該特性的算法都?xì)w為one-timepad,不便實(shí)用有條件安全性/計(jì)算安全性假設(shè)攻擊者擁有的計(jì)算能力有限,則在合適的時(shí)間內(nèi)不能得到明文密碼學(xué)上主要考慮滿(mǎn)足該特性的算法安全性分類(lèi)無(wú)條件安全性對(duì)稱(chēng)加密算法的兩種形式分組密碼算法 blockcipher明文分塊叫分組,典型64或128bits(8/16字節(jié))每個(gè)分組使用相同的密鑰加密流密碼算法(序列密碼) streamcipher使用密鑰做為隨機(jī)數(shù)種子,用產(chǎn)生的偽隨機(jī)序列和明文序列XOR對(duì)稱(chēng)加密算法的兩種形式分組密碼算法 blockciphe常用的對(duì)稱(chēng)加密算法DES(Lucifer)第一代美國(guó)(國(guó)際)標(biāo)準(zhǔn),1970s~2000AES(Rijndael)第二代,2000+RC4非常流行的流密碼算法,靈活又快速I(mǎi)DEA、CAST、RC5/6、Blowfish/Twofish、常用的對(duì)稱(chēng)加密算法DES(Lucifer)DESLuciferbyFeistel,IBM分組64bits密鑰56bitsFeistel體制16輪常量S盒,8個(gè)小表FIPS-46DESLuciferbyFeistel,IBMDESOverviewDESOverview神秘的S盒(Substitutionbox)神秘的S盒(Substitutionbox)續(xù)續(xù)DES工作模式DES算法每次處理64位/8個(gè)字節(jié),如何用來(lái)加密大消息/文件?推薦的4種工作模式ECBCBCOFBCFBCTSCT
DES工作模式DES算法每次處理64位/8個(gè)字節(jié),如何用來(lái)加電子密碼本方式
ECB:ElectronicCodebook報(bào)文被順序分割分成8字節(jié)分組各個(gè)分組獨(dú)立加密,解密時(shí)需等齊整個(gè)分組必要的填充*優(yōu)點(diǎn)并行加密、隨機(jī)存取*缺點(diǎn)Padding相同的明文分組對(duì)應(yīng)著相同的密文分組,暴露了統(tǒng)計(jì)規(guī)律,也存在替換、竄改、亂序重排等威脅電子密碼本方式
ECB:ElectronicCodeboECB
ECB密碼分組鏈接方式
CBC:CipherBlockChaining明文分組被加密前先和前一個(gè)密文異或初始向量(initializationvector)被視為第0個(gè)密文 (IV不必保密,但必須一致)*優(yōu)點(diǎn)避免明密對(duì)應(yīng)還可以用做鑒別碼(authenticationcode)*缺點(diǎn)等待緩沖區(qū)湊足8字節(jié)分組,否則需padding不能并行加密、隨機(jī)存取密碼分組鏈接方式
CBC:CipherBlockChaCBC
CBC其他模式CFBOFBCTSCTR其他模式CFBCFB:CipherFeedback密碼反饋方式IV64bit,IV用Key加密得到RIV不必保密,但是必須相同明文s比特,與R的高位s比特XOR,得密文s比特s比特的密文同時(shí)從R的低位進(jìn)入,擠掉R的高位的s比特*優(yōu)點(diǎn)流密碼streamcipher也有校驗(yàn)的效果CFB:CipherFeedback密碼反饋方式CFB
CFBOFB:OutputFeedback輸出反饋方式(也是一種流方式應(yīng)用)重復(fù)加密初始向量IV,獲得密鑰流IV不必保密,但是雙方得一致明文與之XOR*優(yōu)點(diǎn)比特錯(cuò)誤不會(huì)擴(kuò)散(自同步,適合衛(wèi)星通信)*缺點(diǎn)正是優(yōu)點(diǎn)的反面OFB:OutputFeedback輸出反饋方式(也是一OFB
OFBCTR:CounterMode計(jì)數(shù)方式(也是一種流方式應(yīng)用,但是可以非順序存取)重復(fù)加密初始counter++,得密鑰流明文與之XOR優(yōu)點(diǎn)適合隨機(jī)存取*注意:Counter的初值須不能預(yù)測(cè)CTR:CounterMode計(jì)數(shù)方式(也是一種流方式應(yīng)CTR
CTRCBCRC5模式之CTS:CiphertextStealingMode
CN-1DecPNCNX+XCNDecPN-1+KCN-20KCBCRC5模式之CTS:CiphertextStealDES標(biāo)準(zhǔn)文檔FIPS46-3,DataEncryptionStandard(DES)/publications/fips/fips46-3/fips46-3.pdfDES實(shí)現(xiàn)OpenSSLMicrosoftCryptoAPIDES標(biāo)準(zhǔn)文檔FIPS46-3,DataEncrypDES應(yīng)用實(shí)例分析/etc/passwd|shadowusername:Npge08pfz4wuk:503:100:FN:/home/username:/bin/shchar*crypt(constchar*key,constchar*salt);DES應(yīng)用實(shí)例分析/etc/passwd|shadowZipcrackersampleAdvancedZIPPasswordRecoverystatistics:EncryptedZIP-file:sdjfks.zipTotalpasswords:2,091,362,752Totaltime:6m58s725msAveragespeed(passwords/s):4,994,597Passwordforthisfile:7uee23PasswordinHEX:377565653233ZipcrackersampleAdvancedZIPDES已不再安全使用窮舉密鑰攻擊,如果每秒能?chē)L試100萬(wàn)個(gè)密鑰(70s),則約需要1000年才能枚舉完所有2^56個(gè)密鑰。使用特制的專(zhuān)用硬件芯片,結(jié)合互聯(lián)網(wǎng)分布式計(jì)算,最快曾經(jīng)在1天內(nèi)攻擊成功。DES已不再安全使用窮舉密鑰攻擊,如果每秒能?chē)L試100萬(wàn)個(gè)密“DeepCrack”HardwareCrackerDevelopedbytheElectronicFrontierFoundationCost$80,000design$210,000materials(chips,boards,chassisetc)ChipbyAdvancedWirelessTechnologies40MHz/16cyclesperencryption=2.5millionkeys/s24searchunitsperchip,64chipsperboard,29boardsinto6cabinets90billionkeys/s,solvedRSA’sDES-IIIin22hoursJan18,199937,000searchunitsc.f.DistributedNet’s34billionkeys/s“DeepCrack”HardwareCrackerD3DES關(guān)于2DES關(guān)于3DES3DES關(guān)于2DESAES“Rijndael”分組128bits密鑰128bits(也可192/256)常量S盒使用有限域GF(2^8)構(gòu)造1+9+1輪FIPS-197AES“Rijndael”AESOverview
AESOverview1Round1RoundS-boxinAESx/y0123456789ABCDEF0637C777BF26B6FC53001672BFED7AB761CA82C97DFA5947F0ADD4A2AF9CA472C02B7FD9326363FF7CC34A5E5F171D83115304C723C31896059A071280E2EB27B275409832C1A1B6E5AA0523BD6B329E32F84553D100ED20FCB15B6ACBBE394A4C58CF6D0EFAAFB434D338545F9027F503C9FA8751A3408F929D38F5BCB6DA2110FFF3D28CD0C13EC5F974417C4A77E3D645D1973960814FDC222A908846EEB814DE5E0BDBAE0323A0A4906245CC2D3AC629195E479BE7C8376D8DD54EA96C56F4EA657AAE08CBA78252E1CA6B4C6E8DD741F4BBD8B8AD703EB5664803F60E613557B986C11D9EEE1F8981169D98E949B1E87E9CE5528DFF8CA1890DBFE6426841992D0FB054BB16S-boxinAESx/y01234S-boxinAES(逆)x/y0123456789ABCDEF052096AD53036A538BF40A39E81F3D7FB17CE339829B2FFF87348E4344C4DEE9CB2547B9432A6C2233DEE4C950B42FAC34E3082EA16628D924B2765BA2496D8BD125472F8F66486689816D4A45CCC5D65B69256C704850FDEDB9DA5E154657A78D9D84690D8AB008CBCD30AF7E45805B8B345067D02C1E8FCA3F0F02C1AFBD0301138A6B83A9111414F67DCEA97F2CFCEF0B4E673996AC7422E7AD3585E2F937E81C75DF6EA47F11A711D29C5896FB7620EAA18BE1BBFC563E4BC6D279209ADBC0FE78CD5AF4C1FDDA8338807C731B11210592780EC5FD60517FA919B54A0D2DE57A9F93C99CEFEA0E03B4DAE2AF5B0C8EBBB3C83539961F172B047EBA77D626E169146355210C7DS-boxinAES(逆)x/y012AES標(biāo)準(zhǔn)文檔AES-AdvancedEncryptionStandard-FIPSPUB197/publications/fips/fips197/fips-197.pdfAES實(shí)現(xiàn)OpenSSLMicrosoftCryptoAPIAES標(biāo)準(zhǔn)文檔AES-AdvancedEncrypti使用對(duì)稱(chēng)算法為傳輸而加密vs.為存儲(chǔ)而加密□
(0)考慮需求(1)選定算法(2)產(chǎn)生密鑰(2.1)自動(dòng)產(chǎn)生密鑰vs.從口令衍生密鑰 (3)遵循標(biāo)準(zhǔn),如PKCS#5使用對(duì)稱(chēng)算法為傳輸而加密vs.為存儲(chǔ)而加密對(duì)稱(chēng)密碼體制的缺陷使用對(duì)稱(chēng)算法時(shí),接收/解密方必須持有和發(fā)送/加密方一模一樣的密鑰把密鑰傳遞給接收方通常是困難的因?yàn)橹辽賯鬟f密鑰時(shí),不能使用和傳輸密文同樣的信道對(duì)稱(chēng)密碼體制的缺陷使用對(duì)稱(chēng)算法時(shí),接收/解密方必須持有和發(fā)送非對(duì)稱(chēng)加密1976年,Diffie和Hellman指明方向公鑰加密,私鑰解密非對(duì)稱(chēng)加密1976年,Diffie和Hellman指明方向Diffie-Hellman密鑰交換協(xié)議選取公開(kāi)參數(shù):大素?cái)?shù)q,Zq的生成元gA選擇隨機(jī)數(shù)Xa,B選擇隨機(jī)數(shù)Xb
A計(jì)算Ya=g^Xamodq,B計(jì)算Yb=g^Xbmodq交換Ya,YbA計(jì)算K=Y(jié)b^Xamodq,B計(jì)算K'=Y(jié)a^Xbmodq事實(shí)上,K=K'Diffie-Hellmankeyagreementisnotlimitedtonegotiatingakeysharedbyonlytwoparticipants.Diffie-Hellman密鑰交換協(xié)議選取公開(kāi)參數(shù):大素Diffie-Hellman密鑰協(xié)商標(biāo)準(zhǔn)文檔RFC-2631,2409/3526RFC2631Diffie-HellmanKeyAgreementMethodRFC2409TheInternetKeyExchange(IKE)RFC3526MoreModularExponential(MODP)Diffie-HellmangroupsforInternetKeyExchange(IKE)U.S.Patent4,200,770,nowexpired,describesthealgorithmandcreditsHellman,Diffie,andMerkleasinventors.Diffie-Hellman密鑰協(xié)商標(biāo)準(zhǔn)文檔RFC-2631RSA算法1977年,Rivest,
Shamir&Adleman提出基于大數(shù)分解難題解密n=pq是困難的公鑰密碼算法事實(shí)上的標(biāo)準(zhǔn),PKI的支柱RSA算法1977年,Rivest,Shamir&AdRSA加密算法找素?cái)?shù),典型選取兩個(gè)512bit的隨機(jī)素?cái)?shù)p,q計(jì)算模n=pq找ed≡1mod(p-1)(q-1)選取數(shù)e,用擴(kuò)展Euclid算法求數(shù)d公布公鑰(e,n),保密私鑰(d,n)加密明文分組m(被視為整數(shù)須小于n) c=memodn解密
m=cdmodnRSA加密算法找素?cái)?shù),典型選取兩個(gè)512bit的隨機(jī)素?cái)?shù)p,RSA加密解密計(jì)算實(shí)例選p=7,q=17則n=pq=119且φ(n)=(p-1)(q-1)=6×16=96取e=5則d=77(5×77=385=4×96+1≡1mod96)公鑰(5,119),私鑰(77,119)加密m=19則c=memodn=195mod119=66mod119解密c=66m=cdmodn=6677mod119=19mod119RSA加密解密計(jì)算實(shí)例選p=7,q=17關(guān)于大數(shù)的模冪乘:X^YmodZ關(guān)于提速與芯片計(jì)算a8%m 8次累乘:a×a×a×a×a×a×a×a%m 3次平方:((a2)2)2%m
進(jìn)一步:((a2%m)2%m)2%m再比如a47%m a47
=a32+8+4+2+1%m
=a32a8a4a2a1%m
=…關(guān)于大數(shù)的模冪乘:X^YmodZ關(guān)于提速與芯片RSA的安全性分解整數(shù):一般數(shù)域篩法 Foranordinarycomputer,thegeneralnumberfieldsieve(GNFS)isthebestpublishedalgorithmforlargen(morethanabout100digits).Forab-bitnumbern,itsrunningtimeis:RSA的安全性分解整數(shù):一般數(shù)域篩法PKCS#1,RFCRSA.comPKCS系列標(biāo)準(zhǔn)PKCS#1,關(guān)于RSA算法的工業(yè)規(guī)范密鑰產(chǎn)生、消息編碼加密/解密簽名/驗(yàn)證其他PKCS#RFC2313-PKCS#1:RSAEncryptionVersion1.5RFC2437-PKCS#1:RSACryptographySpecificationsVersion2.0RFC3447-PKCS#1:RSACryptographySpecificationsVersion2.1PKCS#1,RFCRSA.com其他公鑰加密算法兩個(gè)密碼算法依賴(lài)的數(shù)學(xué)難解問(wèn)題大數(shù)分解問(wèn)題:分解n=pq離散對(duì)數(shù)問(wèn)題:求解y=g^xmodp中的xDSA、ECDSA:FIPSPUB186-3:DigitalSignatureStandard其他公鑰加密算法兩個(gè)密碼算法依賴(lài)的數(shù)學(xué)難解問(wèn)題其他公鑰加密算法新方向:橢圓曲線(xiàn)密碼算法(ECC)以橢圓曲線(xiàn)上點(diǎn)的加法運(yùn)算為背景的離散對(duì)數(shù)問(wèn)題在達(dá)到相同安全強(qiáng)度的前提下,ECC速度快很多其他公鑰加密算法新方向:橢圓曲線(xiàn)密碼算法(ECC)混合密碼體制:使用公鑰傳遞會(huì)話(huà)密鑰公鑰算法太慢典型情況,對(duì)稱(chēng)算法比公鑰算法快1000倍只用來(lái)傳遞會(huì)話(huà)密鑰(假設(shè)A已經(jīng)有B的公鑰KeB)A發(fā)起和B的通信A產(chǎn)生會(huì)話(huà)密鑰Ks,并用KeB加密后傳給BB能用自己的私鑰KdB解開(kāi)其他人不會(huì)知道Ks使用Ks和對(duì)稱(chēng)算法處理批量數(shù)據(jù)混合密碼體制:使用公鑰傳遞會(huì)話(huà)密鑰公鑰算法太慢混合密碼體制應(yīng)用實(shí)例PKCS#5Password-BasedCryptographyStandardSSL/TLSPGP混合密碼體制應(yīng)用實(shí)例PKCS#5Password-Base消息認(rèn)證why?(此前一直討論加密)消息加密后可以抵抗竊聽(tīng)。因?yàn)闆](méi)有密鑰,攻擊者無(wú)法讀懂密文。但是密文仍可以被惡意篡改,而且接收方解密后未必一定能發(fā)現(xiàn)這種攻擊。? 問(wèn)題:對(duì)密文的篡改,能否一定被察覺(jué)?消息認(rèn)證why?(此前一直討論加密)密文不能提供完整性保護(hù)兩個(gè)例子 (1)解密后能發(fā)現(xiàn)異常 (2)解密后不能發(fā)現(xiàn)異常密文不能提供完整性保護(hù)兩個(gè)例子消息認(rèn)證&身份認(rèn)證認(rèn)證和加密是兩種不同的技術(shù)(服務(wù)),有的場(chǎng)合需要不加密需要保護(hù)完整性認(rèn)證技術(shù)涉及消息認(rèn)證和身份認(rèn)證兩個(gè)方面消息認(rèn)證:鑒別消息來(lái)源,保護(hù)消息的完整性身份認(rèn)證:提供身份真實(shí)性鑒別服務(wù)消息認(rèn)證&身份認(rèn)證認(rèn)證和加密是兩種不同的技術(shù)(服務(wù)),有消息認(rèn)證碼MAC認(rèn)證碼(MessageAuthenticationCode)離線(xiàn):表明消息是完整的(未被篡改)在線(xiàn):表明自己/對(duì)方是真實(shí)的(未被假冒)生成MAC也需要密鑰,有兩個(gè)思路產(chǎn)生基于加密的方法,比如CBD模式最后一個(gè)密文分組(FIPS-113)基于Hash函數(shù)的方法(HMAC)消息認(rèn)證碼MAC認(rèn)證碼(MessageAuthenticCBC-MAC:CBC模式最后一個(gè)分組把消息明文和CN一起傳送,以表明消息的真實(shí)性FIPSPUB113CBC-MAC:CBC模式最后一個(gè)分組把消息明文和CN一起傳HMAC從概念上講,HMAC可以這樣理解 HMAC=Hash(M||Key)引出Hash函數(shù)相關(guān)的標(biāo)準(zhǔn):HMAC,RFC-2104HMAC從概念上講,HMAC可以這樣理
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年阜陽(yáng)道路旅客運(yùn)輸知識(shí)考試題庫(kù)
- 2024年安徽省高考化學(xué)試卷(含答案解析)
- 舞蹈生個(gè)人實(shí)習(xí)總結(jié)
- 老同學(xué)群發(fā)言稿范文8篇
- 【+高++中語(yǔ)文】《小二黑結(jié)婚(節(jié)選)》課件++統(tǒng)編版高中語(yǔ)文選擇性必修中冊(cè)
- 數(shù)學(xué)課件 大學(xué)
- 新員工入職前安全培訓(xùn)試題含答案
- 各個(gè)班組安全培訓(xùn)試題答案研優(yōu)卷
- 新員工入職安全培訓(xùn)試題及答案(名校卷)
- 公司安全管理員安全培訓(xùn)試題附解析答案
- MOOC 實(shí)驗(yàn)室安全學(xué)-武漢理工大學(xué) 中國(guó)大學(xué)慕課答案
- MOOC 模擬電子電路-杭州電子科技大學(xué) 中國(guó)大學(xué)慕課答案
- 數(shù)學(xué)四年級(jí)上冊(cè)口算題200道
- MOOC 近世代數(shù)-南京大學(xué) 中國(guó)大學(xué)慕課答案
- MOOC 高等數(shù)學(xué)(上)-西北工業(yè)大學(xué) 中國(guó)大學(xué)慕課答案
- 無(wú)人機(jī)測(cè)試與評(píng)估標(biāo)準(zhǔn)
- 電力工業(yè)發(fā)展介紹
- 碧桂園的財(cái)務(wù)風(fēng)險(xiǎn)分析與防范措施
- 《老年社會(huì)工作》課件-老年社會(huì)生活相關(guān)理論及應(yīng)用
- (高清版)WST 813-2023 手術(shù)部位標(biāo)識(shí)標(biāo)準(zhǔn)
- 微型德育課《對(duì)垃圾食品說(shuō)不》
評(píng)論
0/150
提交評(píng)論