資料竊取
資料篡改
身份偽裝
凱撒密碼
凱撒密碼是一種簡單的對稱加密演算法
通過平移得到密文
明文:hello world
演算法:向右平移
秘鑰:3
密文:khoor zrug
演算法:向左平移
秘鑰:3
對稱加密演算法
des特點:
已經不適用了,不安全
秘鑰長度:8位元組
(64位),每7位提供乙個校驗位。
對大的檔案進行分組切割,分組長度:8位元組
如果分組長度不足8位元組需要填充
3des
特點:進行3次des
加密過程:
加密-》解密-》加密
以解密為加密手段,目的是為了和des相容
解密過程:
解密-》加密-》解密
過渡的演算法
安全,可以使用
秘鑰長度:8 * 3 = 24位元組
分組長度:8位元組
(與des相同)
三個秘鑰的關係:(了解)
秘鑰1 與秘鑰2相同,或者秘鑰2與秘鑰3相同。相當於des(相容)
如果秘鑰1與秘鑰3不同,3des-ede3
如果秘鑰1與秘鑰3相同同,3des-ede2
aes特點:
主流演算法(推薦)
秘鑰:128(16位元組),192(24位元組),256位(32位元組)
分組:16位元組
(128位元)
加密效率高,更加安全 演算法
秘鑰長度
分組備註
des8
8需要填充(不建議使用)
3des248
可以使用
aes16,24,32
16推薦使用
五種分組模式
ecb模式
對明文進行切割,具體分組長度由演算法決定
對每乙個明文分組進行單獨加密
高效輸入規律的資料,可以得到規律的輸出,不安全
由於直接對分組進行加密,所以需要填充
不要使用ecb模式
填充思路
最後差幾位就填充幾位幾,比如差3位就填充3個3,不差就填充8個8(因為解密時並不知道要不要去掉最後的值,所以一律都新增)
cbc模式
分組,長度與演算法相同
需要填充
後乙個分組的輸入來自於前乙個分組的加密結果
這樣就可以避免輸入規律的資料得到規律的資料,更加安全
不能並行加密。
先異或,再加密
需要額外提供乙個初始化向量(iv:init vector)
要求:iv的長度,與分組長度一致(des:8bytes,aes:16位元組)
異或加密
8:0000,1000
9:0000,1001
&–》0000,1000–》8
8:0000,1000
9:0000,1001
|–》0000,1001–》9
8:0000,1000
9:0000,1001
^–》0000,0001–》1
明文:8
演算法:異或
秘鑰:9
密文:1
密文:1
演算法:異或
秘鑰:9
明文:8
異或加密,秘鑰相同,演算法相同
cfb模式
分組,長度與演算法相同
不需要填充
後乙個分組的輸入來自於前乙個分組的加密結果
這樣就可以避免輸入規律的資料得到規律的資料,更加安全
不能並行加密。
先加密,後異或
需要額外提供乙個初始化向量(iv:init vector)
要求:iv的長度,與分組長度一致(des:8bytes,aes:16位元組)
ofb模式
分組,長度與演算法相同
不需要填充
反覆對初始化向量進行加密,得到資料作為下乙個分組的輸入
需要額外提供乙個初始化向量(iv:init vector)
要求:iv的長度,與分組長度一致(des:8bytes,aes:16位元組)
ctr模式
需要提供乙個數字,每乙個分組都會加一
可以並行的加解密
推薦使用 對比
密碼學簡介
當使用者訪問以https開頭的 時,使用者的計算機 膝上型電腦,桌面裝置,手機或其他裝置 使用傳輸層安全 tls 將其安全地連線到web伺服器。tls結合了一系列加密操作,以確保沒有第三方可以理解傳送的內容 機密性 沒有第三方可以修改訊息而不被檢測 完整性 並且沒有第三方可以模仿乙個通訊方 真實性 ...
密碼學簡介(一)
本文簡單介紹密碼編碼學領域的一些基本原理,基本演算法和基本理念。僅針對原先對此領域無甚了解的朋友做入門之用。加密解密是資訊保安領域的基本技術,加解密系統中的基本概念從下面這張常規加密的簡化模型中就可以知道個大概。從圖中可以看出,明文輸入在金鑰k1的作用之下,通過加密演算法 如des 轉換成密文,於是...
密碼學 密碼學基礎
密碼學是研究編制密碼和破譯密碼的技術科學。密碼學的安全目標至少包含三個方面 保密性 完整性 可用性。完整性 資源只有授權方以授權的方式進行修改,所有資源沒有授權則不能修改。可用性 資源只有在適當的時候被授權方訪問,並按需求使用。密碼系統由5部分組成 1 明文空間m 全體明文的集合 2 密文空間c 全...