導航:首頁 > 文檔加密 > 什麼是常用的數據加密演算法

什麼是常用的數據加密演算法

發布時間:2023-07-20 08:27:49

⑴ 常見加密演算法原理及概念

在安全領域,利用密鑰加密演算法來對通信的過程進行加密是一種常見的安全手段。利用該手段能夠保障數據安全通信的三個目標:

而常見的密鑰加密演算法類型大體可以分為三類:對稱加密、非對稱加密、單向加密。下面我們來了解下相關的演算法原理及其常見的演算法。

對稱加密演算法採用單密鑰加密,在通信過程中,數據發送方將原始數據分割成固定大小的塊,經過密鑰和加密演算法逐個加密後,發送給接收方;接收方收到加密後的報文後,結合密鑰和解密演算法解密組合後得出原始數據。由於加解密演算法是公開的,因此在這過程中,密鑰的安全傳遞就成為了至關重要的事了。而密鑰通常來說是通過雙方協商,以物理的方式傳遞給對方,或者利用第三方平台傳遞給對方,一旦這過程出現了密鑰泄露,不懷好意的人就能結合相應的演算法攔截解密出其加密傳輸的內容。

對稱加密演算法擁有著演算法公開、計算量小、加密速度和效率高得特定,但是也有著密鑰單一、密鑰管理困難等缺點。

常見的對稱加密演算法有:
DES:分組式加密演算法,以64位為分組對數據加密,加解密使用同一個演算法。
3DES:三重數據加密演算法,對每個數據塊應用三次DES加密演算法。
AES:高級加密標准演算法,是美國聯邦政府採用的一種區塊加密標准,用於替代原先的DES,目前已被廣泛應用。
Blowfish:Blowfish演算法是一個64位分組及可變密鑰長度的對稱密鑰分組密碼演算法,可用來加密64比特長度的字元串。

非對稱加密演算法採用公鑰和私鑰兩種不同的密碼來進行加解密。公鑰和私鑰是成對存在,公鑰是從私鑰中提取產生公開給所有人的,如果使用公鑰對數據進行加密,那麼只有對應的私鑰才能解密,反之亦然。
下圖為簡單非對稱加密演算法的常見流程:

發送方Bob從接收方Alice獲取其對應的公鑰,並結合相應的非對稱演算法將明文加密後發送給Alice;Alice接收到加密的密文後,結合自己的私鑰和非對稱演算法解密得到明文。這種簡單的非對稱加密演算法的應用其安全性比對稱加密演算法來說要高,但是其不足之處在於無法確認公鑰的來源合法性以及數據的完整性。
非對稱加密演算法具有安全性高、演算法強度負復雜的優點,其缺點為加解密耗時長、速度慢,只適合對少量數據進行加密,其常見演算法包括:
RSA :RSA演算法基於一個十分簡單的數論事實:將兩個大素數相乘十分容易,但那時想要對其乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰,可用於加密,也能用於簽名。
DSA :數字簽名演算法,僅能用於簽名,不能用於加解密。
DSS :數字簽名標准,技能用於簽名,也可以用於加解密。
ELGamal :利用離散對數的原理對數據進行加解密或數據簽名,其速度是最慢的。

單向加密演算法常用於提取數據指紋,驗證數據的完整性。發送者將明文通過單向加密演算法加密生成定長的密文串,然後傳遞給接收方。接收方在收到加密的報文後進行解密,將解密獲取到的明文使用相同的單向加密演算法進行加密,得出加密後的密文串。隨後將之與發送者發送過來的密文串進行對比,若發送前和發送後的密文串相一致,則說明傳輸過程中數據沒有損壞;若不一致,說明傳輸過程中數據丟失了。單向加密演算法只能用於對數據的加密,無法被解密,其特點為定長輸出、雪崩效應。常見的演算法包括:MD5、sha1、sha224等等,其常見用途包括:數字摘要、數字簽名等等。

