請問以下對稱加密法的加密方法和解密方法是什麼

時間 2021-09-05 11:57:53

1樓:假的司馬

一、加密方法

一個加密系統s可以用數學符號描述如下:

s= 其中 :

p——明文空間,表示全體可能出現的明文集合,c——密文空間,表示全體可能出現的密文集合,k——金鑰空間,金鑰是加密演算法中的可變引數,e——加密演算法,由一些公式、法則或程式構成,d——解密演算法,它是e的逆。

當給定金鑰kîk時,各符號之間有如下關係:

c = ek(p), 對明文p加密後得到密文cp = dk(c) = dk(ek(p)), 對密文c解密後得明文p如用e-1 表示e的逆,d-1表示d的逆,則有:

ek = dk-1且dk = ek-1

因此,加密設計主要是確定e,d,k。

二、解密方法

1 實現金鑰的交換,在對稱加密演算法中有這樣一個問題,對方如何獲得金鑰,在這裡就可以通過公鑰演算法來實現。即用公鑰加密演算法對金鑰進行加密,再傳送給對方就ok了

2 數字簽名。加密可以使用公鑰/私鑰,相對應的就是使用私鑰/公鑰解密。因此若是傳送方使用自己的私鑰進行加密,則必須用傳送方公鑰進行解密,這樣就證明了傳送方的真實性,起到了防抵賴的作用。

2樓:小魚冬眠中

a加密演算法

一個加密系統s可以用數學符號描述如下:

s= 其中

p——明文空間,表示全體可能出現的明文集合,

c——密文空間,表示全體可能出現的密文集合,

k——金鑰空間,金鑰是加密演算法中的可變引數,

e——加密演算法,由一些公式、法則或程式構成,

d——解密演算法,它是e的逆。

當給定金鑰kîk時,各符號之間有如下關係:

c = ek(p), 對明文p加密後得到密文c

p = dk(c) = dk(ek(p)), 對密文c解密後得明文p

如用e-1 表示e的逆,d-1表示d的逆,則有:

ek = dk-1且dk = ek-1

因此,加密設計主要是確定e,d,k。

rsa是rivest、shamir和adleman提出來的基於數論非對稱性(公開鑰)加密演算法。大整數的素因子難分解是rsa演算法的基礎。

rsa在國外早已進入實用階段,已研製出多種高速的rsa的專用晶片。儘管rsa的許多特性並不十分理想,但迫於資訊保安的實際需要,許多重要的資訊系統還是採用rsa作為基礎加密機制。從rsa提出不久,我國有關部門就一直對它進行研究。

從應用的角度看,軟體實現的rsa已經開始用於計算機網路加密,用來完成金鑰分配、數字簽名等功能。

除了rsa之外,還有des(資料加密標準)。儘管des公開了其加密演算法並曾被美國列為「標準」,但很快被廢棄。加密技術又迴歸到「演算法保密」的傳統上。

對稱加密方法和公開金鑰演算法有什麼異同? 5

3樓:匿名使用者

對稱加密演算法

是應用較早的加密演算法,技術成熟。在對稱加密演算法中,資料發信方將明文(原始資料)和加密金鑰一起經過特殊加密演算法處理後,使其變成複雜的加密密文傳送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的金鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。

在對稱加密演算法中,使用的金鑰只有一個,發收信雙方都使用這個金鑰對資料進行加密和解密,這就要求解密方事先必須知道加密金鑰。對稱加密演算法的特點是演算法公開、計算量小、加密速度快、加密效率高。不足之處是,交易雙方都使用同樣鑰匙,安全性得不到保證。

此外,每對使用者每次使用對稱加密演算法時,都需要使用其他人不知道的惟一鑰匙,這會使得發收信雙方所擁有的鑰匙數量成幾何級數增長,金鑰管理成為使用者的負擔。對稱加密演算法在分散式網路系統上使用較為困難,主要是因為金鑰管理困難,使用成本較高。在計算機專網系統中廣泛使用的對稱加密演算法有des、idea和aes。

公開金鑰演算法

非對稱式加密就是加密和解密所使用的不是同一個金鑰,通常有兩個金鑰,稱為「公鑰」和「私鑰」,它們兩個必需配對使用,否則不能開啟加密檔案。這裡的「公鑰」是指可以對外公佈的,「私鑰」則不能,只能由持有人一個人知道。它的優越性就在這裡,因為對稱式的加密方法如果是在網路上傳輸加密檔案就很難把金鑰告訴對方,不管用什麼方法都有可能被別竊聽到。

而非對稱式的加密方法有兩個金鑰,且其中的「公鑰」是可以公開的,也就不怕別人知道,收件人解密時只要用自己的私鑰即可以,這樣就很好地避免了金鑰的傳輸安全性問題。

rsa是rivest、shamir和adleman提出來的基於數論非對稱性(公開鑰)加密演算法。大整數的素因子難分解是rsa演算法的基礎

4樓:

公開金鑰演算法是不對稱加密方法

加密方式有幾種?

5樓:末秋傳說

加密型別分來為兩種,對稱

源加密與非對稱加密,對

