DES加密演算法

2021-04-25 17:55:59 字數 1987 閱讀 1591

命名空間:system.security.cryptography

定義訪問資料加密標準 (des

) 演算法的加密服務提供程式 (csp) 版本的包裝物件。無法繼承此類。

測試1加密頁面

protected void page_load(object sender, eventargs e)

response.redirect("a.aspx?s="+(@s));

// encrypt the string.

public static byte encrypt(string plaintext, symmetricalgorithm key)

解密頁面

if (session["key"] != null)

, stringsplitoptions.removeemptyentries);

int len = sarr.length;

byte buffer = new byte[len];

for (int i = 0; i < len; i++)

string plaintext = decrypt(buffer, key);

response.write(plaintext);}}

}// decrypt the byte array.

public static string decrypt(byte cyphertext, symmetricalgorithm key)

這裡是應用了session 的object值型別和msdn上的例子結合自己的業務需求做的,但是我如果要實現這種加密和解密不可能在伺服器上存個session,所以我要把key整成字串,以前弄過xml的加密解密的,只在把key.key 轉成我的的字串保留下來就ok了,但是後來發現不能這樣,後在網上搜到一資料

using system;

using system.text;

using system.globalization;

using system.security.cryptography;

class des

// 加密字串

public string encryptstring(string sinputstring, string skey)

// 解密字串

public string decryptstring(string sinputstring, string skey)

descryptoserviceprovider des = new descryptoserviceprovider();

des.key = asciiencoding.ascii.getbytes(skey);

des.iv = asciiencoding.ascii.getbytes(skey);

icryptotransform desencrypt = des.createdecryptor();

byte result = desencrypt.transformfinalblock(data, 0, data.length);

return encoding.utf8.getstring(result);}}

class test

]", s0);

console.writeline("加密: ", s1);

console.writeline("解密: ", s2);}}

/* 程式輸出:

原串: [中國軟體 - csdn.net]

加密: [e8-30-d0-f2-2f-66-52-14-45-9a-dc-c5-85-e7-62-9b-ad-b7-82-cf-a8-0a-59-77]

解密: [中國軟體 - csdn.net]

*/按照上面的再改一下

可以成功,但是為什麼自己的會失敗呢,原來**中少了乙個東西 des.iv,是乙個什麼初始化向量呵呵,

看來ms的東西用是好用,但是出了問題或是自己想搞深點就不行了呀

後來自己加了這一行後,一切ok

DES加密演算法

include include include include using namespace std const static char ip table 64 初始置換 const static char ipr table 64 初始逆置換表 static const char extensi...

對稱加密演算法 DES加密演算法

一 對稱加密演算法 對稱加密也稱為常規加密 私鑰或單鑰加密。乙個對稱加密由5部分組成 明文 plaintext 這是原始資訊或資料,作為演算法的輸入。加密演算法 encryption algorithm 加密演算法對明文進行各種替換和轉換。金鑰 secret key 金鑰也是演算法的輸入。演算法進行...

加密演算法之DES演算法

一 des演算法 美國國家標準局1973年開始研究除國防部外的其它部門的計算機系統的資料加密標準,於1973年5月15日和1974年8月27日先後兩次向公眾發出了徵求加密演算法的公告。加密演算法要達到的目的 通常稱為des 密碼演算法要求 主要為以下四點 提供高質量的資料保護,防止資料未經授權的洩露...