密鑰交換IKE(Internet Key Exchange)通常是指雙方通過交換密鑰來實現數據加密和解密,常見的密鑰交換方式有下面兩種:
1、公鑰加密,將公鑰加密後通過網路傳輸到對方進行解密,這種方式缺點在於具有很大的可能性被攔截破解,因此不常用;
2、Diffie-Hellman,DH演算法是一種密鑰交換演算法,其既不用於加密,也不產生數字簽名。DH演算法的巧妙在於需要安全通信的雙方可以用這個方法確定對稱密鑰。然後可以用這個密鑰進行加密和解密。但是注意,這個密鑰交換協議/演算法只能用於密鑰的交換,而不能進行消息的加密和解密。雙方確定要用的密鑰後,要使用其他對稱密鑰操作加密演算法實際加密和解密消息。DH演算法通過雙方共有的參數、私有參數和演算法信息來進行加密,然後雙方將計算後的結果進行交換,交換完成後再和屬於自己私有的參數進行特殊演算法,經過雙方計算後的結果是相同的,此結果即為密鑰。
如:

在整個過程中,第三方人員只能獲取p、g兩個值,AB雙方交換的是計算後的結果,因此這種方式是很安全的。

公鑰基礎設施是一個包括硬體、軟體、人員、策略和規程的集合,用於實現基於公鑰密碼機制的密鑰和證書的生成、管理、存儲、分發和撤銷的功能,其組成包括:簽證機構CA、注冊機構RA、證書吊銷列表CRL和證書存取庫CB。
PKI採用證書管理公鑰,通過第三方可信任CA中心,把用戶的公鑰和其他用戶信息組生成證書,用於驗證用戶的身份。
公鑰證書是以數字簽名的方式聲明,它將公鑰的值綁定到持有對應私鑰的個人、設備或服務身份。公鑰證書的生成遵循X.509協議的規定,其內容包括:證書名稱、證書版本、序列號、演算法標識、頒發者、有效期、有效起始日期、有效終止日期、公鑰 、證書簽名等等的內容。

CA證書認證的流程如下圖,Bob為了向Alice證明自己是Bob和某個公鑰是自己的,她便向一個Bob和Alice都信任的CA機構申請證書,Bob先自己生成了一對密鑰對(私鑰和公鑰),把自己的私鑰保存在自己電腦上,然後把公鑰給CA申請證書,CA接受申請於是給Bob頒發了一個數字證書,證書中包含了Bob的那個公鑰以及其它身份信息,當然,CA會計算這些信息的消息摘要並用自己的私鑰加密消息摘要(數字簽名)一並附在Bob的證書上,以此來證明這個證書就是CA自己頒發的。Alice得到Bob的證書後用CA的證書(自簽署的)中的公鑰來解密消息摘要,隨後將摘要和Bob的公鑰發送到CA伺服器上進行核對。CA在接收到Alice的核對請求後,會根據Alice提供的信息核對Bob的證書是否合法,如果確認合法則回復Alice證書合法。Alice收到CA的確認回復後,再去使用從證書中獲取的Bob的公鑰加密郵件然後發送給Bob,Bob接收後再以自己的私鑰進行解密。

⑵ 典型加密演算法包括

1、對稱加密演算法

對稱加密演算法是指加密和解密採用相同的密鑰,是可逆的(即可解密)。AES加密演算法是密碼學中的高級加密標准,採用的是對稱分組密碼體制,密鑰長度的最少支持為128。

AES加密演算法是美國聯邦政府採用的區塊加密標准,這個標准用來替代原先的DES,已經被多方分析且廣為全世界使用。

2、非對稱加密

非對稱加密演算法,又稱為公開密鑰加密演算法。它需要兩個密鑰,一個稱為公開密鑰 (public key),即公鑰,另一個稱為私有密鑰 (private key),即私鑰。

RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰演算法,需要加密的文件塊的長度也是可變的;

DSA(Digital Signature Algorithm):數字簽名演算法,是一種標準的 DSS(數字簽名標准);

ECC(Elliptic Curves Cryptography):橢圓曲線密碼編碼學。

3、Hash 演算法

Hash 演算法特別的地方在於它是一種單向演算法,用戶可以通過 Hash 演算法對目標信息生成一段特定長度的唯一的 Hash 值,卻不能通過這個 Hash 值重新獲得目標信息。因此 Hash 演算法常用在不可還原的密碼存儲、信息完整性校驗等。

⑶ 目前常用的加密方法主要有兩種是什麼

目前常用的加密方法主要有兩種,分別為:私有密鑰加密和公開密鑰加密。私有密鑰加密法的特點信息發送方與信息接收方均需採用同樣的密鑰,具有對稱性,也稱對稱加密。公開密鑰加密,又稱非對稱加密,採用一對密鑰,一個是私人密鑰,另一個則是公開密鑰。
私有密鑰加密