bai稱加du密雙方採用共同金鑰,(zhi當然dao這個金鑰是需要對外保密的),這裡講一下非對稱加密,這種加密方式存在兩個金鑰,金鑰 -- 一種是公共金鑰(正如其名,這是一個可以公開的金鑰值),一種是私人金鑰(對外保密)。 您傳送資訊給我們時,使用公共金鑰加密資訊。 一旦我們收到您的加密資訊,我們則使用私人金鑰破譯資訊密碼(被我們的公鑰加密的資訊,只有我們的唯一的私鑰可以解密,這樣,就在技術上保證了這封信只有我們才能解讀——因為別人沒有我們的私鑰)。

使用私人金鑰加密的資訊只能使用公共金鑰解密(這一功能應用與數字簽名領域,我的私鑰加密的資料,只有我的公鑰可以解讀,具體內容參考數字簽名的資訊)反之亦然,以確保您的資訊保安。

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

6樓:

1、3des演算法

3des(即triple des)是des向aes過渡的加密演算法(2023年,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是金鑰位元組長度。

7樓:e拍

主要有des演算法,3des演算法,tdea演算法,blowfish演算法,rc5演算法,idea演算法。

對稱加密演算法的特點是演算法公開、計算量小、加密速度快、加密效率高。優點在於加解密的高速度和使用長金鑰時的難破解性,缺點是交易雙方都使用同樣鑰匙,安全性得不到保證。

對稱演算法的安全性依賴於金鑰,洩漏金鑰就意味著任何人都可以對他們傳送或接收的訊息解密,所以金鑰的保密性對通訊的安全性至關重要。

擴充套件資料

常見的加密演算法

des演算法是密碼體制中的對稱密碼體制,把64位的明文輸入塊變為64位的密文輸出塊,它所使用的金鑰也是64位。

3des是基於des的對稱演算法,對一塊資料用三個不同的金鑰進行三次加密,強度更高。

rc2和rc4是對稱演算法,用變長金鑰對大量資料進行加密,比des快。

idea演算法是在des演算法的基礎上發展出來的,是作為迭代的分組密碼實現的,使用128位的金鑰和8個迴圈。

rsa是由rsa公司發明,是一個支援變長金鑰的公共金鑰演算法,需要加密的檔案塊的長度也是可變的,非對稱演算法。

dsa,即數字簽名演算法,是一種標準的 dss(數字簽名標準),嚴格來說不算加密演算法。

aes是高階加密標準對稱演算法,是下一代的加密演算法標準,速度快,安全級別高,在21世紀aes 標準的一個實現是 rijndael演算法。

blowfish演算法是一個64位分組及可變金鑰長度的對稱金鑰分組密碼演算法,可用來加密64位元長度的字串。

8樓:匿名使用者

基於「對稱金鑰」的加密演算法主要有des、tripledes、rc2、rc4、rc5和blowfish等。

對稱金鑰:des、tripledes演算法

des演算法把64位的明文輸入塊變為64位的密文輸出塊,它所使用的金鑰也是64位。首先,des把輸入的64位資料塊按位重新組合,並把輸出分為l0、r0兩部分,每部分各長32位,並進行前後置換,最終由l0輸出左32位,r0輸出右32位,根據這個法則經過16次迭代運算後,得到l16、r16,將此作為輸入,進行與初始置換相反的逆置換,即得到密文輸出。

des演算法具有極高的安全性,到目前為止,除了用窮舉搜尋法對des演算法進行攻擊外,還沒有發現更有效的辦法,而56位長金鑰的窮舉空間為256,這意味著如果一臺計算機的速度是每秒種檢測100萬個金鑰,那麼它搜尋完全部金鑰就需要將近2023年的時間,因此des演算法是一種很可靠的加密方法。

對稱金鑰:rc演算法

rc4演算法的原理是「攪亂」,它包括初始化演算法和偽隨機子密碼生成演算法兩大部分,在初始化的過程中,金鑰的主要功能是將一個256位元組的初始數簇進行隨機攪亂,不同的數簇在經過偽隨機子密碼生成演算法的處理後可以得到不同的子金鑰序列,將得到的子金鑰序列和明文進行異或運算(xor)後,得到密文。

由於rc4演算法加密採用的是異或方式,所以,一旦子金鑰序列出現了重複,密文就有可能被破解,但是目前還沒有發現金鑰長度達到128位的rc4有重複的可能性,所以,rc4也是目前最安全的加密演算法之一。

對稱加密演算法和非對稱加密演算法的區別是什麼

一 對稱加密 symmetric cryptography 對稱加密是最快速 最簡單的一種加密方式,加密 encryption 與解密 decryption 用的是同樣的金鑰 secret key 這種方法在密碼學中叫做對稱加密演算法。對稱加密有很多種演算法,由於它效率很高,所以被廣泛使用在很多加密...

什麼是對稱加密演算法?請舉例,常用的對稱加密演算法有哪些?

對稱加密演算法是指 加密和解密都用同一個金鑰,常見的有 3des演算法,blowfish演算法,rc5演算法等 常用的對稱加密演算法有哪些?對稱加密演算法用來對敏感資料等資訊進行加密,常用的演算法包括 des data encryption standard 資料加密標準,速度較快,適用於加密大量資...

著名的可逆的加密演算法有哪些,常用的對稱加密演算法有哪些?

陳說教育 1,des data encryption standard 對稱演算法,資料加密標準,速度較快,適用於加密大量資料的場合。2,3des triple des 是基於des的對稱演算法,對一塊資料用三個不同的金鑰進行三次加密,強度更高。3,rc2和rc4 對稱演算法,用變長金鑰對大量資料進...