常用加密演算法

2021-10-25 13:47:21 字數 1988 閱讀 6516

url編碼

base32/64/58

對稱加密演算法

非對稱加密演算法

摘要演算法/ 單向加密/ 雜湊加密/ 雜湊演算法

用乙個位元組(7個或8個二進位制位) 定義了128個字元 (96 個可列印字元, 32 個控制字元)

英語中用128個符號編碼便可以表示所有

幾個常見字母的ascii碼: 「0-9」為 48-57; 「a-z」為65-90;「a-z」為97-122;

想要用固定位元組, 將世界上所有的符號都納入其中

utf-8

根據不同的符號自動選擇編碼的長短, 英文用乙個位元組,漢字用兩個

瀏覽器url只能使用英文本母、阿拉伯數字和某些標點符號,

**要使用漢字只能編碼後使用

url編碼其實就是乙個字元ascii碼的十六進製制, 前面加上「%」

「\」的url編碼就是%5c

基於32/64/58個可列印字元來表示二進位制資料的方法

就是把 二進位制 --轉換為–> 字元

base32的編碼表是由(a-z、2-7)32個可見字元構成,「=」符號用作字尾填充。

base64的編碼表是由(a-z、a-z、0-9、+、/)64個可見字元構成,「=」符號用作字尾填充。

base58的編碼表相比base64少了數字0,大寫字母i,o,小寫字母 l (這個是l),以及符號『+』和『/』

1234567--base32編碼–>gezdgnbvgy3q====

特徵:大寫字母和數字,不滿5的倍數,用『=』補齊。

1234567--base64編碼–>mtizndu2nw==

特徵:大小寫字母和數字,不滿3的倍數,用『=』補齊。

1234567--base58編碼–>2s8yyfs4vc演算法

位數加密後字元

特點/用途

base16

原先的2倍

數字0-9,大寫字母a-f

就是16進製制轉ascii

base32

原先的8/5倍

大寫字母(a-z)數字234567

字元不足用「=」補齊

base64

轉換後比原有的字串長1/3

大寫字母(a-z),小寫字母(a-z),數字(0-9)以及+/

字元不足用「=」補齊

rot5

數字(0-9)

只對數字進行編碼,用當前數字往前數的第5個數字替換當前數字:0>5, 1>6

使用同一套金鑰進行加密和解密

加密方法encodekey

c=ek( p )

解密方法decodekey

p=dk( c )

加密方法

c=ek3( dk2( ek1( p ) ) )

解密方法

p=dk1( ek2( dk3( c ) ) )

國密 硬體實現

國密 軟體實現

金鑰名稱128、192、256位

每個密碼以私鑰(secret key)和公鑰(public key)成對出現,

公鑰加密,私鑰解密,反之亦然

相對於對稱加密,速度很慢,一般不用於加密,而是秘鑰交換

國密

只能加密不能解密

輸出長度為 128bits 的乙個串 (通常用 16 進製 表示為 32 個字元)

由數字「0-9」和字母「a-f」所組成的字串

國密帶秘密金鑰的hash函式

相容了md和sha演算法的特性,並在此基礎上加上了金鑰

40個字元

核心思想是「雜湊計算需要更大的記憶體空間和時長」

追求更大的記憶體消耗和計算時間,以有效阻止asic專用礦機。

生成的密文是60位

主要是能實現每次加密的值都是不一樣

常用加密演算法

常用加密演算法 des data encryption standard 對稱演算法,資料加密標準,速度較快,適用於加密大量資料的場合 3des triple des 是基於des的對稱演算法,對一塊資料用三個不同的金鑰進行三次加密,強度更高 rc2和rc4 對稱演算法,用變長金鑰對大量資料進行加密...

常用加密演算法

平時經常會遇到一些加密解密之類的處理,特編寫成乙個專門的類,以後只需要呼叫即可!用法很簡單,例項化類之後呼叫相關方法就行!會對應返回加密解密後的字串!using system using system.collections.generic using system.text using syste...

常用加密演算法

一 對稱性加密演算法 aes,des,3des des是一種分組資料加密技術 先將資料分成固定長度的小資料塊,之後進行加密 速度較快,適用於大量資料加密,而3des是一種基於des的加密演算法,使用3個不同密匙對同乙個分組資料塊進行3次加密,如此以使得密 度更高。相較於des和3des演算法而言,a...