私有密鑰加密,指在計算機網路上甲、乙兩用戶之間進行通信時,發送方甲為了保護要傳輸的明文信息不被第三方竊取,採用密鑰A對信息進行加密而形成密文M並發送給接收方乙,接收方乙用同樣的一把密鑰A對收到的密文M進行解密,得到明文信息,從而完成密文通信目的的方法。

這種信息加密傳輸方式,就稱為私有密鑰加密法。

私有密鑰加密的特點:

私有密鑰加密法的一個最大特點是:信息發送方與信息接收方均需採用同樣的密鑰,具有對稱性,所以私有密鑰加密又稱為對稱密鑰加密。

私有密鑰加密原理:

私有加密演算法使用單個私鑰來加密和解密數據。由於具有密鑰的任意一方都可以使用該密鑰解密數據,因此必須保證密鑰未被授權的代理得到。

公開密鑰加密

公開密鑰加密(public-key cryptography),也稱為非對稱加密(asymmetric cryptography),一種密碼學演算法類型,在這種密碼學方法中,需要一對密鑰,一個是私人密鑰,另一個則是公開密鑰。

這兩個密鑰是數學相關,用某用戶密鑰加密後所得的信息,只能用該用戶的解密密鑰才能解密。如果知道了其中一個,並不能計算出另外一個。因此如果公開了一對密鑰中的一個,並不會危害到另外一個的秘密性質。稱公開的密鑰為公鑰;不公開的密鑰為私鑰。

⑷ 數據在網路上傳輸為什麼要加密現在常用的數據加密演算法主要有哪些

數據傳輸加密技術的目的是對傳輸中的數據流加密,通常有線路加密與端—端加密兩種。線路加密側重在線路上而不考慮信源與信宿,是對保密信息通過各線路採用不同的加密密鑰提供安全保護。

端—端加密指信息由發送端自動加密,並且由TCP/IP進行數據包封裝,然後作為不可閱讀和不可識別的數據穿過互聯網,當這些信息到達目的地,將被自動重組、解密,而成為可讀的數據。

數據存儲加密技術的目的是防止在存儲環節上的數據失密,數據存儲加密技術可分為密文存儲和存取控制兩種。前者一般是通過加密演算法轉換、附加密碼、加密模塊等方法實現;後者則是對用戶資格、許可權加以審查和限制,防止非法用戶存取數據或合法用戶越權存取數據。

常見加密演算法

1、DES(Data Encryption Standard):對稱演算法,數據加密標准,速度較快,適用於加密大量數據的場合;

2、3DES(Triple DES):是基於DES的對稱演算法,對一塊數據用三個不同的密鑰進行三次加密,強度更高;

3、RC2和RC4:對稱演算法,用變長密鑰對大量數據進行加密,比 DES 快;

4、IDEA(International Data Encryption Algorithm)國際數據加密演算法,使用 128 位密鑰提供非常強的安全性;

5、RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰演算法,需要加密的文件塊的長度也是可變的,非對稱演算法; 演算法如下:

首先, 找出三個數,p,q,r,其中 p,q 是兩個不相同的質數,r 是與 (p-1)(q-1) 互為質數的數。

p,q,r這三個數便是 private key。接著,找出 m,使得 rm == 1 mod (p-1)(q-1).....這個 m 一定存在,因為 r 與 (p-1)(q-1) 互質,用輾轉相除法就可以得到了。再來,計算 n = pq.......m,n 這兩個數便是 public key。

6、DSA(Digital Signature Algorithm):數字簽名演算法,是一種標準的 DSS(數字簽名標准),嚴格來說不算加密演算法;

7、AES(Advanced Encryption Standard):高級加密標准,對稱演算法,是下一代的加密演算法標准,速度快,安全級別高,在21世紀AES 標準的一個實現是 Rijndael 演算法。

8、BLOWFISH,它使用變長的密鑰,長度可達448位,運行速度很快;

9、MD5:嚴格來說不算加密演算法,只能說是摘要演算法;

對MD5演算法簡要的敘述可以為:MD5以512位分組來處理輸入的信息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理後,演算法的輸出由四個32位分組組成,將這四個32位分組級聯後將生成一個128位散列值。

(4)什麼是常用的數據加密演算法擴展閱讀

數據加密標准

