• DES加密解密


        /// <summary>
        /// 字符串加密解密类
        /// </summary>
        public sealed class StringSecurity
        {
            private StringSecurity() { }
    
            #region DES 加密/解密
    
            private static byte[] key = ASCIIEncoding.ASCII.GetBytes("uiertysd");
            private static byte[] iv = ASCIIEncoding.ASCII.GetBytes("99008855");
    
            /// <summary>
            /// DES加密。
            /// </summary>
            /// <param name="inputString">输入字符串。</param>
            /// <returns>加密后的字符串。</returns>
            public static string DESEncrypt(string inputString)
            {
                MemoryStream ms = null;
                CryptoStream cs = null;
                StreamWriter sw = null;
    
                DESCryptoServiceProvider des = new DESCryptoServiceProvider();
                try
                {
                    ms = new MemoryStream();
                    cs = new CryptoStream(ms, des.CreateEncryptor(key, iv), CryptoStreamMode.Write);
                    sw = new StreamWriter(cs);
                    sw.Write(inputString);
                    sw.Flush();
                    cs.FlushFinalBlock();
                    return Convert.ToBase64String(ms.GetBuffer(), 0, (int)ms.Length);
                }
                finally
                {
                    if (sw != null) sw.Close();
                    if (cs != null) cs.Close();
                    if (ms != null) ms.Close();
                }
            }
    
            /// <summary>
            /// DES解密。
            /// </summary>
            /// <param name="inputString">输入字符串。</param>
            /// <returns>解密后的字符串。</returns>
            public static string DESDecrypt(string inputString)
            {
                MemoryStream ms = null;
                CryptoStream cs = null;
                StreamReader sr = null;
    
                DESCryptoServiceProvider des = new DESCryptoServiceProvider();
                try
                {
                    ms = new MemoryStream(Convert.FromBase64String(inputString));
                    cs = new CryptoStream(ms, des.CreateDecryptor(key, iv), CryptoStreamMode.Read);
                    sr = new StreamReader(cs);
                    return sr.ReadToEnd();
                }
                finally
                {
                    if (sr != null) sr.Close();
                    if (cs != null) cs.Close();
                    if (ms != null) ms.Close();
                }
            }
  • 相关阅读:
    【长篇高能】ReactiveCocoa 和 MVVM 入门
    圆形头像
    C#开发学习——.net C#中页面之间传值传参的方法以及内置对象
    C#开发学习——内联表达式
    C#开发学习——ADO.NET几个重要对象
    Android开发学习——动画
    Android开发学习—— Fragment
    Android开发学习—— ContentProvider内容提供者
    Android开发学习—— Service 服务
    Android开发学习—— Broadcast广播接收者
  • 原文地址:https://www.cnblogs.com/xiaowie/p/8664059.html
Copyright © 2020-2023  润新知