導航:首頁 > 文檔加密 > 數據結構中的加密演算法

數據結構中的加密演算法

發布時間:2024-10-09 15:11:16

『壹』 對稱加密演算法的加密演算法主要有哪些

1、3DES演算法

3DES(即Triple DES)是DES向AES過渡的加密演算法(1999年,NIST將3-DES指定為過渡的加密標准),加密演算法,其具體實現如下:設Ek()和Dk()代表DES演算法的加密和解密過程,K代表DES演算法使用的密鑰,M代表明文,C代表密文,這樣:

3DES加密過程為:C=Ek3(Dk2(Ek1(M)))

3DES解密過程為:M=Dk1(EK2(Dk3(C)))

2、Blowfish演算法

BlowFish演算法用來加密64Bit長度的字元串。

BlowFish演算法使用兩個「盒」——unsignedlongpbox[18]和unsignedlongsbox[4,256]。

BlowFish演算法中,有一個核心加密函數:BF_En(後文詳細介紹)。該函數輸入64位信息,運算後,以64位密文的形式輸出。用BlowFish演算法加密信息,需要兩個過程:密鑰預處理和信息加密。

分別說明如下:

密鑰預處理:

BlowFish演算法的源密鑰——pbox和sbox是固定的。我們要加密一個信息,需要自己選擇一個key,用這個key對pbox和sbox進行變換,得到下一步信息加密所要用的key_pbox和key_sbox。具體的變化演算法如下:

1)用sbox填充key_sbox

2)用自己選擇的key8個一組地去異或pbox,用異或的結果填充key_pbox。key可以循環使用。

比如說:選的key是"abcdefghijklmn"。則異或過程為:

key_pbox[0]=pbox[0]abcdefgh;

key_pbox[1]=pbox[1]ijklmnab;

…………

…………

如此循環,直到key_pbox填充完畢。

3)用BF_En加密一個全0的64位信息,用輸出的結果替換key_pbox[0]和key_pbox[1],i=0;

4)用BF_En加密替換後的key_pbox,key_pbox[i+1],用輸出替代key_pbox[i+2]和key_pbox[i+3];

5)i+2,繼續第4步,直到key_pbox全部被替換;

6)用key_pbox[16]和key_pbox[17]做首次輸入(相當於上面的全0的輸入),用類似的方法,替換key_sbox信息加密。

信息加密就是用函數把待加密信息x分成32位的兩部分:xL,xRBF_En對輸入信息進行變換。

3、RC5演算法

RC5是種比較新的演算法,Rivest設計了RC5的一種特殊的實現方式,因此RC5演算法有一個面向字的結構:RC5-w/r/b,這里w是字長其值可以是16、32或64對於不同的字長明文和密文塊的分組長度為2w位,r是加密輪數,b是密鑰位元組長度。

(1)數據結構中的加密演算法擴展閱讀:

普遍而言,有3個獨立密鑰的3DES(密鑰選項1)的密鑰長度為168位(三個56位的DES密鑰),但由於中途相遇攻擊,它的有效安全性僅為112位。密鑰選項2將密鑰長度縮短到了112位,但該選項對特定的選擇明文攻擊和已知明文攻擊的強度較弱,因此NIST認定它只有80位的安全性。

對密鑰選項1的已知最佳攻擊需要約2組已知明文,2部,2次DES加密以及2位內存(該論文提到了時間和內存的其它分配方案)。

這在現在是不現實的,因此NIST認為密鑰選項1可以使用到2030年。若攻擊者試圖在一些可能的(而不是全部的)密鑰中找到正確的,有一種在內存效率上較高的攻擊方法可以用每個密鑰對應的少數選擇明文和約2次加密操作找到2個目標密鑰中的一個。

『貳』 急求!!「1024位的RSA 公開密鑰加密演算法 」數據結構課程設計!高手解答啊!!

[我是不是復制粘貼的,我認真寫的,你也認真看下就懂了]
我寫的這個淺顯易懂,看看你就明白了。舉得有例子。

RSA演算法舉例說明
http://hi..com/lsgo/blog/item/5fd0da24d495666834a80fb8.html

空間裡面好像還有演算法

知道裡面剛才回答了另個朋友的問題帖出來給你看看
http://..com/question/91261774.html?si=2
題目:用RSA演算法加密時,已經公鑰是(e=7,n=20),私鑰是(e=3,n=20),用公鑰對消息M=3加密,得到的密文是_____?
給出詳細過程。 謝謝!
答:
你所說的:
n=20
d=7 公鑰
e=3 私鑰
對M=3 進行加密
M'=M^d%n (M的d次方,然後除以n取余數)
M'=3^7%20=2187%20=7 加密後等於7

對M'=7進行解密
M=M'^e%n=7^3%20=343%20=3 解密後又變成3了

你取的兩個素數太小了,所以n太小根本起不了作用。至少要取1024位的數字

『叄』 常用的加密演算法有哪些

對稱密鑰加密

對稱密鑰加密 Symmetric Key Algorithm 又稱為對稱加密、私鑰加密、共享密鑰加密:這類演算法在加密和解密時使用相同的密鑰,或是使用兩個可以簡單的相互推算的密鑰,對稱加密的速度一般都很快。

閱讀全文

與數據結構中的加密演算法相關的資料

熱點內容
和平精英怎麼改國際服的伺服器 瀏覽:944
手機存儲卡128是哪個文件夾 瀏覽:180
安北解壓包密碼 瀏覽:649
阿里巴巴app靜態編譯 瀏覽:723
命令世界怎麼獲得迷你幣 瀏覽:649
應用加密重新安裝 瀏覽:83
抖音抖幣充值源碼 瀏覽:734
我的世界如何去更新伺服器 瀏覽:73
單片機視頻模塊 瀏覽:996
程序員的圖中的亮點在哪裡 瀏覽:657
蘋果手機伺服器地址是什麼意思 瀏覽:461
雲伺服器裡面怎麼升級d盤 瀏覽:546
java文件存入資料庫 瀏覽:89
雷特字幕出現未發現加密鎖 瀏覽:768
java線程監視 瀏覽:947
無聊的程序員日常 瀏覽:803
雲伺服器ecs項目 瀏覽:23
健康證伺服器地址是什麼意思 瀏覽:196
惠普筆記本提取壓縮軟體 瀏覽:773
市政管網水準點加密 瀏覽:951