傳統加密方法有兩種,替換和置換。上面的例子採用的就是替換的方法:使用密鑰將明文中的每一個字元轉換為密文中的一個字元。而置換僅將明文的字元按不同的順序重新排列。單獨使用這兩種方法的任意一種都是不夠安全的,但是將這兩種方法結合起來就能提供相當高的安全程度。

數據加密標准(Data Encryption Standard,簡稱DES)就採用了這種結合演算法,它由IBM制定,並在1977年成為美國官方加密標准。

DES的工作原理為:將明文分割成許多64位大小的塊,每個塊用64位密鑰進行加密,實際上,密鑰由56位數據位和8位奇偶校驗位組成,因此只有56個可能的密碼而不是64個。

每塊先用初始置換方法進行加密,再連續進行16次復雜的替換,最後再對其施用初始置換的逆。第i步的替換並不是直接利用原始的密鑰K,而是由K與i計算出的密鑰Ki。

DES具有這樣的特性,其解密演算法與加密演算法相同,除了密鑰Ki的施加順序相反以外。

參考資料來源:網路-加密演算法

參考資料來源:網路-數據加密

⑸ 數據加密演算法:

密碼演算法是加密演算法和解密演算法的統稱,它是密碼體制的核心。密碼演算法可以看成一些交換的組合。當輸入為明文時,經過這些變換,輸出就為密文。這是加密交換的過程,此時密碼演算法稱為加密演算法。反之,當輸入為密文時,經過密碼變換,輸出為明文,這就 是解密交換的過程,此時密碼演算法稱為解密演算法。常用加密演算法為:AES 、 RSA/ECC 、Diffie-hellman 、 SHA-1/SHA-256 。

⑹ 常用的加密演算法有哪些

對稱密鑰加密

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

⑺ 常見的加密演算法、原理、優缺點、用途

在安全領域,利用密鑰加密演算法來對通信的過程進行加密是一種常見的安全手段。利用該手段能夠保障數據安全通信的三個目標:

而常見的密鑰加密演算法類型大體可以分為三類:對稱加密、非對稱加密、單向加密。下面我們來了解下相關的演算法原理及其常見的演算法。

在加密傳輸中最初是採用對稱密鑰方式,也就是加密和解密都用相同的密鑰。

1.對稱加密演算法採用單密鑰加密,在通信過程中,數據發送方將原始數據分割成固定大小的塊,經過密鑰和加密演算法逐個加密後,發送給接收方

2.接收方收到加密後的報文後,結合解密演算法使用相同密鑰解密組合後得出原始數據。

圖示:

非對稱加密演算法採用公鑰和私鑰兩種不同的密碼來進行加解密。公鑰和私鑰是成對存在,公鑰是從私鑰中提取產生公開給所有人的,如果使用公鑰對數據進行加密,那麼只有對應的私鑰(不能公開)才能解密,反之亦然。N 個用戶通信,需要2N個密鑰。

非對稱密鑰加密適合對密鑰或身份信息等敏感信息加密,從而在安全性上滿足用戶的需求。

1.甲使用乙的公鑰並結合相應的非對稱演算法將明文加密後發送給乙,並將密文發送給乙。
2.乙收到密文後,結合自己的私鑰和非對稱演算法解密得到明文,得到最初的明文。

圖示:

單向加密演算法只能用於對數據的加密,無法被解密,其特點為定長輸出、雪崩效應(少量消息位的變化會引起信息摘要的許多位變化)。

單向加密演算法常用於提取數據指紋,驗證數據的完整性、數字摘要、數字簽名等等。

1.發送者將明文通過單向加密演算法加密生成定長的密文串,然後傳遞給接收方。

2.接收方將用於比對驗證的明文使用相同的單向加密演算法進行加密,得出加密後的密文串。

3.將之與發送者發送過來的密文串進行對比,若發送前和發送後的密文串相一致,則說明傳輸過程中數據沒有損壞;若不一致,說明傳輸過程中數據丟失了。

圖示:

MD5、sha1、sha224等等

密鑰交換IKE(Internet Key Exchange)通常是指雙方通過交換密鑰來實現數據加密和解密

常見的密鑰交換方式有下面兩種:

將公鑰加密後通過網路傳輸到對方進行解密,這種方式缺點在於具有很大的可能性被攔截破解,因此不常用

