加密對稱(一)

2021-10-10 07:33:34 字數 3021 閱讀 9186

知識點大綱介紹

訊息認證碼

數字簽名

證書ssl/tls - https

為什麼要加密, 以及解決方案

保證資料安全

加密三要素

演算法 常用的兩種加密方式

非對稱加密

私鑰 - 需要妥善保管的秘鑰, 知道的人越少越好

特點:

凱撒密碼

愷撒密碼(caesar cipher)是一種相傳尤利烏斯·愷撒曾使用過的密碼。愷撒於西元前100年左右誕生於古羅馬,是一位著名的軍事統帥。

愷撤密碼是通過將明文中所使用的字母表按照一定的字數「平移」來進行加密的。

凱撒密碼中的加密三要素

秘鑰 演算法

凱撒密碼的安全性

不安全密碼資訊保安常識

密碼資訊威脅

思考:資訊保安處理必須要具備哪些特性?

以分組為單位進行處理的密碼演算法稱為分組密碼(blockcipher)

編碼的概念

g = 1024m

m = 1024kbyte

byte = 8bit

bit 0/1

計算機的操作物件並不是文字,而是由0和1排列而成的位元序列

將現實世界中的東西對映為位元序列的操作稱為編碼(encoding)

加密 -> 編碼

解密 -> 解碼

hello world -> 位元序列

h -> int 104 ->

des – data encryption standard

是不是分組密碼?

des的分組長度?

des的秘鑰長度?

3des – triple-des

演算法描述?

是不是分組密碼?

3des分組長度?

3des秘鑰長度?

3des加密過程?

3des解密過程?

aes – advanced encryption standard

是不是分組密碼?

aes分組長度?

aes秘鑰長度?

按位異或

舉例:

100

0---->81

011--

-->

11--

----

----

----

----

----

-按位異或一次00

11----

>31

011--

-->

11--

----

----

----

----

----

-按位異或兩側10

00----

->8==

====

====

====

====

====

====

*****==

a =8

b =11

a 和 b按位異或1次 ==

> 加密

得到的結果再次和 b 按位異或 ==

=> 解密

ecb - electronic code book, 電子密碼本模式

不需要初始化向量

cbc - cipher block chaining, 密碼塊鏈模式

需要乙個初始化向量 - 乙個陣列

cfb - cipher feedback, 密文反饋模式

不需要填充

ofb - output-feedback, 輸出反饋模式

不需要填充

ctr - counter, 計數器模式

不需要填充

最後乙個明文分組的填充

使用 ofb, cfb, ctr不需要填充

初始化向量 - iv

加解密使用的初始化向量相同

des3des

aes

# 加密流程:

1. 建立乙個底層使用des/

3des/aes的密碼介面

"crypto/des"

func

newcipher

(key [

]byte

)(cipher.block,

error

) # -- des

func

newtripledescipher

(key [

]byte

)(cipher.block,

error

) # --

3des

"crypto/aes"

func

newcipher

(key [

]byte

)(cipher.block,

error

) # == aes

2. 如果使用的是cbc/ecb分組模式需要對明文分組進行填充

3. 建立乙個密碼分組模式的介面物件

- cbc

func

newcbcencrypter

(b block, iv [

]byte

) blockmode # 加密

- cfb

func

newcfbencrypter

(block block, iv [

]byte

) stream # 加密

- ofb

- ctr

4. 加密, 得到密文

對稱加密 非對稱加密

區別在於加密金鑰和解密金鑰是否一樣,一樣則是對稱加密,不一樣則是非對稱加密。對稱加密計算量小,但若不同的客戶端使用不能的金鑰時,伺服器的複雜大。常用的對稱加密包括 des 3des aes des 3des使用的架構為feistel。des金鑰長度為56位,3des相容des,可設定3個56位密碼,...

對稱加密 非對稱加密

1 對稱加密 對稱加密採用了對稱密碼編碼技術,它的特點是檔案加密和解密使用相同的金鑰,即加密金鑰也可以用作解密金鑰,這種方法在密碼學中叫做對稱加密演算法,對稱加密演算法使用起來簡單快捷,金鑰較短,且破譯困難,除了資料加密標準 des 另乙個對稱金鑰加密系統是國際資料加密演算法 idea 它比des的...

對稱加密 非對稱加密

演算法選擇 對稱加密aes,非對稱加密 ecc,訊息摘要 md5,數字簽名 dsa 對稱加密演算法 加解密金鑰相同 名稱金鑰長度 運算速度 安全性資源消耗 des56位較快低 中3des 112位或168位慢中 高aes 128 192 256位快高 低非對稱演算法 加密金鑰和解密金鑰不同 名稱成熟...