C# 如何在VisualStudio2010C中加密数据库列#
大家好,我有一个oracle数据库连接到我的网站,我在VisualStudio2010中使用c#语言创建了这个网站。我有一个表,其中保存了用户密码 当我在表中输入密码时,可以看到它(我不希望看到)。我希望它是加密的,以确保密码不能被视为一旦进入数据库。任何帮助都将不胜感激。 我的用户表如下所示:C# 如何在VisualStudio2010C中加密数据库列#,c#,mysql,asp.net,oracle,visual-studio-2010,C#,Mysql,Asp.net,Oracle,Visual Studio 2010,大家好,我有一个oracle数据库连接到我的网站,我在VisualStudio2010中使用c#语言创建了这个网站。我有一个表,其中保存了用户密码 当我在表中输入密码时,可以看到它(我不希望看到)。我希望它是加密的,以确保密码不能被视为一旦进入数据库。任何帮助都将不胜感激。 我的用户表如下所示: Create TABLE users ( user_id number(5) NOT NULL , user_username VARCHAR(30), user_password VA
Create TABLE users (
user_id number(5) NOT NULL ,
user_username VARCHAR(30),
user_password VARCHAR(20),
user_email VARCHAR(75),
user_street VARCHAR(50),
user_city VARCHAR(50),
user_state VARCHAR(2),
user_postcode VARCHAR(20),
user_phone VARCHAR(50),
PRIMARY KEY (user_id)
) ;
谢谢您可以使用哈希技术 公共安全 { 公共静态字符串HashSHA1(字符串值) { var sha1=System.Security.Cryptography.sha1.Create(); var inputBytes=Encoding.ASCII.GetBytes(值); var hash=sha1.ComputeHash(inputBytes)
var sb=new StringBuilder();
for(var i=0;i
}
在visual studio中,
cmd.Parameters.AddWithValue(“@password”,password)
cmd.Parameters.AddWithValue(“@password”,Security.HashSHA1(password))
//将存储为
用户ID |用户名|密码
1 |冲积沉积|我的秘密密码
2 |冲积沉积| F032680299B077AFB95093DE40822F62502B8251存储密码的最佳和常用方法是存储密码的散列 如下图所示:-
HASHBYTES('SHA1', convert(VARCHAR(20), @user_password)
通过添加hash
可以检查密码是否匹配
注意:-这里您可能也不知道数据库列中存储的实际密码是什么。因此,即使黑客入侵了你的整个数据库,他仍然无法知道密码
此外,您还可以在web上搜索与安全相关的更安全和加密的内容
以下是更多的链接:-
希望这对您正在寻找的内容有很大帮助。加密在进入数据库之前完成。感谢您的回复。我是否将此代码放入sql数据库或visual studio的某个位置?在保存数据时,必须在单击按钮时在visual studio中添加上述代码。您还需要在sql表中创建一列,在其中保存加密的密码。
HASHBYTES('SHA1', convert(VARCHAR(20), @user_password)