DH演算法是一種密鑰交換演算法,其既不用於加密,也不產生數字簽名。

DH演算法通過雙方共有的參數、私有參數和演算法信息來進行加密,然後雙方將計算後的結果進行交換,交換完成後再和屬於自己私有的參數進行特殊演算法,經過雙方計算後的結果是相同的,此結果即為密鑰。

如:

安全性

在整個過程中,第三方人員只能獲取p、g兩個值,AB雙方交換的是計算後的結果,因此這種方式是很安全的。

答案:使用公鑰證書

公鑰基礎設施是一個包括硬體、軟體、人員、策略和規程的集合

用於實現基於公鑰密碼機制的密鑰和證書的生成、管理、存儲、分發和撤銷的功能

簽證機構CA、注冊機構RA、證書吊銷列表CRL和證書存取庫CB。

公鑰證書是以數字簽名的方式聲明,它將公鑰的值綁定到持有對應私鑰的個人、設備或服務身份。公鑰證書的生成遵循X.509協議的規定,其內容包括:證書名稱、證書版本、序列號、演算法標識、頒發者、有效期、有效起始日期、有效終止日期、公鑰 、證書簽名等等的內容。

1.客戶A准備好要傳送的數字信息(明文)。(准備明文)

2.客戶A對數字信息進行哈希(hash)運算,得到一個信息摘要。(准備摘要)

3.客戶A用CA的私鑰(SK)對信息摘要進行加密得到客戶A的數字簽名,並將其附在數字信息上。(用私鑰對數字信息進行數字簽名)

4.客戶A隨機產生一個加密密鑰(DES密鑰),並用此密鑰對要發送的信息進行加密,形成密文。 (生成密文)

5.客戶A用雙方共有的公鑰(PK)對剛才隨機產生的加密密鑰進行加密,將加密後的DES密鑰連同密文一起傳送給乙。(非對稱加密,用公鑰對DES密鑰進行加密)

6.銀行B收到客戶A傳送過來的密文和加過密的DES密鑰,先用自己的私鑰(SK)對加密的DES密鑰進行解密,得到DES密鑰。(用私鑰對DES密鑰解密)

7.銀行B然後用DES密鑰對收到的密文進行解密,得到明文的數字信息,然後將DES密鑰拋棄(即DES密鑰作廢)。(解密文)

8.銀行B用雙方共有的公鑰(PK)對客戶A的數字簽名進行解密,得到信息摘要。銀行B用相同的hash演算法對收到的明文再進行一次hash運算,得到一個新的信息摘要。(用公鑰解密數字簽名)

9.銀行B將收到的信息摘要和新產生的信息摘要進行比較,如果一致,說明收到的信息沒有被修改過。(對比信息摘要和信息)

答案是沒法保證CA的公鑰沒有被篡改。通常操作系統和瀏覽器會預制一些CA證書在本地。所以發送方應該去那些通過認證的CA處申請數字證書。這樣是有保障的。

但是如果系統中被插入了惡意的CA證書,依然可以通過假冒的數字證書發送假冒的發送方公鑰來驗證假冒的正文信息。所以安全的前提是系統中不能被人插入非法的CA證書。

END

閱讀全文

與什麼是常用的數據加密演算法相關的資料

熱點內容
橙牛app怎麼找客服 瀏覽:303
php對象魔術方法 瀏覽:487
OBV能量潮幅圖指標源碼 瀏覽:913
編程15個好習慣 瀏覽:676
電腦u盤文件夾顯示屏幕保護程序 瀏覽:801
我的世界伺服器版本怎麼下載 瀏覽:600
c代碼加密工具 瀏覽:357
使用泛型演算法的錯誤 瀏覽:739
單片機焊接要焊接多少個引腳 瀏覽:671
android圖片瀏覽器代碼 瀏覽:707
中國電信智慧維app如何使用 瀏覽:703
列印文件夾內文件如何統一設置 瀏覽:555
單片機連接8個按鍵 瀏覽:659
阿里雲伺服器網頁怎麼找到 瀏覽:961
數控車床如何進行自動編程 瀏覽:14
app網課視頻怎麼拷貝到電腦上 瀏覽:712
安卓國服光遇小王子季節什麼時候結束 瀏覽:539
恢復的音樂在哪個文件夾 瀏覽:598
qq傳輸文件夾壓縮包 瀏覽:913
sha1加密演算法java 瀏覽:234