㈠ 資料庫怎麼加密
當數據被存儲時候被加密,它們被使用的時候就會自動加密。在其他的情況下,你可以選擇數據是否要被加密。sql Server資料庫可以加密下列這些組件:密碼存儲過程,視圖,觸發器,用戶自定義函數,默認值,和規則。
在伺服器和用戶之間傳輸的數據密碼加密SQL Server自動將你分配給登陸和應用角色的密碼加密。盡管當你可以從主資料庫中直接察看系統表格而不需要密碼。你不能給對這種情況作出任何修改,事實上,你根本不能破壞它。
定義加密在有些時候,如果對對象進行加密是防止將一些信息分享給他人。例如,一個存儲進程可能包含所有者的商業信息,但是這個信息不能和讓其他的人看到,即使他們公開的系統表格並可以看到對象的定義。這就是為什麼SQL Server資料庫允許你在創建一個對象的時候進行加密。為了加密一個存儲進程,使用下面形式的CREAT PROCEDURE 語句:
CREATEPROCEDUREprocerename[;number]
[@parameterdatatype
[VARYING][=defaultvalue][OUTPUT]]
[,]
[WITHRECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION]
我們關心的僅僅是可選的WITH參數。你可以詳細說明ARECOMPILE或者ENCRYPTION,或者你可以同時說明它們。ENCRYPTION關鍵字保護SQL Server資料庫它不被公開在進程中。結果,如果ENCRYPTION在激活的時候系統存儲進程sp_helptext就會被忽視,這個存儲進程將被存儲在用戶創建進程的文本中。
如果你不想要加密,你可以使用ALTER PROCEDURE,忽略WITH ENCRYPTION子句來重新創建一個進程。
為了能夠使用加密。用戶和伺服器都應該使用TCP/IP NetworkLibraries用來連接。運行適當的Network Utility和檢查Force protocol encryption,看下錶,用戶和伺服器之間的連接將不會被加密。
加密也不能完全自由。當連接確定後源碼天空
,要繼續其他的構造,並且用戶和伺服器必須運行代碼來解釋加密和解釋的包裹。這里將需要一些開銷並且當在編解碼的時候會使進程慢下來。
是否可以解決您的問題?
㈡ sql server中怎麼給資料庫表中的用戶密碼加密
1、首先我們電腦上要安裝有SQL Server,然後要准備一個MDF資料庫文件。打開SQL Server。
㈢ 如何實現資料庫連接的密碼加密
C#中有數據加密的類using System.Security.Cryptography,在這個類中你可以調用它的兩個方法分別是加密方法
public static string Encrypt(string text)
{}
解密方法
public static string Decrypt(string text)
{}
我們一般使用連接資料庫加密的話,都會使用一個配置文件在配置文件中對資料庫鏈接進行讀寫,通過加密方法把鏈接寫到配置文件,然後讀取的時候再使用解密方法。
㈣ mysql資料庫連接密碼的加密方法
最基本的做法就是使用加密工具,先把字元串加密,之後用配置文件的方法,添加到你的項目中;
然後通過程序的運行,動態的將加密過的字元串進行逆轉操作,恢復成123456,你需要考慮的是,哪種加密方式可以逆反操作,MD5這樣的方式似乎只能進行單向的加密,其實,加密方式也就是一個計算的過程。
希望可以幫助到你~!
㈤ MSSQL資料庫連接密碼加密
#region DES加密字元串
/// <summary>
/// 加密字元串
/// 注意:密鑰必須為8位
/// </summary>
/// <param name="strText">字元串</param>
public string DesEncrypt(string strText)
{
byte[] byKey = null;
byte[] IV = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
try
{
string encryptKey = "XX_XX_XX"; //密鑰
byKey = System.Text.Encoding.UTF8.GetBytes(encryptKey);
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
byte[] inputByteArray = Encoding.UTF8.GetBytes(strText);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byKey, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch
{
}
return strText;
}
#endregion
#region DES解密字元串
/// <summary>
/// 解密字元串
/// </summary>
/// <param name="inputString">加了密的字元串</param>
public string DesDecrypt(string inputString)
{
byte[] byKey = null;
byte[] IV = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
byte[] inputByteArray = new Byte[inputString.Length];
try
{
string decryptKey = "XX_XX_XX";
byKey = System.Text.Encoding.UTF8.GetBytes(decryptKey.Substring(0, 8));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
inputByteArray = Convert.FromBase64String(inputString);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(byKey, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
System.Text.Encoding encoding = new System.Text.UTF8Encoding();
return encoding.GetString(ms.ToArray());
}
catch
{
}
return inputString;
}
#endregion
===這個是DES方式加密解密字元串的
System.Security.Cryptography.MD5CryptoServiceProvider md5=new System.Security.Cryptography.MD5CryptoServiceProvider();
return Convert.ToBase64String(md5.ComputeHash(System.Text.Encoding.Unicode.GetBytes(yourstring)));
===這個是MD5的
實現代碼也給你寫好了,希望能對你有幫助
㈥ 資料庫中用戶密碼通常用什麼加密方式
3des加密很常用
而且演算法很多
自己可以隨意改
自己設置個加密密鑰就行
用戶名沒必要加密
因為你這不是銀行的資料庫
感覺差不多就行,如果想萬全的話,還是要在資料庫的嚴密性上來做文章。。
㈦ mysql資料庫裡面的數據中的密碼加密了,怎麼解密
mysql -uroot -p 輸入密碼回車後,出現如下圖錯誤。這時候需要我們破解密碼。
service mysqld stop //先停止mysql服務。
然後打開mysql配置文件/etc/my.cnf.在【mysqld】下面添加一行代碼:skip-grant-tables。這行代碼意思就是跳過跳過授權表,即是可以跳過密碼驗證直接進入資料庫。
service mysqld restart //重啟mysql資料庫。假如不重啟的話,不會生效。
mysql -uroot -p //此時直接回車,既可以進入資料庫。
出現mysql>就說明你已經進入到mysql資料庫里了。
進資料庫後,
use mysql //選擇mysql這個庫,因為mysql的root密碼存放在這個資料庫里。
show tables //查看下mysql庫里有哪些表,我們需要操作的用戶名密碼都在user表裡。
desc user //查看下user表有哪些欄位
更改root密碼。
update user set password=password('123456') where user="root"; //用戶選root,可以隨便更改成任意密碼,我這里設置的123456,password()是mysql密碼加密的一個函數。
flush privileges; //刷新下密碼,使更改的生效。
exit //退出資料庫。
退出資料庫,重新登錄
mysql -uroot -p //回車輸入剛剛更改的密碼,就能進去了。
然後再次進入配置文件vi /etc/my.cnf 把skip-grant-tables去掉。
㈧ 各位用php將密碼存入資料庫,都用什麼方法進行加密的
php將密碼存入資料庫,可以分內常見的4種方式:
1、直接md5加密存到到資料庫
2、md5兩次存到資料庫
3、對需要加密的字元串和一個常量 進行混淆加密
4、生成一個隨機的變數存到資料庫中,然後對需要加密的字元串和這個隨機變數加密
<?php
$str="admin";//需要加密的字元串
$str2="php";//增加一個常量混淆
$pass1=md5($str);
$pass2=md5(md5($str));
$pass3=md5($str.$str2);
echo$pass1."<br>".$pass2."<br>".$pass3;
?>
輸出:
$str="admin";//需要加密的字元串
$encrypt=$row['encrypt'];//生成的隨機加密字元串存到資料庫中
$pass4=md5($str.$encrypt);
//
㈨ 資料庫里加密的密碼是怎麼實現的
一般是先加鹽再用不可逆加密演算法加密密碼的,常見的有:sha1 sha256 md5等。
作用:這些加密演算法,只能加密,不能逆向解密,所以使用這些演算法。即時你的資料庫被拖庫,得到的人,也無法知道用戶密碼。
為什麼加鹽
舉例
在注冊時,
假設你的密碼是1234,一般伺服器會加一個鹽(隨便一個亂打的字元串),和你的密碼加在一起,1234和efnU*(@#H!JKNF得到1234efnU*(@#H!JKNF這個值,然後再進行加密(這里我用md5)得到 ,於是資料庫里你的密碼就變為了
登入時,
你輸入1234, 然後伺服器用和注冊相同的步驟進行加密,得到加密後的值,,將這個值與資料庫的加密值比對,如果正確則登入。
㈩ mysql資料庫密碼加密方式有幾種
MySQL資料庫的認證密碼有兩種方式,
MySQL 4.1版本之前是MySQL323加密,MySQL 4.1和之後的版本都是MySQLSHA1加密,
MySQL資料庫中自帶Old_Password(str)和Password(str)函數,它們均可以在MySQL資料庫里進行查詢,前者是MySQL323加密,後者是MySQLSHA1方式加密。
(1)以MySQL323方式加密
selectold_password('111111');
(2)以MySQLSHA1方式加密
select password('111111');
MYSQL323加密中生成的是16位字元串,而在MySQLSHA1中生存的是41位字元串,其中*是不加入實際的密碼運算中,通過觀察在很多用戶中都攜帶了"*",在實際破解過程中去掉"*",也就是說MySQLSHA1加密的密碼的實際位數是40位。