早期的加密型別,安全性較低。大體有:des,des3(或者叫做3des),aes,rc2等.net中對應的命名空間為:(部分)
aes:system.security.cryptography.aescryptoserviceprovider
des:system.security.cryptography.descryptoserviceprovider
rc2:system.security.cryptography.rc2cryptoserviceprovider
rijndaelmanaged:system.security.cryptography.rijndaelmanaged
加密和解密時使用不同金鑰,分為公鑰和私鑰。這樣即使別人破解了密文但不知道私鑰也就無法修改。大體有:dsa,rsa,d-h,ecdh(橢圓曲線)等.net中對應的命名空間為:(部分)
dsa:system.security.cryptography.dsa
rsa:system.security.cryptography.rsa
ecdh:system.security.cryptography.ecdiffiehellman
具體加解密包**於網路,可以基於.net自身的進行完善。這裡只介紹使用
金鑰長度為128/192/256位
初始化向量16個位元組,key用32個位元組
測試:
密文"hellow world"
金鑰new string('h', 32)
加密結果:
39,249,2,51,67,184,116,198,8,184,38,78,63,214,223,196
解密:hellow world
key和初始化向量都用8個位元組
密文"hellow world"
金鑰new string('h', 8)
加密結果:
236,32,72,25,145,219,140,175,102,86,40,208,86,65,144,154
解密:hellow world
用法和des一樣,這裡略過
密文"hellow world"
金鑰n/a(公鑰,私鑰均不使用oaep填充的情況)
加密結果:
188,230,28,149,191,101,249,129,182,43,49,69,188,183,253,13,157,55,121,114,10,87,
244,158,38,213,31,128,221,213,182,65,179,131,186,94,73,165,161,5,61,163,60,217,5
8,113,211,143,186,86,127,96,247,155,10,16,200,163,193,150,80,111,152,163,156,131
,191,169,251,27,225,101,99,16,201,252,215,252,68,101,171,245,60,185,8,74,105,117
,79,200,100,80,180,40,135,129,44,26,18,3,190,37,241,225,172,133,197,206,37,198,8
8,89,205,167,186,21,216,135,202,190,184,88,32,194,210,85,212,231
解密:hellow world
參考資料
維基百科:資料加密標準
加密解密概述及.net中對加密解密的支援(二)
常用加解密方法彙總 工具
常用加密演算法
常用加密演算法 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...