密碼學 基礎概念(三)

2021-08-05 22:15:28 字數 1741 閱讀 1747

非對稱金鑰加密演算法

1、rsa演算法

過程:

選擇兩個大素數p,q,計算n=p*q

選擇乙個公鑰(加密金鑰)e,使其不是(p-1)和(q-1)的因子

選擇私鑰(解密金鑰)d,滿足條件:(d*e)mod (p-1)*(q-1)=1

加密時,從明文pt計算密文ct如下:ct=pt^e mod n,將密文ct傳送給接受方

解密時,從密文ct計算明文pt如下:pt=ct^d mod n

例子:

選擇兩個大素數p=47,q=71,計算n=p*q=3337

選擇乙個公鑰(加密金鑰)e,使其不是(p-1)=46和(q-1)=70的因子,42和70的因子有:2、5、7、23,所以選e=79

選擇私鑰(解密金鑰)d,滿足條件:(d*e)mod (p-1)*(q-1)=1,d可以取1019

加密時,從明文pt計算密文ct如下:ct=pt^e mod n,將密文ct傳送給接受方,ct=1133^79 mod 3337

解密時,從密文ct計算明文pt如下:pt=ct^d mod n

2、md5

2.1原理

第一步:填充

在原訊息中增加填充位,目的是使原訊息的長度等於乙個值,這個值比512的倍數少64位。若原首席資訊官度100位,則要填充512-64-100=348位。

第二步:增加長度

計算訊息的原長,不包括填充位,這個訊息原長表示為64位,新增到加進填充後的訊息末尾,這時,整個訊息就是512的倍數字。

第三步:將輸入分成512位的塊

第四步:初始化鏈結變數

第五步:處理塊

ssh工作原理

ssh有三個子協議:握手協議、記錄協議、警報協議。

握手協議是客戶機與服務機用ssl連線通訊時使用的第乙個子協議,每個握手資訊有三個字段:type(1位元組)、length(3位元組)、content(1或多個位元組),實際分四個階段:

(1)建立安全能力

首先是客戶機發給服務機的client hello資訊,包括版本引數、隨機數、session id、cipher suite加密套、compression method壓縮方法,然後伺服器響應並發回server hello資訊包含相同字段,但作用不同。

(2)伺服器鑑別與金鑰交換

伺服器將數字證書和根ca的整個鏈發給客戶機,使客戶機能用伺服器證書的伺服器公鑰鑑別伺服器,然後客戶機可以驗證伺服器傳送的證書,保證伺服器傳送的所有引數可以接受

(3)客戶機鑑別與金鑰交換

如果伺服器請求客戶機數字證書而客戶機沒有,則客戶機傳送乙個no certificate訊息,然後由伺服器決定是否繼續,接著客戶機生成48位元組的預備秘密,用伺服器的公鑰加密,然後交給伺服器

(4)完成

客戶機改變加密規範,客戶機完成,伺服器改變加密規範,伺服器完成。

記錄協議

在客戶機和伺服器握手成功後起作用,提供兩個服務:

保密性:使用握手協議定義的秘密金鑰實現

完整性:握手協議還定義了共享秘密金鑰(mac),用於保證資訊的完整性

過程:

分塊:將應用資訊分成小於或等於16kb的小塊

壓縮:小塊還可以壓縮,不能造成資料損失,要無損

增加mac:用握手協議中建立的共享秘密金鑰求出每個塊的mac資訊鑑別碼

加密:用秘密金鑰將上一步的輸出加密,可能會增加塊的總長,但增量不超過1024位元組

加頭:在加密塊中加頭,包含內容型別(8位)、主版本(8位)、次版本(8位)、壓縮長度(16位)

密碼學 密碼學基礎

密碼學是研究編制密碼和破譯密碼的技術科學。密碼學的安全目標至少包含三個方面 保密性 完整性 可用性。完整性 資源只有授權方以授權的方式進行修改,所有資源沒有授權則不能修改。可用性 資源只有在適當的時候被授權方訪問,並按需求使用。密碼系統由5部分組成 1 明文空間m 全體明文的集合 2 密文空間c 全...

密碼學概念

aes,advanced encryption standard,高階加密標準 des,data encryption standard,資料加密標準。64位的分組長度,金鑰為64bit,實際為56bit,含有8bit的奇偶校驗位。idea,international data encryption...

密碼學基礎

在正式講解https協議之前,我們首先要知道一些密碼學的知識。明文 明文指的是未被加密過的原始資料。密文 明文被某種加密演算法加密之後,會變成密文,從而確保原始資料的安全。密文也可以被解密,得到原始的明文。金鑰 金鑰是一種引數,它是在明文轉換為密文或將密文轉換為明文的演算法中輸入的引數。金鑰分為對稱...