加密(编码)web.config中的信息(如:连接字符串)

本文介绍了一种使用Base64编码来保护应用程序配置文件中数据库连接字符串的方法。通过将明文字符串转换为Base64编码,可以增加字符串的安全性,防止直接读取。文章提供了编码和解码的C#代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们一般以下面的形式保存连接字符串:
      <appSettings>
          <add key="ConnectionString" value="server=localhost;database=test;pwd=sa;uid=sa;" />
      </appSettings>
现在,使用一个简单的加密,其实是base64编码而非加密。
  private void Button1_Click(object sender, System.EventArgs e)
  {   
   byte[] data = System.Text.ASCIIEncoding.ASCII.GetBytes(this.TextBox1.Text);
   string str  = Convert.ToBase64String(data);
   this.TextBox2.Text = str;   

  }

得到:c2VydmVyPWxvY2FsaG9zdDtkYXRhYmFzZT10ZXN0O3B3ZD1zYTt1aWQ9c2E7
之后,我们用这个字符串替换未编码的字符串。如下所示:
    <appSettings>
        <add key="ConnectionString"   value="c2VydmVyPWxvY2FsaG9zdDtkYXRhYmFzZT10ZXN0O3B3ZD1zYTt1aWQ9c2E7" />
    </appSettings>
我们的程序需要理解这个字符串的意义,我们在数据访问层里面添加如下的工具方法:
  private string GetConnectionString()
  {
   string strconn = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
   byte[] data = Convert.FromBase64String(strconn);
   string strRealConn = System.Text.ASCIIEncoding.ASCII.GetString(data);
   return strRealConn;
  }

转载于:https://www.cnblogs.com/xiaodi/archive/2005/03/22/123810.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值