999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MD5加密算法的改進及應用

2017-08-10 09:52:40趙素萍
現代計算機 2017年15期
關鍵詞:數據庫用戶

趙素萍

(山西農業大學信息學院信息工程系,晉中 030800)

MD5加密算法的改進及應用

趙素萍

(山西農業大學信息學院信息工程系,晉中 030800)

為了防止用戶信息泄漏,對比介紹MD5加密算法的基本原理,MD5加鹽加密算法,原始密碼打亂順序后加鹽加密并二次加密,并將該算法應用于項目開發的用戶信息保密方面。經過解密工具的解密,發現該算法有絕對的優越性。

MD5;ASP.NET;加鹽加密;二次加密

0 引言

2011 年曾爆發的密碼泄漏事件,使得600余萬用戶的登錄信息以明文的方式被掛到網上,導致互聯網行業一片人心惶惶。由于大多數用戶將郵箱、微博、游戲、網上支付、購物等賬戶都設置了相同的密碼,那么一旦某一網站的服務器被黑客攻擊后,會導致用戶信息的泄露,更嚴重的是可能導致購物消費賬戶的信息泄漏而涉及到財產安全。

同時,有些網友可能會從瀏覽器上搜“密碼庫”并下載。但是黑客已將該密碼庫文件與病毒綁到了一起,用戶一旦下載就可能將自己的電腦染上病毒,并有可能將此文件在網絡上大量的傳播開。

由此可以看出,網站數據庫若明文保存密碼后,帶來的的后果是非常嚴重并不可預知的。

1 MD5加密算法

MD5(Message-Diggest Algorithm 5)算法[1],將輸入的明文數據數組加密以后,輸出密文數據數組[2]。從MD5的散列結果逆推出原文[3]是不可能的。所以MD5具有不可逆性和唯一性。

原始密碼在該算法的加密之后也并不是絕對安全的。為了驗證破解速度,筆者下載MD5計算器并打開在線MD5解密網頁。驗證的步驟如下:

第一步:在MD5計算器中計算出密碼“123456a”加密后的MD5值的字符串為“9cbf8a4dcb8e30682b927 f352d6559a0”,此字符串即為數據庫中保存的字符串。

第二步:將加密后的字符串放到解密網頁進行解碼,而此密碼的解碼速度還不到兩秒鐘的時間,查詢結果如圖1所示。

圖1 MD5計算后解密

通過以上實驗可以看出,所謂道高一尺魔高一丈,加密和解密是不斷互相推進的過程,明文保存的破解引發了密碼泄漏事件,而密碼泄漏事件又引發了密碼加密保存,隨著加密保存的推出,網上又出現了相關的破解工具。解密算法有以下幾種:(1)通過窮舉法比對所有字母、數字以及特殊字符的組合情況,將字符串經過MD5加密后再與數據庫中的MD5值進行比較;(2)將常見密碼與其MD5加密值保存到數據庫中,然后將MD5加密值進行一一比對,相同則將黑客數據庫中的原始密碼輸出。

目前對于密碼的保護問題,一般采取的措施是建議用戶注冊時增加原始密碼的強度,即我們一般在注冊時會有密碼強度的提醒,如果密碼設置的過于簡單,還會時不時收到網站發來的郵件(建議用戶修改密碼以增加密碼強度)。用戶加強密碼的強度原則為,在原密碼的前面、中間或后面加上一些特殊的符號使密碼加長,增強密碼的安全性。從而增加黑客破解密碼的難度。

由此可見,簡單的MD5加密并不能保證用戶信息的絕對安全。只是降低了黑客破解密碼的效率而已。如何在不增加密碼強度的基礎上也能保證用戶密碼的絕對安全呢,這將是本文研究的重點。

2 MD5加密算法的改進

為了進一步保護用戶的信息不被泄漏,故需要對MD5加密算法進行進一步的改進,以達到提升系統安全性的目的。

在對用戶密碼進行MD5加密算法之前,先對用戶密碼進行加鹽設置,該算法的實現步驟如下:

