亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C# 數據庫鏈接字符串加密解密工具代碼詳解

2019-10-29 21:02:18
字體:
來源:轉載
供稿:網友

有些項目尤其是WinForm或者是WPF項目,針對一些工具形式的小項目,不想軟件流出去之后,懂程序的的拿到手之后一看配置文件就知道了我們數據庫的用戶名和密碼,如果外網能訪問的話,那就麻煩大了。所以這里為了防止項目外泄之后這些信息不被別人看到,我們就需要對鏈接字符串或者其他重要信息進行加密,用的時候在解密。

思路:使用兩個數對連接字符串進行加密,再用這兩個數進行解密。

<add key="ConfigString" value="4HsXBRNXTkeN0ZoKdEwFE501TKSqLZUyJ0Zf+C7s5+gPd1SbWBiuh4PG6jeFgcnCTFr0QFW8FN40m/S8xmQq+8srL8taMLO23z6GSmaQJoM="/>

c#,數據庫,鏈接,字符串,加解密工具

直接上代碼:

1:定義一個初始化源數據的類。

public class ConfigInformation {  private static ConfigInformation _configInformation;  public ConfigInformation Instance  {   get   {    if (_configInformation == null)    {     _configInformation = new ConfigInformation();    }    return _configInformation;   }  }  // 數據庫鏈接字符串加解密 Key Value  public static String Key = "27e167e9-2660-4bc1-bea0-c8781a9f01cb";  public static String Vector = "8280d587-f9bf-4127-bbfa-5e0b4b672958"; }

2:加解密方法:

/// <summary> /// 加密 解密 /// </summary> public class DecryptAndEncryptionHelper {  private readonly SymmetricAlgorithm _symmetricAlgorithm;  private const String DefKey = "qazwsxedcrfvtgb!@#$%^&*(tgbrfvedcwsxqaz)(*&^%$#@!";  private String _key = "";  public String Key  {   get { return _key; }   set   {    if (!String.IsNullOrEmpty(value))    {     _key = value;    }    else    {     _key = DefKey;    }   }  }  private const String DefIV = "tgbrfvedcwsxqaz)(*&^%$#@!qazwsxedcrfvtgb!@#$%^&*(";  private String _iv = "";  public String IV  {   get { return _iv; }   set   {    if (!String.IsNullOrEmpty(value))    {     _iv = value;    }    else    {     _iv = DefIV;    }   }  }  public DecryptAndEncryptionHelper()  {   _symmetricAlgorithm = new RijndaelManaged();  }  public DecryptAndEncryptionHelper(String Key, String IV)  {   _symmetricAlgorithm = new RijndaelManaged();   _key = String.IsNullOrEmpty(Key) ? DefKey : Key;   _iv = String.IsNullOrEmpty(IV) ? DefIV : IV;  }  /// <summary>  /// Get Key  /// </summary>  /// <returns>密鑰</returns>  private byte[] GetLegalKey()  {   _symmetricAlgorithm.GenerateKey();   byte[] bytTemp = _symmetricAlgorithm.Key;   int KeyLength = bytTemp.Length;   if (_key.Length > KeyLength)    _key = _key.Substring(0, KeyLength);   else if (_key.Length < KeyLength)    _key = _key.PadRight(KeyLength, '#');   return ASCIIEncoding.ASCII.GetBytes(_key);  }  /// <summary>  /// Get IV  /// </summary>  private byte[] GetLegalIV()  {   _symmetricAlgorithm.GenerateIV();   byte[] bytTemp = _symmetricAlgorithm.IV;   int IVLength = bytTemp.Length;   if (_iv.Length > IVLength)    _iv = _iv.Substring(0, IVLength);   else if (_iv.Length < IVLength)    _iv = _iv.PadRight(IVLength, '#');   return ASCIIEncoding.ASCII.GetBytes(_iv);  }  /// <summary>  /// Encrypto 加密  /// </summary>  public string Encrypto(string Source)  {   byte[] bytIn = UTF8Encoding.UTF8.GetBytes(Source);   MemoryStream ms = new MemoryStream();   _symmetricAlgorithm.Key = GetLegalKey();   _symmetricAlgorithm.IV = GetLegalIV();   ICryptoTransform encrypto = _symmetricAlgorithm.CreateEncryptor();   CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Write);   cs.Write(bytIn, 0, bytIn.Length);   cs.FlushFinalBlock();   ms.Close();   byte[] bytOut = ms.ToArray();   return Convert.ToBase64String(bytOut);  }  /// <summary>  /// Decrypto 解密  /// </summary>  public string Decrypto(string Source)  {   byte[] bytIn = Convert.FromBase64String(Source);   MemoryStream ms = new MemoryStream(bytIn, 0, bytIn.Length);   _symmetricAlgorithm.Key = GetLegalKey();   _symmetricAlgorithm.IV = GetLegalIV();   ICryptoTransform encrypto = _symmetricAlgorithm.CreateDecryptor();   CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Read);   StreamReader sr = new StreamReader(cs);   return sr.ReadToEnd();  } }

3:使用

// 獲取加密的鏈接字符串,然后解密string enString = ConfigurationManager.AppSettings["ConfigString"];DecryptAndEncryptionHelper helper = new DecryptAndEncryptionHelper(ConfigInformation.Key, ConfigInformation.Vector);// 明文var configStr = helper.Decrypto(enString); return configStr;

這樣至少保證了數據的不外泄。

注意:這個加密和解密的算法方法,應該放在服務器。通過請求加解密方法。不應該放在本地代碼里,技術牛的的人,把你的項目反編譯一樣可以看到源代碼。

c#,數據庫,鏈接,字符串,加解密工具

c#,數據庫,鏈接,字符串,加解密工具

