1. 簡要說說對稱加密和非對稱加密的原理以及區別是什麼
對稱加密的原理是數據發送方將明文(原始數據)和加密密鑰一起經過特殊加密演算法處理後,使其變成復雜的加密密文發送出去。接收方收到密文後,若想解讀原文,則需要使用加密密鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。
非對稱加密的原理是甲方首先生成一對密鑰同時將其中的一把作為公開密鑰;得到公開密鑰的乙方再使用該密鑰對需要加密的信息進行加密後再發送給甲方;甲方再使用哪鍵另一把對應的私有密鑰對加密後的信息進行解密,這樣就實現了機密數據傳輸。
對稱加密和非對稱加密的區別為:密鑰不同、安全性不同、數字簽名不同。
一、密鑰不同
1、對稱加密:對稱加密加密和解密使用同一個密鑰。
2、非對稱加密:非對稱加密加密和解密所使用的不是同一個密鑰,需要兩個密鑰來進行加密和解密。
二、安全性不同
1、對基緩銷稱加密:對稱加密如果用於通過網路傳輸加密文件,那麼不管使用任何方法將密鑰告訴對方,都有可能被竊聽。
2、非對稱加密:非對稱加密因為它包含有兩個密鑰,且僅有其中的「公鑰」是可以被公開的,接收方只需要使用自己已持有的私鑰進行解密,這樣就可以很好的避免密鑰在傳輸過程中產生的安全問題。
三搏游、數字簽名不同
1、對稱加密:對稱加密不可以用於數字簽名和數字鑒別。
2、非對稱加密:非對稱加密可以用於數字簽名和數字鑒別。
2. 對稱加密和非對稱加密
採用單鑰密蠢禪陸碼系統的加密方法,同帶頃一個密鑰可以同時用作信息的加密和解密,這種加密方法稱為對稱加密,也稱為單密鑰加密。
Bob和Alice各有一把相同秘鑰,Bob使用密鑰將原始文件加密後Alice可以使用同一密鑰將其解密。
對稱加密常用演算法RC4:
密鑰序列 1010 、明文 0110 異或得到密鑰 1100 ,同理密文 1100 、密鑰序列 1010 異或可以得到明文 0110 。
非對稱加密算襲或法需要兩個密鑰來進行加密和解密,這兩個秘鑰是公開密鑰(public key,簡稱公鑰)和私有密鑰(private key,簡稱私鑰)。
同時生成兩把秘鑰進行加解密。
3. 數據加密(對稱加密和非對稱加密)
通過網路通信的五層模型(ISO規定的是七層模型,TCP/IP規定的是五層模型)可以實現兩個應用程序之間的數據通信
但是現在有個問題是 數據如何加密,總不能兩個人之間說的話讓第三個人活著別的人聽到吧
那最簡單的例子就是:A和B之間傳遞數據,如何保證數據不被第三個人知道,或者說第三個人就算知道數據,但是不知道數據所代表的意思。
在傳遞數據時候不能避免傳遞的數據被別的人知道,那我們能做的就是讓第三個人不知道數據所表達的意思就好了。
A 和 B 約定一套規則,A 通過這套規則將要發送的數據改變, 稱作加密 ,B 接受到數據,在用這套規則將數據還原成原來的數據 稱作解密 。這就完成了一次加密數據傳輸。
因為數據傳輸的方式無外乎就有兩種形式;1.通過無線的方式,對應的就是(電磁波)。2.通過有線連接的方式(網線)數據就是轉化為0,1,0,1的這種二進制來傳送的。
假如A 要發送一組數據為010101010101,A約定的規則是按位取反,通過這套規則數據就變成了101010101010,將變化後的數據發送給B,B得到這個數據,通過按位取反,將這套數據變成原來的樣子也就是將1010101010按位置取反變成010101010101,在這個傳輸過程中有人得到了這個數據,那得到的也是101010101010,他並不知道這套規則,那即使知道了數據,也並不影響什麼。
在上面的過程中這套規則就叫做 ------- 公鑰 ----------
上面的過程就叫做對稱加密
對稱加密是一種思想,具體的實現就是演算法,有很多的對稱加密的演算法 比如 DES演算法
對稱的意思就是 加密和解密用的是一套規則
說到這里對稱加密大體說明白了一點。但不要停下思考的步伐,那請思考一個問題
新的問題又擺在了眼前。。。。。。怎麼搞,,怎麼半
這個時候非對稱加密就出現了,就是這樣。在一個合適的時間 出現一個合適的東西。
扯多了,回歸正題:
繼續上面的情景 A 和 B 倆交流,互通數據,解決上面出現的問題那就定義兩套規則,一套加密(俗稱公鑰),一套解密(俗稱私鑰),那A又一對鑰匙(即就是一個公鑰,一個私鑰),B也有一對鑰匙。如果A想要給B傳數據 那就先用B 的公鑰將數據加密,然後通過網路傳給B。B 接受到數據後,通過自己的私鑰將數據解密 ,就得到A 所傳的真正的數據。 同樣的道理 B 想給A傳數據,那就先通過網路得到A的公鑰,然後加密數據,通過網路傳給A ,A得到數據後用自己的私鑰解密,就可以得到B 傳給A的真正的數據。
上面的過程就是非對稱加密,所謂非對稱就是有兩套規則,一套是公鑰,一套是私鑰。
這種規則其實就是演算法,當然這種非對稱加密演算法有很多,但是現在比較常用的就是RSA演算法 RSA演算法
那寫到這里基本的也就差不多了。數據加密傳輸也就完成了,基本沒什麼問題,但是網路傳數據當然是越快越好,那我接下來就是要寫一些兩個加密方式的優缺點:
對稱加密 ---------簡單,因為只有一套規則。
--------- 速度快,因為只有一套規則。
非對稱加密 ------- 復雜,兩套規則
--------速度慢,兩套規則
公鑰 說到底也就是數據。那數據要怎麼傳 !!!!! 是不是很眼熟,這不就是我們之前將的問題嗎? 我們可以用非對稱加密將對稱加密的公鑰傳過去,那之前對稱加密的問題不就解決了嗎? 然後可以放心大膽的使用對稱加密了。有沒有?
一般先都是用非對稱加密將對稱加密的公鑰傳過去,然後使用對稱加密。。那數據的處理速度就很快。
ok 就到這了……
4. 對稱加密演算法和非對稱加密演算法
常見的對稱加密演算法包括瑞士的國際數據加密演算法(International Data Encryption
Algorithm,IDEA)和美國的數據加密標准(Date Encryption Standard,DES)。
DES是一種迭代的分組密碼,明文和密文都是64位,使用一個56位的密鑰以及附加的8位奇偶校驗位。攻擊DES的主要技術是窮舉法,由於DES的密鑰長度較短,為了提高安全性,就出現了使用112位密鑰對數據進行三次加密的演算法(3DES),即用兩個56位的密鑰K1和K2,發送方用K1加密,K2解密,再使用K1加密;接收方則使用K1解密,K2加密,再使用K1解密,其效果相當於將密鑰長度加倍。
IDEA是在DES的基礎上發展起來的,類似於3DES。IDEA的明文和密文都是64位,密鑰長度為128位。
非對稱加密演算法也稱為公鑰加密演算法,是指加密密鑰和解密密鑰完全不同,其中一個為公鑰,另一個為私鑰,並且不可能從任何一個推導出另一個。它的優點在於可以適應開放性的使用環境,可以實現數字簽名與驗證。
最常見的非對稱加密演算法是RSA,該演算法的名字以發明者的名字命名:Ron Rivest,AdiShamir 和Leonard Adleman。RSA演算法的密鑰長度為512位。RSA演算法的保密性取決於數學上將一個大數分解為兩個素數的問題的難度,根據已有的數學方法,其計算量極大,破解很難。但是加密/解密時要進行大指數模運算,因此加密/解密速度很慢,主要用在數字簽名中。
用公鑰進行加密,用私鑰進行解密
5. 什麼是對稱密碼和非對密碼,分析這兩種密碼體系的特點和應用領域
一、對稱密碼
1、定義:採用單鑰密碼系統的加密方法,同一個密鑰可以同時用作信息的加密和解密,這種加密方法稱為對稱加密,也稱為單密鑰加密。
2、特點:演算法公開、計算量小、加密速度快、加密效率高。
3、應用領域:由於其速度快,對稱性加密通常在消息發送方需要加密大量數據時使用。
二、非對密碼
1、定義:非對稱密碼指的是非對稱密碼體制中使用的密碼。
2、特點:
(1)是加密密鑰和解密密鑰不同 ,並且難以互推 。
(2)是有一個密鑰是公開的 ,即公鑰 ,而另一個密鑰是保密的 ,即私鑰。
3、應用領域:很好的解決了密鑰的分發和管理的問題 ,並且它還能夠實現數字簽名。
(5)對稱加密和非對稱加密結合構成擴展閱讀
對稱加密演算法特徵
1、加密方和解密方使用同一個密鑰;
2、加密解密的速度比較快,適合數據比較長時的使用;
3、密鑰傳輸的過程不安全,且容易被破解,密鑰管理也比較麻煩
6. 用圖示說明對稱加密技術和非對稱加密技術相結合(即數字信封技術)的工作過程。
數字信封技術用於保證資料在傳輸過程中的安全。對稱密鑰加密和公鑰加密技術各有其優缺點,對稱密鑰加密演算法效率高,但密鑰的憤發和管理都很困難;而公鑰加密演算法密鑰易於管理和傳遞,但運行效率太低,不適於加密大量的消息,而且它要求被加密的信息塊長度要小於密鑰的長度。數字信封技術結合了密鑰加密技術和公鑰加密技術各自的優點,克服了密鑰加密技術中密鑰分發和管理困難和公鑰加密技術中加解密效率低的缺點,充分利用了密鑰系統的高效性和公鑰系統的靈活性,保證信息在傳輸過程中的靈活性。
數字信封技術首先使用密鑰加密技術對要發送的消息進行加密;再利用公鑰加密技術對密鑰系統中使用的密鑰進行加密。然後把加密的消息和加密的密鑰一起傳送給接收方。其具體的實現方法和步驟如下:
說明:以上圖中的步驟可以解釋為:
①在需要發送信息時,發送方Alice先生成一個對稱密鑰K;
②Alice利用生成的對稱密鑰K和相應的對稱密鑰演算法E( • )對要發送的明文消息P進行加密,生成密文C=Ek(P);
③然後Alice再用接收方Bob提供的公鑰KpB 對剛才用到的加密明文P的密鑰K進行加密,得到加密後的密鑰Ck;
④Alice把加密後的消息C和加密後的對稱密鑰Ck作為密文一起傳送給Bob。
⑤Bob接收到密文後,先用自己的私鑰解密Ck還原出對稱密鑰K,然後再用得到的K,根據實現商定好的對稱密鑰演算法解密得到明文P。
數字信封技術實際上是使用雙層加密體制。在內層,利用對稱密鑰加密技術,每次傳送消息都可以重新生成新的對稱密鑰,實現了一次一密,保證了信息的安全性。在外層,使用公鑰加密技術對對稱密鑰進行加密,保證對稱密鑰傳輸的安全性。數字信封技術的應用,使資料信息在公共為了中的傳輸有了安全保障。
7. 密碼學中的對稱加密和非對稱加密
一、對稱加密
概念:加密和解密用同一對密鑰的加密技術,叫對稱加密。
加密方式:DES、3DES、AES,安全性依次從低到高。
示意圖:
二、非對稱加密,也稱公開密鑰
概念:加密和解密用 不同的密鑰 的加密技術,叫非對稱加密。
典型的加密方式:RSA演算法
加密步驟:
三、兩種方式各自的缺點:
四銷迅模、混合密碼系統
概念:將對稱密碼和公鑰密碼的優勢相結合的方法
優點:解決了公鑰密碼速度慢的問題;通過公鑰密碼解決昌彎了對稱密碼的密鑰配送問題。
應用:網路上的密碼通信所用的SSL/TSL都運用了混合密碼系統。
會話密鑰的生成:
加密步驟:
最終,發出去的消息包括兩部分:
解密步驟:
示意圖:
1. 為什麼加密消息主體要用對稱加密?
因為消息主體信息量大,發送頻繁,而對稱加密速度快,效率高。
2. 為什麼加密會話密鑰要用非對稱加密?
因為會話密鑰一般比較短,而且通常只需要發送一次即可,所虧緩以對速度要求不高,但對安全性要求很高,非對稱加密滿足這個要求。
8. 科普知識—對稱加密和非對稱加密
區塊鏈技術中廣泛應用到非對稱加密技術,非對稱加密技術保證了信息在傳輸過程中的安全性,非對稱加密技術是在對稱加密技術上發展來的。本文主要闡述對稱加密技術和非對稱加密技術的概念和特點,並舉例說明。
對稱加密就是用相同的密鑰對原文進行加密和解密,通信雙方共用一個密鑰。
基於對稱加密演算法傳輸信息「ABC」的步驟。
(1)發送方通過密鑰對原文"ABC"進行加密,得到密文"abc",並發送給接收方。密鑰為將字母轉換為對應的小寫字母,大寫A轉換為小寫a,「BC」同理轉換為「bc」。
(2)發送方將密鑰發送給接收方。
(3)接收方通過密鑰對密文進行解密,反推出原文「ABC」。
對稱加密演算法的缺點:無法確保密鑰被安全傳遞。
密鑰就是傳說中的「密碼本」。密文在傳輸過程中是可能被第三方截獲的,關鍵就落在「密碼本」上,如果密碼本也被第三方截獲,則傳輸的密碼信息將被第三方破獲,所以經常看到電影、電視劇的情節中通過各種手段保護密碼本的安全送達。
非對稱加密技術很好的解決了對稱加密技術密鑰無法安全傳遞的問題。
非對稱加密有兩個密鑰,即公鑰(Public Key)和私鑰(Private Key),對數據進行加密和解密使用不同的密鑰。使用公鑰進行加密,使用私鑰進行解密。
非對稱加密演算法中私鑰就是一個隨機數,基於不同的演算法生成不同的隨機數,如:SHA256演算法生成的是256位的隨機數,通常是調用操作系統的隨機數生成器來生成私鑰,私鑰通過一定的加密演算法推導出公鑰,私鑰到公鑰的推導過程是單向的,也就是說公鑰無法反推導出私鑰。
基於非對稱加密演算法傳輸信息「hello world」的步驟。
(1)發送方使用接收方的公鑰對待發送信息「hello world」加密,此處需注意:信息發送給誰,使用誰的公鑰進行加密,公鑰是可以公開的,類似於銀行卡賬戶。
(2)發送方將加密後的密文通過網路發送給接收方。
(3)接收方接收到密文後,使用自己的私鑰對密文進行解密,從而獲得傳輸信息「hello world」。
採用非對稱加密演算法即使第三方在網路上截獲到密文,但其無法獲得接收方的私鑰,也就無法對密文進行解密,作為接收方務必保證自己私鑰的安全,所以非對稱加密技術解決了密鑰傳輸過程的安全性問題。
本文主要闡述對稱加密技術和非對稱加密技術的概念和特點,並舉例說明。對稱加密是通信雙方共用密鑰,無法保證密鑰的安全傳遞;非對稱加密使用接收方的公鑰對數據加密,接收方使用自己的私鑰解密,即使信息被第三方截獲,由於沒有接收方的私鑰,也無法破解密文。