Record it
DES encryption
Public Static stringDesencrypt (stringData,stringkey) { returnDesencrypt (Data, Key,"Utf-8"); }/// <summary> ///des encryption Algorithm/// </summary> /// <param name= "Data" >Encrypt plaintext</param> /// <param name= "key" >Key length is 8 characters</param> /// <param name= "CharSet" >character encoding</param> /// <returns>back to Redaction</returns> Public Static stringDesencrypt (stringData,stringKeystringCharSet) {DESCryptoServiceProvider des=NewDESCryptoServiceProvider (); Des. Key=ASCIIEncoding.ASCII.GetBytes (key); Des.iv=ASCIIEncoding.ASCII.GetBytes (key); byte[] Inputbytearray =encoding.getencoding (CharSet). GetBytes (Data); System.IO.MemoryStream Ms=NewSystem.IO.MemoryStream (); CryptoStream CS=NewCryptoStream (MS, Des. CreateEncryptor (), cryptostreammode.write); Cs. Write (Inputbytearray,0, inputbytearray.length); Cs. FlushFinalBlock (); byte[] ret =Ms. ToArray (); Cs. Close (); Ms. Close (); returnbytestohexstring (ret); } Public Static stringBytestohexstring (byte[] bytes) {System.Text.StringBuilder s=NewSystem.Text.StringBuilder (); foreach(byteBinchbytes) {S.append (b.tostring ("X2"). ToUpper ()); } returns.tostring (); }
Decrypt:
Public Static stringDesdecrypt (stringData,stringkey) { returnDesdecrypt (Data, Key,"Utf-8"); } /// <summary> ///DES decryption Algorithm/// </summary> /// <param name= "Data" >Ciphertext</param> /// <param name= "key" >Key length is 8 characters</param> /// <param name= "CharSet" >character encoding</param> /// <returns>plaintext</returns> Public Static stringDesdecrypt (stringData,stringKeystringCharSet) {DESCryptoServiceProvider des=NewDESCryptoServiceProvider (); Des. Key=ASCIIEncoding.ASCII.GetBytes (key); Des.iv=ASCIIEncoding.ASCII.GetBytes (key); byte[] Inputbytearray =hexstringtobytes (Data); System.IO.MemoryStream Ms=NewSystem.IO.MemoryStream (); CryptoStream CS=NewCryptoStream (MS, Des. CreateDecryptor (), cryptostreammode.write); Cs. Write (Inputbytearray,0, inputbytearray.length); Cs. FlushFinalBlock (); byte[] ret =Ms. ToArray (); Cs. Close (); Ms. Close (); returnencoding.getencoding (CharSet). GetString (ret); } Public Static byte[] Hexstringtobytes (stringhexstring) { if(HexString = =NULL) { Throw NewArgumentNullException ("hexstring"); } if((Hexstring.length &1) !=0) { Throw NewArgumentOutOfRangeException ("hexstring", HexString,"hexstring must contain an even number of characters."); } byte[] result =New byte[Hexstring.length/2]; for(inti =0; i < hexstring.length; i + =2) {Result[i/2] =byte. Parse (Hexstring.substring (i,2), Numberstyles.hexnumber); } returnresult; }
C#des Encryption