密码学Cryptology
筆記修正記錄】2022.1.23
密碼學(xué)概述】密碼體制分為對(duì)稱和非對(duì)稱。
密碼學(xué)中的基本術(shù)語(yǔ)
明文:M 或 P,即plaintext 。
密文:C。加密算法:E 。
對(duì)稱加密算法:SE。 對(duì)稱解密算法:SD。解密算法:D 。
A的公鑰:PKA 。 A的私鑰:SKA。
對(duì)稱密鑰:K 。
密碼體制:由明文空間SM、密文空間Sc、密鑰空間SK、加密算法E和解密算法D構(gòu)成的五元組{SM、Sc、SK、E、D},稱為密碼體制。
密碼系統(tǒng)(Cryptosystem):用于加密和解密的系統(tǒng)。加密時(shí),系統(tǒng)輸入明文和加密密鑰,加密變換后,輸出密文;解密時(shí),系統(tǒng)輸入密文和解密密鑰,解密變換后,輸出明文。一個(gè)密碼系統(tǒng)由信源、加密變換、解密變換、信宿和攻擊者組成。
同余
同余,概述】“同余”是數(shù)論中的重要概念。給定一個(gè)正整數(shù)m,如果兩個(gè)整數(shù)a和b滿足a-b能被m整除,即m|(a-b),那么就稱整數(shù)a與b對(duì)模m同余,記作a≡b(mod m)。對(duì)模m同余是整數(shù)的一個(gè)等價(jià)關(guān)系。例如26≡2(mod 12)。
a≡b (mod m),讀作:a同余于b模m,或讀作a與b對(duì)模m同余,
由同余式子得到的性質(zhì)】:(1)若a≡0(mod m),則m|a;(2)a≡b(mod m)等價(jià)于a與b分別用m去除,余數(shù)相同。
對(duì)稱密碼symmetric encryption
什么是對(duì)稱密碼】:也稱單鑰密碼體制。加密密鑰ke等于解密密鑰kd,通信雙方通信前,商定一個(gè)共享密鑰,使用相同的加密和解密密鑰,必須保護(hù)好。
如何保護(hù)好對(duì)稱密碼體制的密鑰】
對(duì)稱密碼體制分類為】:①序列密碼算法即流密碼②分組密碼算法
典型的對(duì)稱密碼】:DES,AES,SM4
對(duì)稱加密過(guò)程】:
對(duì)稱密碼存在的問(wèn)題/缺點(diǎn)】:密鑰分發(fā)和保護(hù)困難。
對(duì)稱密碼體制優(yōu)點(diǎn)】:加密解密簡(jiǎn)單,速度快;
對(duì)稱密鑰分布式分配典型算法】:Diffie-Hellman密鑰交換算法。Diffie-Hellman密鑰交換算法存在的不足:…中間人攻擊。
DES】
DES:分組長(zhǎng)度64bit,密鑰長(zhǎng)度56bit
非對(duì)稱密碼(即公鑰密碼)
什么是非對(duì)稱密碼】:是雙鑰,即公鑰和私鑰,即加密和解密密鑰是不同的。加密解密算法是公開(kāi)的。加密密鑰是公開(kāi)的(稱作公鑰),解密密鑰是保密的(稱作私鑰)
典型的非對(duì)稱】:RSA,橢圓曲線
非對(duì)稱密碼優(yōu)點(diǎn)】:密鑰分發(fā)相對(duì)容易,密鑰管理簡(jiǎn)單,可以有效地實(shí)現(xiàn)數(shù)字簽名。
如何證明這個(gè)公鑰就是這個(gè)用戶的?】權(quán)威的認(rèn)證中心(CA)通過(guò)數(shù)字證書(shū)。
非對(duì)稱密碼的局限性】
慢,加密解密復(fù)雜。
對(duì)于公鑰密碼,任何人都可以進(jìn)行公鑰操作,即任何人都可以加密消息,任何人都可以驗(yàn)證簽名。而且公鑰還有可能被掉包。
對(duì)稱密碼體制和非對(duì)稱密碼體制結(jié)合使用】:用對(duì)稱密碼的密鑰對(duì)數(shù)據(jù)信息加密,用非對(duì)稱加密的公鑰對(duì)對(duì)稱加密的密鑰加密,將兩者放一起送給接收方,接收方用非對(duì)稱加密的私鑰解開(kāi)后得到:對(duì)稱加密的密鑰,再用這個(gè)對(duì)稱加密的密鑰解開(kāi)原數(shù)據(jù)文件。(此方法沒(méi)有考慮身份鑒別)
雜
AES。AES密鑰長(zhǎng)度。
RSA加密算法。
RSA加密算法是什么/簡(jiǎn)介:無(wú)法根據(jù)公鑰推出私鑰。公鑰和私鑰不同。可靠性基于大數(shù)因子分解困難的事實(shí)
dai:RSA公鑰密碼體制中,假定公鑰為 e,n =(13,35),求私鑰d是。參考http://www.cnitpm.com/pm1/41635.html
會(huì)話密鑰是只用在一個(gè)會(huì)話中的密鑰,用完之后就廢棄不用了,而主密鑰是固定的密鑰,一直重復(fù)使用的密鑰。
Hash函數(shù)
Hash函數(shù),SK_cache】: hash函數(shù)就等于報(bào)文摘要算法?
hash函數(shù),是什么】:哈希函數(shù)又稱消息摘要函數(shù),散列函數(shù)或雜湊函數(shù),。將任意長(zhǎng)度的輸入(即明文)映射成某一固定長(zhǎng)度的輸出(即密文),該輸出被稱為哈希值or散列值or消息摘要or數(shù)字指紋。記為:h=H(M)Hash函數(shù)不需要密鑰。
Hash函數(shù)性質(zhì)】:輸入任意長(zhǎng)度,輸出較短定長(zhǎng)值。敏感性,明文稍微修改,哈希值發(fā)生較大變化。單向性不可逆性,即哈希函數(shù)計(jì)算是單向的,只有加密沒(méi)有解密。抗碰撞性:理想情況下,保證對(duì)于一個(gè)消息M及其Hash值,無(wú)法找到一個(gè)替代消息M’ ,使它的Hash值與給定的Hash值相同。
Hash函數(shù)抗碰撞性】:hash函數(shù)抗碰撞性包括抗弱碰撞性和抗強(qiáng)碰撞性。
常用的Hash算法】:MD5,SHA系列,SM3。MD5的摘要長(zhǎng)度為128bit。SHA-1的摘要長(zhǎng)度為160位bit。
Hash函數(shù)應(yīng)用】具體如何應(yīng)用:dai(為什么進(jìn)行hash就能實(shí)現(xiàn)這些功能) 校驗(yàn)數(shù)據(jù)完整性;?保護(hù)用戶口令;?數(shù)字簽名,消息認(rèn)證
歐幾里得算法
歐幾里得算法,概述簡(jiǎn)介】歐幾里得算法(這涉及數(shù)論相關(guān)知識(shí)),歐幾里得算法又稱輾轉(zhuǎn)相除法,是指用于計(jì)算兩個(gè)非負(fù)整數(shù)a,b的最大公約數(shù)。計(jì)算公式gcd(a,b) = gcd(b,a mod b)。
用歐幾里得算法求最大公約數(shù)過(guò)程】:通過(guò)計(jì)算公式gcd(a,b) = gcd(b,a mod b),以除數(shù)和余數(shù)反復(fù)做除法運(yùn)算,當(dāng)余數(shù)為 0 時(shí),取當(dāng)前算式除數(shù)為最大公約數(shù),所以就得出了 最初兩數(shù)的最大公約數(shù) 。
證明歐幾里得算法】。daiBD
廣義歐幾里得算法(即擴(kuò)展歐幾里得算法extend_gcd)】
- 廣義歐幾里得算法是什么/定義】:對(duì)于不完全為 0 的非負(fù)整數(shù) a,b,gcd(a,b)表示 a,b 的最大公約數(shù),必然存在兩個(gè)整數(shù)x,y ,使得 gcd(a,b)=ax+by。
- 廣義歐幾里得算法用途】: 廣義歐幾里得算法可用于RSA加密等領(lǐng)域。通過(guò)廣義歐幾里得算法求數(shù)A在模B下的逆元,參考https://article.itxueyuan.com/ZoGkvE
密碼學(xué),雜/倉(cāng)庫(kù)
好的密碼體制的標(biāo)準(zhǔn)。
會(huì)話密鑰是只用在一個(gè)會(huì)話中的密鑰,用完之后就廢棄不用了,而主密鑰是固定的密鑰,一直重復(fù)使用的密鑰。
MOD模】MOD,是一個(gè)數(shù)學(xué)運(yùn)算符號(hào),指取模運(yùn)算符,類似取余。a mod b=c,表明a除以b余數(shù)為c。
總結(jié)
以上是生活随笔為你收集整理的密码学Cryptology的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【单片机原理及应用】第一篇——单片机概述
- 下一篇: 张量分解在无线通信和MIMO雷达中的概述