c# system.security.cryptography 提供了base64和xmlstring兩種方式,我更喜歡base64的
rsa是非對稱加密,經典的對稱加密就是des,aes等,不過這兩種演算法的缺點是加解密雙方都必須知道金鑰,安全性不高rsa**如下:rsa則可以解決這個問題,生成公鑰和私鑰,公鑰可以公開給其他人,私鑰自己保管,別人用公鑰加密後,自己用私鑰解密。
using system;
using system.collections.generic;
using system.security.cryptography;
using system.text;
using system.windows;
namespace rsa
", strtext);
string str1 = rsainstance.encrypt(strtext, dictk["publickey"]);
console.writeline("加密後的字串:", str1);
string str2 = rsainstance.decrypt(str1, dictk["privatekey"]);
console.writeline("解密後的字串:", str2);}}
public class rsautil
/// /// 私鑰解密
///
///
///
///
public string decrypt(string strentrytext, string strprivatekey)
/// /// 獲取公鑰和私鑰
///
///
public dictionarygetkey()
}}
using system;
using system.io;
using system.security.cryptography;
using system.text;
namespace aestest
");string key = "1234567890qwerty";//16位元組,128位
var encryptstr = encrypt(key, password);
console.writeline($"使用金鑰: 為原密碼: 加密");
console.writeline($"得到密文:");
console.writeline($"使用金鑰: 為密文: 解密");
var realpwd = decrypt(key, encryptstr);
console.writeline($"得到原密碼:");
}// aes 加密的初始化向量,加密解密需設定相同的值。預設值我們設定成 16 個 0
public static byte aes_iv = encoding.utf8.getbytes("0000000000000000");
// aes的key支援128位,最大支援256位。256位需要32個位元組。
// 所以這裡使用金鑰的前 32 位元組作為 key ,不足32補 0。
public static byte getkey(string pwd)
pwd = pwd.substring(0, 32);
return encoding.utf8.getbytes(pwd);
}/// /// 加密
///
/// 金鑰
/// 要被加密的原始密碼
/// 密文base64
public static string encrypt(string key, string password)
byte bytes = msencrypt.toarray();
return convert.tobase64string(bytes);}}
}}
/// /// 解密
///
/// 金鑰
/// 密文
/// 明文-原密碼
public static string decrypt(string key, string encryptstr)}}
}}
}}
aes加解密,不同語言之間,需要對上aes的模式,金鑰,向量, 編碼格式 加密解密RSA AES。(一)
資料加密技術的介紹及實踐過程。1.背景 1.1 資料加密 指利用密碼技術資訊進行加密,實現資訊隱蔽,從而達到保證資訊保安的目的。按照作用的不同,資料加密的技術分為資料傳輸加密技術,資料儲存加密技術,資料完整性鑑別技術和金鑰管理技術。1.1.1資料傳輸加密技術 有線路加密和端對端加密兩種。端對端加密指...
C 實現DES加密解密,AES加密解密
des演算法描述簡介 des是data encryption standard 資料加密標準 的縮寫。它是由ibm公司研製的一種加密演算法,美國國家標準局於1977年公布把它作為非機要部門使用的資料加密標準 它是乙個分組加密演算法,他以64位為分組對資料加密。同時des也是乙個對稱演算法 加密和解密...
C 加密解密
using system using system.text using system.globalization using system.security.cryptography class des 加密字串 public string encryptstring string sinputs...