从mysql数据库加载时解密数据

时间:2015-05-01 12:00:13

标签: c# mysql visual-studio-2012 encryption

这让我疯了!

我有一个小程序从mysql数据库获取数据。 表 tbl_credent 中有两列包含加密数据,称为 U_Password U_SecQu

我希望在加载到我的数据集时解密数据。

以下是按原样加载数据的函数:

    private void setBindSource()
    {
        string cmdString = "SELECT * FROM myDatabase.tbl_credent;";
        MySqlDataAdapter da = new MySqlDataAdapter(cmdString, _connection);
        //_connection is globally defined 
        ds = new System.Data.DataSet();
        da.Fill(ds);

        _BindSource = new System.Windows.Forms.BindingSource();
        _BindSource.DataSource = ds.Tables[0];
    }

我有一个解密数据的功能:

public string decryptData(string encryptedData, string password) 

这工作正常,但我现在不知道如何使用上述函数。

1 个答案:

答案 0 :(得分:2)

你必须逐个解密每个字符串:

将此代码放在da.Fill(ds);

之后
foreach (DataRow row in ds.Tables[0].Rows)
{
    row["U_Password"] = decryptData(row["U_Password"] as string, "password");
    row["U_SecQu"] = decryptData(row["U_SecQu"] as string, "password");
}