關於des加密解密由於專案中用到了,主要用在了對登入的使用者名稱進行加密解密。乙個程式某些關鍵資訊肯定是要有安全性要求的,這個時候其實就需要加密和解密的過程,保障起安全性。
des,全稱data encryption standard,是一種對稱加密演算法。由於其安全性比較高(有限時間內,沒有一種加密方法可以說是100%安全),很可能是最廣泛的金鑰系統(我們公司也在用,估計你們也有在用....),唯一一種方法可以破解該演算法,那就是窮舉法。
加密和解密本身是一門很複雜的學科,本文淺操,我就不去**起加密的過程和原理。如果要深究的話,肯定是要花寫精力的,寫這篇文章只有兩個方法,乙個是加密,乙個是解密的。比較簡潔,送給小白。引用的命名空間是using system.security.cryptography,用到了一下類
descryptoserviceprovider:定義訪問資料加密標準,演算法的加密服務提供程式 (csp) 版本的包裝物件
memorystream:記憶體流
cryptostream:加密資料流的轉換
des加密解密的過程主要有四個引數參與其中:明文、金鑰、向量、加密結果。他們之間的關係很好理解,加密過程是這樣的,加密結果=明文+金鑰+向量,反之也是一樣的。值得注意的是金鑰和向量字串長度必須為8.
國際慣例上圖:
/// /// c# des解密方法///
/// 待解密的字串
/// 金鑰
/// 向量
/// 解密後的字串
public static string desdecrypt(string encryptedvalue, string key, string iv)
)return encoding.utf8.getstring(ms.toarray());}}
}}
/// /// c# des加密方法///
/// 要加密的字串
/// 金鑰
/// 向量
/// 加密後的字串
public static string desencrypt( string originalvalue, string key, string iv)
)return convert.tobase64string(ms.toarray());}}
}}
C DES 加密解密
using system.security.cryptography using system.io des加密解密演算法 借助ms vs的類庫 適用於長內容的加密 待加密的資料 public static string encode string data des解密 待解密的字串 public ...
c DES 加密解密
using system using system.io using system.text using system.security.cryptography class test static byte bkey new byte 8 金鑰 static byte iv new byte 8 ...
C DES加密解密
des 加解密 public class des des加密 待加密的字串 加密金鑰 public static string encrypt string encryptstring,byte key,byte iv des解密 待解密的字串 解密金鑰,要求為8位,和加密金鑰相同 解密成功返回解密...