(1)程序開發人員或網站管理員設置一個鹽值,并將鹽值存儲到配置文件中;

(2)當用戶需要注冊信息時,后臺獲取用戶輸入的密碼,將密碼與鹽值連接后,再經過MD5加密,加密后的字符串作為密碼保存到數據庫中;

(3)當用戶登錄時,后臺從網頁上取出用戶輸入的用戶名和密碼,并從配置文件中取出程序員設置好的鹽值,將用戶數據的密碼和鹽值連接后經過MD5加密,若加密后的字符串與數據庫中的一致,則登錄正確;若不一致則用戶登錄失敗。

通過以上算法,即使黑客攻擊了數據庫,將加密后的字符串破解后,得到的數據也不是正確的密碼。

然而該算法并不具有絕對的安全性,因為黑客將數據庫攻擊后,該數據庫中所有用戶的密碼都使用了相同的鹽值,將一批密碼解碼后很容易發現規律。進而達到破解密碼的目的。所以簡單的加鹽加密也并不是絕對安全的。

通過對加鹽加密存在潛在隱患的分析,可能很多讀者會想到,將鹽值設置為一個變化的值,那么黑客就發現不了規律了,筆者曾經也看到過一篇論文,他的算法是系統產生一個隨機的字符串R,保存的字符串為將用戶輸入的字符串與隨機字符串R連接后進行加密,然而帶來的問題是,既然是隨機的,用戶注冊和登錄的隨機字符串必然不會相同,導致軟件無法實現登錄功能。唯一的解決辦法是用戶注冊時產生的隨機字符串R必須保存到數據庫中,將來用戶登錄時,后臺要從前臺取出用戶輸入的密碼和數據庫中存儲的隨機字符串R,連接后再進行加密。然而黑客既然已經攻破了數據庫,那么這個隨機字符串黑客還是可以看到的。這相當于直接告訴了黑客每個用戶的鹽值。

由此可見,不論是固定鹽值的加鹽加密算法,還是可變鹽值的加鹽加密算法,都是不安全的。不可否認,只要鹽值設置得當,加鹽加密算法還是具有較強的安全性的。為了加強對用戶信息保護,尤其是對用戶財產安全的保障,在加鹽加密算法的基礎上,還需要進一步對密碼進行加密保護。

首先要設置相應復雜度的鹽值,將用戶輸入的密碼字符串的順序進行打亂,而打亂的方法很多,程序員在設計算法時可自行決定,本文的設計原理為將用戶密碼的前兩個字符截取后連接到剩下字符串的尾部,然后對打亂的字符串加鹽加密后,再經過一次MD5的加密,該算法為:

MD5(MD5(pwd.SubString(2)+pwd.SubString(0,2)+ salt))

通過以上算法,即使黑客攻擊了數據庫,將加密后的字符串破解后,得到的數據也不是正確的密碼。

3 改進MD5的應用

在ASP.NET中對字符串的MD5加密:NETSDK通過計算哈希值的方法來為用戶輸入的信息進行加密。該實驗基于VS2010和SQL Server 2008平臺,使用C#編程語言,并使用MD5加密算法對用戶輸入的字符串進行了加密。代碼如下:

其中strin為用戶輸入的密碼,salt為用戶設置的鹽值,即使黑客破解了該用戶的密碼,那么密碼也不是正確的密碼。

4 結語

通過增加用戶原始密碼的強度,對用戶原始密碼的字符串順序進行打亂,對打亂的字符串進行加鹽,對加鹽后的字符串進行多次加密[4]??梢员WC數據的安全性,具有一定的參考價值。需要注意的是,經過簡單MD5算法加密后的密文有可能對應多個明文,即簡單MD5加密算法具有碰撞性。而本文通過一系列的改進,不僅提高了原算法的安全性,同時也增強了密碼的抗碰撞性。

[1]Rivest R.The MD5 Message-Digest Algorithm.RFC 1321,1992,4.

