打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DESC加密解密
        /// <summary>
        /// 对数据进行加密
        /// </summary>
        /// <param name="encryptstring">需要加密的数据</param>
        /// <returns></returns>
        public string DESEncrypt(string encryptstring)
        {
            string strRtn;
            try
            {
                DESCryptoServiceProvider desc = new DESCryptoServiceProvider();   //des进行加密
                PasswordDeriveBytes encryptkey = new PasswordDeriveBytes(encryptstring, null);//产生key
                byte[] key = encryptkey.GetBytes(8);
                byte[] data = System.Text.Encoding.Unicode.GetBytes(encryptstring);//取到密码的字节流
                MemoryStream ms = new MemoryStream();                            //用来存储加密后的数据                           
                CryptoStream cs = new CryptoStream(ms, desc.CreateEncryptor(key, key), CryptoStreamMode.Write); //进行加密
                cs.Write(data,0,data.Length );
                cs.FlushFinalBlock();                                            //用缓冲区的当前状态更新基础数据源或存储库,随后清除缓冲区
                strRtn = Convert.ToBase64String(ms.ToArray());                   //将整个流内容写入字节数组,转换到字符串返回
                return strRtn;
            }
            catch (Exception ex)
            {
                //弹出捕获的异常信息
                MessageBox.Show("错误:"+ex.Message ,"错误消息提示框",MessageBoxButtons.OKCancel,MessageBoxIcon.Error );
                return null ;
            }
        }
        /// <summary>
        /// 对数据进行解密
        /// </summary>
        /// <param name="decryptstring">需要解密的数据</param>
        /// <returns></returns>
        public string DESDecrypt(string decryptstring)
        {
            string strRtn;
            try
            {
                //定义访问数据加密标准(DES)算法的加密服务提供程序(CSP)版本的包装对象
                DESCryptoServiceProvider desc = new DESCryptoServiceProvider();
                PasswordDeriveBytes encryptkey = new PasswordDeriveBytes(decryptstring, null);//产生key
                byte[] key = encryptkey.GetBytes(8);
                byte[] data = Convert.FromBase64String(decryptstring);
                MemoryStream ms = new MemoryStream();                            //用来存储解密后的数据                           
                CryptoStream cs = new CryptoStream(ms, desc.CreateEncryptor(key, key), CryptoStreamMode.Write);
                cs.Write(data, 0, data.Length);                                  //进行解密
                cs.FlushFinalBlock();                                            //用缓冲区的当前状态更新基础数据源或存储库,随后清除缓冲区
                strRtn = System.Text.Encoding.Unicode.GetString(ms.ToArray());   //将整个流内容写入字节数组
                return strRtn;
            }
            catch (Exception ex)
            {
                //弹出捕获的异常信息
                MessageBox.Show("错误:" + ex.Message, "错误消息提示框", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
                return null;
            }
        }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
DES字符串加密解密类实例代码
C#各种加密算法的实现
常用数据加密和解密方法汇总
RSA加密解密及RSA签名和验证
C#的DES加密解密算法
3DES加密算法 - 5、算法--Algorithm - 大头
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服