码迷,mamicode.com
首页 > 数据库 > 详细

C#对字符串的简单加密解密过程C#的SQL数据库登陆密码的加密解密加密还原直接复制代码使用即可

时间:2015-07-28 14:37:36      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

C#对字符串的简单加密解密过程C#的SQL数据库登陆密码的加密解密加密还原直接复制代码使用即可

 

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Security.Cryptography; 
using System.IO; 



namespace PDAPrint
{
    class ClassSecurityString
    {
        public static string encryptKey = "www.hanma-scan.com";    //定义密钥  

        public static string Encrypt(string str)  
        {    
            DESCryptoServiceProvider descsp = new DESCryptoServiceProvider();   //实例化加/解密类对象   
    
            byte[] key = Encoding.Unicode.GetBytes(encryptKey); //定义字节数组,用来存储密钥    
   
            byte[] data = Encoding.Unicode.GetBytes(str);//定义字节数组,用来存储要加密的字符串  
     
            MemoryStream MStream = new MemoryStream(); //实例化内存流对象      
  
            //使用内存流实例化加密流对象   
            CryptoStream CStream = new CryptoStream(MStream, descsp.CreateEncryptor(key, key), CryptoStreamMode.Write);     
  
            CStream.Write(data, 0, data.Length);  //向加密流中写入数据      
  
            CStream.FlushFinalBlock();              //释放加密流      
  
            return Convert.ToBase64String(MStream.ToArray());//返回加密后的字符串  
        }  
        


        /// <summary>  
        /// 解密字符串   
        /// </summary>  
        /// <param name="str">要解密的字符串</param>  
        /// <returns>解密后的字符串</returns>  
        public static string Decrypt(string str)  
        {      
            DESCryptoServiceProvider descsp = new DESCryptoServiceProvider();   //实例化加/解密类对象    
     
            byte[] key = Encoding.Unicode.GetBytes(encryptKey); //定义字节数组,用来存储密钥    
    
            byte[] data = Convert.FromBase64String(str);//定义字节数组,用来存储要解密的字符串  
      
            MemoryStream MStream = new MemoryStream(); //实例化内存流对象      
   
            //使用内存流实例化解密流对象       
            CryptoStream CStream = new CryptoStream(MStream, descsp.CreateDecryptor(key, key), CryptoStreamMode.Write);   
   
            CStream.Write(data, 0, data.Length);      //向解密流中写入数据     
  
            CStream.FlushFinalBlock();               //释放解密流      
  
            return Encoding.Unicode.GetString(MStream.ToArray());       //返回解密后的字符串  
        }  

    }
}


 

 

 

        private void button10_Click(object sender, EventArgs e)
        {
            string str = "123";     //记录输入的字符串     
            string strNew =ClassSecurityString.Encrypt(str);              //加密字符串 
            string strOld = ClassSecurityString.Decrypt(strNew);

            MessageBox.Show("【加密:" + strNew + @"】" + "【解密:" + strOld + @"】");
        }

 

 

汉码盘点机原创,转载请注明出处。

汉码盘点机——专注于傻瓜式的仓库条码管理,国内仓库条码管理整体解决方案领导品牌。

(官网:www.hanma-scan.com


 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

C#对字符串的简单加密解密过程C#的SQL数据库登陆密码的加密解密加密还原直接复制代码使用即可

标签:

原文地址:http://blog.csdn.net/anjoly/article/details/47103909

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!