最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

加密算法

2023-08-06 20:39 作者:bili_58762211140  | 我要投稿

加密算法

是旅居瑞士中國青年學(xué)者來學(xué)嘉和著名密碼專家J.Massey于1990年提出的。它在1990年正式公布并在以后得到增強(qiáng)。這種算法是在DES算法的基礎(chǔ)上發(fā)展出來的,類似于三重DES,和DES一樣IDEA也是屬于對稱密鑰算法。發(fā)展IDEA也是因為感到DES具有密鑰太短等缺點(diǎn),已經(jīng)過時。IDEA的密鑰為128位,這么長的密鑰在今后若干年內(nèi)應(yīng)該是安全的。

類似于DES,IDEA算法也是一種數(shù)據(jù)塊加密算法,它設(shè)計了一系列加密輪次,每輪加密都使用從完整的加密密鑰中生成的一個子密鑰。與DES的不同處在于,它采用軟件實(shí)現(xiàn)和采用硬件實(shí)現(xiàn)同樣快速。

由于IDEA是在美國之外提出并發(fā)展起來的,避開了美國法律上對加密技術(shù)的諸多限制,因此,有關(guān)IDEA算法和實(shí)現(xiàn)技術(shù)的書籍都可以自由出版和交流,可極大地促進(jìn)IDEA的發(fā)展和完善。

IDEA曾今也是AES算法標(biāo)準(zhǔn)的主要競爭者,其安全性已經(jīng)在國際密碼年會上被證明。

在PGP(pretty good privacy)中,IDEA算法被采用。

64-位數(shù)據(jù)分組被分成4個16-位子分組:xl,X2,x3,x4。這4個子分組成為算法的第一輪的輸入,總共有8輪。在每一輪中,這4個子分組相列相異或,相加,相乘,且與6個16-位子密鑰相異或,相加,相乘。在輪與輪間,第二和第:個子分組交換。最后在輸出變換中4個子分組與4個子密鑰進(jìn)行運(yùn)算。

在每一輪中,執(zhí)行的順序如下:(以下表述中的相加指的是兩個數(shù)mod 2^256 相加,例如:(a + b) mod p,其結(jié)果是a+b算術(shù)和除以p的余數(shù),也就是說,(a+b) = kp +r,則 (a+b) mod p =r,又例如對于下列表述中的“(2)X2和第二個子密鑰相加”就是指用X2與第二個子密鑰的和除以2^16(即65536)后的余數(shù)。對于以下表述中的相乘,指的是:(a × b) mod p,其結(jié)果是 a × b算術(shù)乘法除以p的余數(shù),又例如對于下列表述中的“(1)X1和第一個子密鑰相乘。”就是指用X1和第一個子密鑰相乘后的積除于(2^16+1)(即65537)后的余數(shù)。異或指的是不進(jìn)位加法。)

(1)X1和第一個子密鑰相乘。

(2)X2和第二個子密鑰相加。

(3)X3和第三個子密鑰相加。

(4)X4和第四個子密鑰相乘。

(5)將第(1)步和第(3)步的結(jié)果相異或?!?/p>

(6)將第(2)步和第(4)步的結(jié)果相異或。

(7)將第(5)步的結(jié)果與第五個子密鑰相乘。

(8)將第(6)步和第(7)步的結(jié)果相加。

(9)將第(8)步的結(jié)果與第六個子密鑰相乘。

(10)將第(7)步和第(9)步的結(jié)果相加。

(11)將第(1)步和第(9)步的結(jié)果相異或。

(12)將第(3)步和第(9)步的結(jié)果相異或。

(13)將第(2)步和第(10)步的結(jié)果相異或。

(14)將第(4)步和第(10)步的結(jié)果相異或。

每一輪的輸出是第(11)、(12)、(13)和(14) 步的結(jié)果形成的4個子分組。將中間兩個分組分組交換(最后一輪除外)后,即為下一輪的輸入。

經(jīng)過8輪運(yùn)算之后,有一個最終的輸出變換:

(1) X1和第一個子密鑰相乘。

(2) X2和第二個子密鑰相加。

(3) X3和第三個子密鑰相加。

(4) X4和第四個子密鑰相乘。

最后,這4個子分組重新連接到一起產(chǎn)生密文。

產(chǎn)生子密鑰也很容易。這個算法用了52個子密鑰(8輪中的每一輪需要6個,其他4個用與輸出變換)。首先,將128-位密鑰分成8個16-位子密鑰。這些是算法的第一批8個子密鑰(第一輪六個,第二輪的頭兩個)。然后,密鑰向左環(huán)移25位后再分成8個子密鑰。開始4個用在第二輪,后面4個用在第三輪。密鑰再次向左環(huán)移25位產(chǎn)生另外8個子密鑰,如此進(jìn)行D算法結(jié)束。

解密過程基本上一樣,只是子密鑰需要求逆且有些微小差別,解密子密鑰要么是加密子密鑰的加法逆要么是乘法逆。(對IDEA而言,對于模256十1乘,全0子分組用256=-l來表示,因此0的乘法逆是0)。計算子密鑰要花點(diǎn)時間,但對每一個解密密鑰,只需做一次。

關(guān)于IDEA中運(yùn)用的很多概念,需要參考數(shù)論中的知識,如有疑問,可以參考以下資料:計算機(jī)密碼學(xué)(盧開澄著清華大學(xué)出版社出版),計算機(jī)密碼學(xué)及其應(yīng)用,初等數(shù)論,數(shù)論導(dǎo)引(華羅庚著)等。關(guān)于IDEA運(yùn)用的數(shù)學(xué)原理,均可在以上資料中獲得答案。

加密算法的評論 (共 條)

分享到微博請遵守國家法律
澄迈县| 忻城县| 会宁县| 谢通门县| 同心县| 文成县| 奉贤区| 忻城县| 兴化市| 岫岩| 丰城市| 漳浦县| 绵竹市| 塘沽区| 竹溪县| 扎赉特旗| 大名县| 凌云县| 万源市| 克山县| 凌源市| 铜陵市| 锡林郭勒盟| 绥芬河市| 大冶市| 兴城市| 伊宁县| 怀仁县| 阿克苏市| 金湖县| 于田县| 平乡县| 增城市| 育儿| 德格县| 巩留县| 宜城市| 星座| 泉州市| 乐至县| 阳高县|