加密解密的一些方法

2021-07-04 09:54:52 字數 3175 閱讀 8385

#region ----------------加密解密-------------

///

/// 解密

///

/// 被加密的字串

/// 加密的字串

///

public static string decrypt(string ptoencrypt, string skey)

//建立加密物件的金鑰和偏移量,此值重要,不能修改 

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

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

memorystream ms = new memorystream();

cryptostream cs = new cryptostream(ms, des.createdecryptor(), cryptostreammode.write);

cs.write(inputbytearray, 0, inputbytearray.length);

cs.flushfinalblock();

//建立stringbuild物件,createdecrypt使用的是流物件,必須把解密後的文字變成流物件 

stringbuilder ret = new stringbuilder();

return system.text.encoding.default.getstring(ms.toarray());

}///

/// 加密

///

/// 被加密的字串

/// 加密的字串

///

public static string encrypt(string ptoencrypt, string skey)

ret.tostring();

return ret.tostring();

}///

/// md5加密,但是加密有問題,加密出來不是32位,根據傳入的字元的長度數

///

/// 需要加密的字串

/// 加密後的字串

public static string encryptbymd5(string strmd5)

return result;

}///

/// des加密

///

/// 需要加密的字串

/// 金鑰,必須為8位

/// 加密後的字串

public static string encryptdes(string ptoencrypt, string skey)

else

str = convert.tobase64string(ms.toarray());

ms.close();

return str;}}

}///

/// 進行des解密。

///

/// 要解密的以base64

/// 金鑰,且必須為8位。

/// 已解密的字串。

public static string decryptdes(string ptodecrypt, string skey)

else

str = encoding.utf8.getstring(ms.toarray());

ms.close();

return str;}}

}///

/// md5加密,加密出來都是32位

///

/// 要加密的字串,返回小寫的

///

public static string encryptbymd5(string strmd5)

//返回大寫的

public static string md51(string inputstr)

#region *****===加密*****===

///

/// 加密

///

///

///

public static string encrypt(string text)

///

/// 加密資料 

///

///

///

///

public static string encrypt(string text, string skey)

return ret.tostring();

}#endregion

#region *****===解密*****===

///

/// 解密

///

///

///

public static string decrypt(string text)

///

/// 解密資料 

///

///

///

///

public static string decrypt(string text, string skey)

des.key = asciiencoding.ascii.getbytes(system.web.security.formsauthentication.hashpasswordforstoringinconfigfile(skey, "md5").substring(0, 8));

des.iv = asciiencoding.ascii.getbytes(system.web.security.formsauthentication.hashpasswordforstoringinconfigfile(skey, "md5").substring(0, 8));

system.io.memorystream ms = new system.io.memorystream();

cryptostream cs = new cryptostream(ms, des.createdecryptor(), cryptostreammode.write);

cs.write(inputbytearray, 0, inputbytearray.length);

cs.flushfinalblock();

return encoding.default.getstring(ms.toarray());

}#endregion

#endregion

一些常用的加密解密 編碼方法

加密,為了保證資料的安全性,防止傳輸的資料被截獲,可以直接得到有價值的資料。加密將我們操作或使用的資料進行處理,即使被解惑也獲取不到任何資訊,以此來保證資料的安全性。1 對稱加密 一把鑰匙既可以加密也可以解密,如果這把鑰匙被盜就傳輸的所有資料就會被截獲,安全性低,加解密速度快。des des演算法的...

密碼的加密解密方法

二 單字母表加密法 密碼學基本原理 1 傳送資訊的以防被稱為 信源 接收資訊的一方被稱為 信宿 2 信源傳送的原內容被稱為 明文 被加密之後的內容被稱為 密文 3 從明文轉換為密文的過程被稱為 加密過程 從密文轉換為明文的過程被稱為 解密過程 4 加密過程要是用兩個重要的要素 1 加密演算法 公開的...

常見的加密解密方法

加密 資料加密,預設加密物件是位元組 bytes str 字串 decode encode 自帶的庫 binasict 二進位制十六進製制 儲存單位 byte 位元組8位 1byte bit kb 1k 1024byte mb 1024kb gbtb 對稱加密 des aes 非對稱加密 rsa 單...