 我們在把加密源數據找出來。

c#,數據庫,鏈接,字符串,加解密工具

所以這個加解密代碼不能寫在本地,必須部署到安全的服務器上。

總結

以上所述是小編給大家介紹的C# 數據庫鏈接字符串加密解密工具代碼詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产美女扒开尿口久久久| 欧美一区二区色| 欧美日韩国产精品一区二区不卡中文| 国产在线一区二区三区| 久久精品99无色码中文字幕| 国产精品成人在线| 亚洲人成77777在线观看网| 奇米4444一区二区三区| 97香蕉久久夜色精品国产| 国产日本欧美在线观看| 亚洲偷欧美偷国内偷| 精品五月天久久| 精品久久香蕉国产线看观看亚洲| 美女撒尿一区二区三区| 欧美成人精品影院| 亚洲精品狠狠操| 97国产精品久久| 97精品一区二区视频在线观看| 国产精品∨欧美精品v日韩精品| 午夜精品久久久久久久99热| 亚洲第一男人av| 国产精品色视频| 亚洲国产成人精品一区二区| 日韩精品在线看| 少妇高潮久久77777| 久久99国产精品自在自在app| 一区二区三区无码高清视频| 国产亚洲日本欧美韩国| 成人福利视频网| 日韩免费黄色av| 97av在线视频免费播放| 中文字幕av一区中文字幕天堂| 欧美亚州一区二区三区| 亚洲最大av网| 亚洲欧美日韩中文视频| 久久亚洲春色中文字幕| 国产精品久久久久不卡| 国产视频999| 国产精品成人一区二区| 欧美色视频日本高清在线观看| 91久久精品日日躁夜夜躁国产| 日韩欧美亚洲国产一区| 九九久久综合网站| 欧美怡春院一区二区三区| 久久99热这里只有精品国产| 中文字幕欧美专区| 国产有码在线一区二区视频| 黑人欧美xxxx| 国产一区二中文字幕在线看| 一区二区三区日韩在线| 亚洲国产精彩中文乱码av| 欧美主播福利视频| 国产精品一区专区欧美日韩| 日韩欧美国产免费播放| 亚洲精品一区二区三区不| 95av在线视频| 精品av在线播放| 亚洲国产精久久久久久| 91免费版网站入口| 国产精品日韩在线播放| 一区二区三区黄色| 欧美激情视频一区| 久久久久久久电影一区| 国产男女猛烈无遮挡91| 精品一区电影国产| 亚洲欧洲一区二区三区久久| 91中文字幕在线观看| 欧美精品18videos性欧美| 久久精品99久久久久久久久| 亚洲一区二区三区毛片| 国产欧美精品在线播放| 久久天天躁狠狠躁夜夜躁2014| 国产精品91免费在线| 国产精品视频精品| 亚洲系列中文字幕| 4444欧美成人kkkk| 国产精品日韩av| 亚洲网站在线看| 亚洲a中文字幕| 日本久久久久久| 91在线直播亚洲| 欧美性xxxxx| 国产小视频91| 国产一区二区日韩| 亚洲91精品在线观看| 欧美黄色片免费观看| 欧美日韩另类字幕中文| 亚洲成av人乱码色午夜| 岛国av一区二区| 亚洲国产精品人久久电影| 欧美一级视频免费在线观看| 国产精品成人国产乱一区| 精品人伦一区二区三区蜜桃网站| 一区二区三区天堂av| 欧美电影院免费观看| 国产精品美女午夜av| 欧美精品亚州精品| 亚洲人成电影在线播放| 亚洲图片在线综合| 久久久国产91| 亚洲丁香久久久| 日韩有码在线播放| 亚洲自拍偷拍福利| 97不卡在线视频| 中文字幕亚洲一区二区三区五十路| 欧美日韩福利在线观看| 欧美激情国产高清| 久热99视频在线观看| 国产精品久久99久久| 欧美日韩国产区| 不卡av在线网站| 国产综合色香蕉精品| 成人两性免费视频| 欧美激情性做爰免费视频| 在线视频精品一| 日韩av电影在线免费播放| 国产欧美最新羞羞视频在线观看| 亚洲午夜女主播在线直播| 91经典在线视频| 日韩免费在线播放| 高清视频欧美一级| 久久精品国产亚洲精品2020| 精品国产乱码久久久久酒店| 最新中文字幕亚洲| 成人乱人伦精品视频在线观看| 欧美大肥婆大肥bbbbb| 亚洲人成77777在线观看网| 国内精品一区二区三区| 欧美日韩中文字幕| 亚洲欧美另类国产| 热久久这里只有| 中文字幕av日韩| 欧美在线性爱视频| 国产区精品视频| 亚洲精品日韩欧美| 欧美电影第一页| 国内揄拍国内精品少妇国语| 亚洲最大在线视频| 日韩成人av网址| 韩国v欧美v日本v亚洲| 亚洲美女免费精品视频在线观看| 日韩在线视频免费观看高清中文| 亚洲精品国产欧美| 亚洲午夜精品久久久久久性色| 日韩精品视频观看| 亚洲最大福利视频网站| 国产一区在线播放| 亚洲激情久久久| 久久手机免费视频| 国产中文日韩欧美| 久久久久久久久久久91| 亚洲精品电影久久久| 97人人爽人人喊人人模波多| 国产乱肥老妇国产一区二| 亚洲第一中文字幕在线观看| 久久精品久久精品亚洲人| 中文字幕精品一区久久久久| 综合国产在线视频| 国产成人免费91av在线| 中文字幕日韩欧美精品在线观看| 日韩精品在线私人| 亚洲欧美中文在线视频| 久久久999精品免费| 亚洲自拍小视频免费观看|