[2]Homer A,Sussman D.ASP.Net高級編程[M].李敏波譯.北京:清華大學出版社,2005.

[3]施衛鋒,周俊.多戶住處系統中數據安全性控制及其實現[J].微機發展,2003(13):12-13.

[4]孫永清,顧雨捷.基于動態注冊碼的軟件加密保護[J].計算機工程,2007,33(12):183-184

Improvement and Application of MD5 Encryption Algorithm

ZHAO Su-ping

(Department of Information Engineering,College of Information,Shanxi Agricultural University,Jinzhong 030800)

In order to protect user's information,introduces the basic principle of MD5 encryption algorithm,MD5 encryption algorithm with salt.Dis?turbs the order of the original password,then uses MD5 encryption algorithm with salt,and then secondary encryption,upsets the order and two salt encryption.Finally applies the algorithm to protect the customer's information of project development.After decryption tool,finds that the algorithm has the absolute superiority.

趙素萍(1986-),女,山西太原人,碩士,助教,研究方向為網絡安全

2017-03-14

2017-05-20

1007-1423(2017)15-0060-03

10.3969/j.issn.1007-1423.2017.15.016

MD5;ASP.NET;Add Salt to Encryption;Secondary Encryption

猜你喜歡
數據庫用戶
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 亚洲精品成人福利在线电影| WWW丫丫国产成人精品| 色综合国产| 亚洲第一精品福利| 91久久大香线蕉| 国产福利在线免费| 热99re99首页精品亚洲五月天| 日韩精品无码免费专网站| 男人的天堂久久精品激情| 亚洲欧洲免费视频| 乱系列中文字幕在线视频| 国产免费黄| 久久狠狠色噜噜狠狠狠狠97视色 | 国产第八页| 国产亚洲精品自在久久不卡 | 毛片在线播放a| 无码AV日韩一二三区| 青青青视频蜜桃一区二区| 国产91在线|中文| 91黄视频在线观看| 日本亚洲成高清一区二区三区| 亚洲黄色网站视频| 无码精品国产dvd在线观看9久| 久久国产高清视频| 99在线观看精品视频| 免费国产一级 片内射老| 五月激情综合网| 在线观看免费AV网| 99在线视频精品| www.91中文字幕| 亚洲欧洲自拍拍偷午夜色无码| 国产精品视频猛进猛出| 国内老司机精品视频在线播出| 国产麻豆福利av在线播放| 欧美国产中文| 亚洲中文精品人人永久免费| 77777亚洲午夜久久多人| 久综合日韩| 午夜欧美理论2019理论| 1024你懂的国产精品| 丁香亚洲综合五月天婷婷| 色婷婷色丁香| 精品国产香蕉伊思人在线| 制服丝袜在线视频香蕉| 国产成人调教在线视频| 鲁鲁鲁爽爽爽在线视频观看| 99久久精品国产自免费| 欧美一道本| 国产91小视频在线观看| 国产一级毛片高清完整视频版| 日韩精品亚洲人旧成在线| 亚洲高清资源| 中日韩一区二区三区中文免费视频| 18禁影院亚洲专区| 伊人蕉久影院| 99免费视频观看| 亚洲中文字幕精品| 亚洲精品自产拍在线观看APP| 日韩国产精品无码一区二区三区| 欧美日韩综合网| 午夜激情婷婷| 日韩午夜福利在线观看| 国产亚洲一区二区三区在线| 日韩福利在线观看| 萌白酱国产一区二区| 国产噜噜在线视频观看| 国产女人喷水视频| 九色综合伊人久久富二代| 国产欧美日韩另类精彩视频| 凹凸国产熟女精品视频| 色妞永久免费视频| 在线观看国产精美视频| 国内自拍久第一页| 国产亚洲男人的天堂在线观看| 一级毛片免费不卡在线视频| 99热亚洲精品6码| 亚洲日韩国产精品无码专区| 色吊丝av中文字幕| 日韩性网站| 亚洲人成在线精品| 国产女人在线视频| 国产xxxxx免费视频|