public class DESEncryptWrapper { #region Fields #endregion #region Properties #endregion #region Methods /// <summary> /// Encrypt an inputed string /// </summary> /// <param name="sourceString"></param> /// <param name="key"></param> /// <returns></returns> public static string Encrypt(string sourceString, string key) { string resString = string.Empty; try { byte[] data = Encoding.UTF8.GetBytes(sourceString); DESCryptoServiceProvider des = new DESCryptoServiceProvider(); des.Key = ASCIIEncoding.ASCII.GetBytes(key); des.IV = ASCIIEncoding.ASCII.GetBytes(key); ICryptoTransform desencrypt = des.CreateEncryptor(); byte[] resultData = desencrypt.TransformFinalBlock(data, 0, data.Length); resString = BitConverter.ToString(resultData); } catch (Exception ex) { throw ex; } return resString; } /// <summary> /// Decrypt an inputed string /// </summary> /// <param name="resultString"></param> /// <param name="key"></param> /// <returns></returns> public static string Decrypt(string resultString, string key) { string sourceString = string.Empty; try { string[] resultArray = resultString.Split("-".ToCharArray()); byte[] data = new byte[resultArray.Length]; for (int i = 0; i < resultArray.Length; i++) { data[i] = byte.Parse(resultArray[i], NumberStyles.HexNumber); } DESCryptoServiceProvider des = new DESCryptoServiceProvider(); des.Key = ASCIIEncoding.ASCII.GetBytes(key); des.IV = ASCIIEncoding.ASCII.GetBytes(key); ICryptoTransform desdecrypt = des.CreateDecryptor(); byte[] source = desdecrypt.TransformFinalBlock(data, 0, data.Length); sourceString = Encoding.UTF8.GetString(source); } catch (Exception ex) { throw ex; } return sourceString; } /// <summary> /// Generate key /// </summary> /// <returns></returns> public static string GenerateKey() { string key = string.Empty; try { DESCryptoServiceProvider desCrypto = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create(); key = ASCIIEncoding.ASCII.GetString(desCrypto.Key); } catch (Exception ex) { throw ex; } return key; } //string key = DESEncryptWrapper.GenerateKey(); //string enPassword = DESEncryptWrapper.Encrypt(password, key); #endregion }