CA證書伺服器(2)非對稱式加密
在上篇博文中給大家留了一道作業,現在可以公佈答案了,在那道題目的4個選項中,也只有C算是比較靠譜,即“甲選取金鑰後通過雙方事先已有的共享金鑰加密後通過網路傳送給乙”,但這種方法中存在的問題也很明顯,那個“事先已有的金鑰”又是如何安全地在通訊雙方之間傳送的呢?
只靠對稱式加密演算法自身是無法解開這個金鑰管理的死結了,所以才又產生了另外一類與之完全不同的加密演算法——非對稱式加密。
非對稱加密就是為了解決對稱式加密的金鑰分配問題而產生的,非對稱式加密也稱為公鑰密碼系統,它要求金鑰必須成對出現,一個為公開金鑰(簡稱公鑰),一個為私有金鑰(簡稱私鑰),而且這兩個金鑰不能從其中一個推匯出另一個。
公鑰要釋出出去,私鑰則要保證絕對的安全,用公鑰加密的資訊只能用相應的私鑰解密,反之亦然。
使用非對稱式加密演算法進行資料加密時,傳送方使用接收方的公鑰加密資料,接收方使用自己的私鑰解密資料。如傳送方A要給接收方B傳送資料,其加/解密流程如下圖所示。
非對稱式加密的最大優點是金鑰管理簡單,相比對稱式加密具有更高的安全性,但它也有缺點,那就是因為演算法複雜,所以通訊效率不高,因而主要用於對小資料塊的加密。
既然對稱式加密的效率高,但金鑰管理困難,而非對稱式加密金鑰管理簡單,效率卻低,那將這兩種加密演算法結合起來使用是不是效果會更好呢?
在實踐中也正是這樣使用:資料加密採用對稱式加密,而用非對稱加密傳送對稱加密的金鑰。
正是通過非對稱式加密才最終解決了對稱式加密的金鑰管理難題。
RSA是最常用的非對稱加密演算法,由於軟考中涉及這個演算法的考題比較多,因而對它的基本原理做下簡單介紹:
- 選取2個素數p和q。
- 計算n=p*q,r=(p-1)*(q-1)。
- 隨機選取一個與r互質的整數d作為私鑰。
- 計算公鑰e,使得(e*d)mod r =1,即e和d的乘積,除以r,餘數為1。
RSA演算法也是先要將資料進行分組然後再分別進行加密,資料分組的長度是由n決定的,分組的長度必須小於等於log2n。
下面看幾道軟考的相關考題:
1、按照RSA演算法,若選兩奇數p=5,q=3,公鑰e=7,則私鑰d為 。
A.6 B.7 C.8 D.9
試題分析:根據RSA演算法原理,r=(p-1)*(q-1),即r=4*2=8,然後再根據(e*d)mod r =1的原則,將4個選項中的數值分別代入公式中計算,答案很明顯就是7了。
2、RSA是一種具有代表性的公鑰加密方法,如果選定了用於加解密的兩個素數分別為37、53,則每個分組的位數是 。
A.10 B.12 C.18 D.25
試題分析:p=37,q=53,則n=37*53=1961,按照分組的大小必須小於等於log2n的原則,2的10次方是1024,2的11次方是2048,1961介於1024和2048之間,所以分組的長度應該介於10位和11位之間,分組長度只能是整數位,所以也就是10位了。
瞭解了非對稱式加密之後,我們再來思考一個問題,在我們上面所講的加密過程中,都是用公鑰加密,用私鑰解密,那能否反過來,用私鑰加密,而用公鑰解密呢?
比如下面這道軟考的題目:
公鑰體系中,私鑰用於 (49) ,公鑰用於 (50) 。
(49)A.解密和簽名 B.加密和簽名 C.解密和認證 D.加密和認證
(50)A.解密和簽名 B.加密和簽名 C.解密和認證 D.加密和認證
這道題目的答案該選誰,簽名和認證又是什麼,呵呵,且聽下文分解。
本文轉自 yttitan 51CTO部落格,原文連結:http://blog.51cto.com/yttitan/1186191
相關文章
- 非對稱加密和數字證書加密
- 非對稱加密和證書總結加密
- 加密原理詳解:對稱式加密VS非對稱式加密加密
- 十二張圖:從0開始理解對稱/非對稱加密、CA認證、以及K8S各元件頒發證書原由加密K8S元件
- 對稱加密與非對稱加密加密
- 3分鐘告訴你什麼是 非對稱加密、對稱加密、公鑰、私鑰、數字證書、數字簽名、資訊摘要、中間人攻擊、CA、根證書加密
- 資料加密(對稱加密和非對稱加密)加密
- 對稱加密、非對稱加密、RSA(總結)加密
- 對稱加密、非對稱加密、RSA、訊息摘要、數字簽名、數字證書與HTTPS簡介加密HTTP
- 非對稱加密與安全證書看這一篇就懂了加密
- 編碼與加密(對稱加密與非對稱加密)加密
- https中的對稱加密和非對稱加密HTTP加密
- 對稱加密和非對稱加密(一)初步理解加密
- golang 密碼學-2. 非對稱加密Golang密碼學加密
- 非對稱加密與 jwt加密JWT
- RSA 非對稱加密&解密加密解密
- 非對稱加密體系加密
- 非對稱加密--RSA原理淺析加密
- 聊聊對稱/非對稱加密在HTTPS中的應用加密HTTP
- Linux SSH是什麼?對稱加密和非對稱加密有何區別?Linux加密
- Linux系統中對稱加密和非對稱加密區別是什麼?Linux加密
- 國密2 (sm2)非對稱加密解密工具--支援生成公鑰私鑰對及加密解密加密解密
- golang 中,非對稱加密的實現Golang加密
- 理解區塊鏈的非對稱加密區塊鏈加密
- 非對稱加密技術:共享祕鑰加密
- 非對稱加密演算法的思考加密演算法
- 使用 OpenSSL 建立私有 CA:2 中間證書
- ca 證書機制
- 對稱、非對稱的加密技術是如何對網站資料進行雙重加密?加密網站
- RSA非對稱加密演算法淺析加密演算法
- 非對稱加密中,加解密和簽名加密解密
- 應用加密1;非對稱加密演算法揭祕加密演算法
- 前後端資料加密傳輸 RSA非對稱加密後端加密
- android 安裝CA證書Android
- 數字證書認證(CA)中心
- 第四篇:非對稱加密及RSA加密演算法加密演算法
- 非對稱加密演算法-RSA演算法加密演算法
- 使用OpenSSL建立生成CA證書、伺服器、客戶端證書及金鑰伺服器客戶端
- PKI/CA與數字證書