成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

找回MD5加密的密碼及MD5加密數據庫中數據

安全 數據安全
有時,在開發過程中,如果不小心更改掉了項目管理員帳號的密碼而又忘了,存在數據庫里的密碼又是MD5加密后的,這時候怎么辦?最為菜鳥的我,剛開始也很迷茫,不過向前輩們請教了請教,自己也查了查資料,特意整理記錄一下,并分享給大家。

有時,在開發過程中,如果不小心更改掉了項目管理員帳號的密碼而又忘了,存在數據庫里的密碼又是MD5加密后的,這時候怎么辦?最為菜鳥的我,剛開始也很迷茫,不過向前輩們請教了請教,自己也查了查資料,特意整理記錄一下,并分享給大家。

前提是你知道這個密碼存在在哪個表的哪個字段,只不過是加密了,如果是oracle數據庫的話,可以用DBMS_OBFUSCATION_TOOLKIT.MD5 ( input => utl_raw.cast_to_raw('預置密碼'))來得到一個MD5加密后的密碼,

所以我們可以在UPDATE user set password=DBMS_OBFUSCATION_TOOLKIT.MD5 ( input => utl_raw.cast_to_raw('預置密碼')) where name='sys'來重新把不知道的密碼用預置密碼替換掉,這樣我們就可用忘記密碼的帳號重新登錄了,如果是MySQL的話,好像有個內置MD5()函數,也可以起到這樣的效果,具體的大家可以查查詳細MySQL中MD5的用法,如果是SQL Server的話,好像也有對應的MD5家嗎函數,記不太清了,應該是HashByte('加密方式', '待加密的值'),也可以通過這種方式找回的。

DBMS_OBFUSCATION_TOOLKIT.MD5是oracle提供的獲得md5值的函數,可以直接使用DBMS_OBFUSCATION_TOOLKIT.MD5 ( input => utl_raw.cast_to_raw('預置密碼'))a FROM DUAL來得到加密后的數據,否則得到的是raw類型的數據,需要用utl_raw.cast_to_raw轉換成我們常用的md5格式,還有以上得到的md5值都是大寫,如果數據庫中存儲的是小寫,需要再用lower函數轉換一下。

我們還可以使用存儲過程來實現MD5加密:

declare
v_string varchar2(50);
v_n number;
begin
v_string := utl_raw.cast_to_raw(sys.dbms_obfuscation_toolkit.md5(input_string => '123456'));
v_n := length(v_string);
dbms_output.put_line(v_string || '--' || v_n);
end;

也可以寫成函數后調用實現MD5加密:

create or replace function fun_get_md5(i_username in varchar2, i_password in varchar2)
return varchar2 is
begin
return utl_raw.cast_to_raw(dbms_obfuscation_toolkit.md5(input_string => (i_username||i_password)));
end fun_get_md5;
sql> select fun_get_md5('zhangwz','123456') from dual;
fun_get_md5('zhangwz','123456'
--------------------------------------------------------------------------------
0d8df9100cd33ef80af0527858136e0b

下邊是網上摘了一個存取用戶密碼信息的例子,以供大家參考:

create table sys_user (id number,username varchar2(50),password varchar2(50));

存取用戶密碼的過程應該寫到存儲過程中,以方便以后調用,這里是盡量省略來寫。

用戶注冊時存入密碼:

sql> insert into sys_user values (1001,'zhangwz', fun_get_md5('zhangwz','123456')) ;
sql> commit;

用戶登錄時取出密碼:

create or replace procedure p_login(i_uname varchar2
,i_passwd varchar2) is
v_id number;
v_error_text varchar2(200);
begin
select id
into v_id
from sys_user
where username = i_uname
and password = fun_get_md5(i_uname, i_passwd);
exception
when others then
v_error_text := '用戶名或密碼不正確!' || ',sqlcode:' || sqlcode ||
' sqlerrm:' || substr(sqlerrm ,1 ,200);
end p_login;
責任編輯:藍雨淚 來源: CSDN博客
相關推薦

2016-12-15 09:26:53

MD5加密

2022-10-18 22:21:51

2020-10-15 08:20:52

MD5算法加密的過程

2009-06-06 18:57:47

MD5加密類Java Bean

2009-06-30 10:05:24

MD5加密JSP源碼

2020-02-25 16:30:36

MD5是不是加密

2011-12-28 13:14:39

2021-12-06 18:16:14

SQLCRCMD5

2021-02-19 11:55:36

C語言MD5加密

2009-09-09 18:35:07

C# 加密MD5和SHA1

2022-11-09 08:24:39

2009-10-26 14:06:03

2009-07-24 15:58:20

ASP.NET MD5ASP.NET SHA

2017-06-28 14:38:44

2009-07-28 16:39:16

VB.NET的MD5加

2010-01-06 09:54:30

.NET Framew

2016-12-19 15:50:36

2021-06-07 10:00:41

MD5算法加密

2022-10-19 07:35:28

2012-09-20 15:45:09

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 看片一区 | 欧美日韩亚洲一区 | 爱爱免费视频 | 久久久久久国产免费视网址 | 久久精品国产一区二区三区 | 久草新视频 | 色婷婷精品国产一区二区三区 | 美女久久久久久久 | 99国产精品久久久久久久 | 久久久久国产一区二区三区 | 午夜久久久 | 先锋资源网 | 91五月婷蜜桃综合 | 99re视频这里只有精品 | 欧美一区二区三区国产 | 亚洲三级免费看 | 亚洲免费精品 | 成人久久| 亚洲成人精品免费 | 欧美一区二区免费电影 | 一级a性色生活片久久毛片波多野 | 亚洲国产精品一区二区第一页 | 亚洲电影在线播放 | 最新国产精品 | 韩国精品在线 | 国产999精品久久久 日本视频一区二区三区 | 婷婷福利视频导航 | 97人人澡人人爽91综合色 | 国产日韩久久 | 久久久网 | 免费看国产a | 精品乱人伦一区二区三区 | 国产一区二 | 91在线观看免费 | 蜜桃官网 | 国产精品美女久久久久aⅴ国产馆 | www性色| 99pao成人国产永久免费视频 | 国产福利网站 | 岛国毛片在线观看 | 欧美综合国产精品久久丁香 |