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

改進MD5加密算法在系統密碼存儲中的研究及應用

2021-10-25 03:43:06陳登峰
信息記錄材料 2021年10期
關鍵詞:數據庫信息

李 強,陳登峰

(1西安建筑科技大學信息與控制工程學院 陜西 西安 710055)

(2西安建筑科技大學建筑設備科學與工程學院 陜西 西安 710055)

1 引言

隨著信息技術的不斷發展,大數據時代已經到來,大數據的應用在給我們生活帶來許多便利的同時,也帶來了信息泄露、信息安全等問題。目前仍有部分網站用戶名密碼通過明文密碼存儲,這樣增加了網站的風險性,密碼極易被破解,導致用戶信息泄露。因此,研究了單向散列函數(Hash函數)[1-2],巴格達理工大學的研究人員通過新改進方法解決了安全文檔的驗證,有效進行了MD5 Hash函數的擴展[3]。羅江華[4]提出了一種基于MD5和Base64的混合加密算法,解決了查詢MD5散列值字典獲取用戶明文密碼問題,提高了用戶的密碼安全。因此,本文研究了MD5加密算法,通過對系統登錄密碼進行加密后來提高網站安全性,但由于一些常用密碼通過MD5值可以搜索到明文密碼,存在一定的弊端,因此,本文在MD5算法的基礎上通過增加密鑰空間的方法來進行改進,提高密碼儲存安全性。

2 MD5算法研究

2.1 加密方法

目前,主要加密方式有單向和雙向加密兩種。它們的區別是是否需要解密,是否雙向需要解密,單向不需要解密,例如MD5加密。一般比較常用的加密方式主要有DES加密[5]、RSA加密[6]、MD5加密,其中MD5加密算法應用較為廣泛。

2.2 MD5加密算法

MD5(Message—Digest algorithm 5)信息—摘要算法是128位且通過隨機長度的信息生成。

MD5算法具有以下特點:(1)壓縮性:即任意長度的數據經過MD5算法進行計算,結果長度一樣;(2)容易計算:給定一個原始數據,都可以計算出MD5值;(3)抗修改性:修改原始數據,MD5值也發生改變;(4)強抗碰撞:對于固定的原始數據和其MD5值,很難找到一個相同MD5數據。

3 MD5算法原理和實現改進

3.1 MD5算法基本原理

MD5算法主流程圖見圖1。

圖1 MD5主流程圖

首先對變量進行初始化,為后面應用做好準備,其次輸入需要處理的信息,對信息進行填充,之后進行分組處理數據,最終輸出MD5值。其中填充信息具體做法見流程圖2。

圖2 填充信息

其中,填充信息滿足關系式L=m*512-64,其中L為消息長度,m為倍數。

流程圖1中分組處理數據具體做法見圖3。

圖3 分組處理信息

對填充好的數據進行分組,分成512位的塊,對4個鏈接變量A、B、C、D進行初始化,其中A=0X01234567;B=0X89abcdef;C=0Xfedcba98;D=0X76543210。初始化完成后,對消息中的多個512位塊循環運行。

將4個鏈接變量a、b、c、d 組合成128位寄存器(abcd)用于保存中間結果和最終結果。

將當前512位塊分解為16個子塊,每個子塊為32位;主循環有4輪循環,每一輪處理一個塊中的16個子塊。16個子塊分別為M[0],M[1],…,M[15],或表示為M[i],其中i為1~15。

4輪迭代操作具體詳細步驟如下:

4次線性操作中用到的線性函數具體為F、G、H、I,其中:

F(x,y,z) =(x&y)|((~x)&z);

G(x,y,z) =(x&z)|(y&(~z));

H(x,y,z) =x^y^z;

I(x,y,z) =y^(x|(~z));

其中,&代表與操作,|代表或操作,~代表非操作,^代表異或操作。

4種操作為:

FF(a,b,c,d,Mi,s,ti)表示 a=b+((a+(F(b,c,d)+Mi+ti)<<

GG(a,b,c,d,Mi,s,ti)表示 a=b+((a+(G(b,c,d)+Mi+ti)<<

HH(a,b,c,d,Mi,s,ti)表示 a=b+((a+(H(b,c,d)+Mi+ti)<<

II(a,b,c,d,Mi,s,ti)表示 a=b+((a+(I(b,c,d)+Mi+ti)<<

每一輪輸出的中間和最終結果復制到寄存器abcd中,每一輪有16個寄存器。進行4輪操作,每輪16次操作。

上述操作完成后,將A、B、C、D分別加上a、b、c、d,用于下一分組數據繼續運行算法,直至輸出128位的A、B、C、D的級聯,其中低字節始于A,高字節終于D的結果,算法結束。

3.2 改進MD5算法實現

根據3.1節MD5算法基本原理通過Java語言來進行實現,實驗結果見表1。

表1 MD5實驗結果

在實際應用中,經過MD5存儲的密碼,通過前臺處理后,直接存入后臺數據庫中。然而經常會有忘記密碼的情況,有一部分人的處理方法是,如果是常用的簡單密碼通過在數據庫中找到其存儲的MD5值,通過網絡搜索就可以找到其對應的明文密碼,這樣便可以解決忘記密碼的問題。然而這種解決辦法也暴露了MD5算法的缺陷,因此在研究過程中就應該考慮這個問題,并加以解決。本文對MD5算法進行了改進,具體做法如下:

Step1:輸入密碼,通過前臺MD5算法進行轉換,將轉換結果存入到后臺Oracle數據庫中進行管理,其結果為32位16進制數。

Step2:將存入的32位16進制數的5至19位進行提取,為下一步做好準備。

Step3:隨機生成字符串,該字符串位數為15位,用于下一步替換。

Step4:將提取出的5至19位進行替換,完成后存入后臺數據庫表中。

通過Java代碼根據以上步驟對改進MD5算法進行實現,實現結果見表2。

表2 改進后結果

為了保證實驗結果的有效性,該測試數據包含數字、字母、下劃線,分析表1和表2實驗結果可以得出MD5加密算法的密鑰空間為2的128次方,改進后的MD5秘鑰空間為2的158次方,破解難度明顯增大。在系統密碼登錄過程中,因為密碼存儲結果經過兩次變換,遇到常用的簡單密碼通過在數據庫中找到其存儲的MD5值問題得以解決。

4 結語

本文研究了MD5加密算法的基本原理并通過Java語言進行實現,在實際應用過程中針對部分常用明文密碼對應的MD5值可以搜索到的問題,本文對其進行了改進,通過增加密鑰空間來提高密碼安全性,并應用在系統密碼存儲中,實驗結果表明,該方法有效。

猜你喜歡
數據庫信息
數據庫
財經(2017年15期)2017-07-03 22:40:49
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
數據庫
財經(2010年20期)2010-10-19 01:48:32
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 欧美成人一区午夜福利在线| 四虎永久免费地址在线网站| 狠狠干欧美| 国产成本人片免费a∨短片| 激情综合图区| 久久精品女人天堂aaa| 亚洲一区二区三区在线视频| 国产aⅴ无码专区亚洲av综合网| 福利一区三区| 无码综合天天久久综合网| 亚洲欧美国产五月天综合| 成人在线不卡视频| 丝袜亚洲综合| 亚洲午夜福利精品无码不卡 | 久久天天躁狠狠躁夜夜躁| 99热这里只有精品免费国产| 无码 在线 在线| 91精品国产91久无码网站| 88av在线看| 久久性妇女精品免费| 国内99精品激情视频精品| 2022国产无码在线| 亚洲系列中文字幕一区二区| 久久亚洲精少妇毛片午夜无码 | 日本三级精品| 国产麻豆永久视频| 久久久精品国产SM调教网站| 国产在线拍偷自揄观看视频网站| 成人小视频在线观看免费| 91亚洲影院| 亚洲AⅤ无码国产精品| 亚洲第一成年免费网站| 亚洲另类色| 日本国产精品一区久久久| 亚洲第一在线播放| 亚洲h视频在线| 国产高清免费午夜在线视频| 伊人色天堂| 沈阳少妇高潮在线| 欧美日韩亚洲国产| 亚洲午夜福利精品无码不卡| 欧美成人精品一级在线观看| 久久香蕉国产线看精品| 九九九精品成人免费视频7| v天堂中文在线| 国国产a国产片免费麻豆| 99热这里只有精品久久免费| 三上悠亚精品二区在线观看| 热99精品视频| 久久五月视频| 欧美α片免费观看| 噜噜噜综合亚洲| 88av在线播放| 久久精品国产999大香线焦| 久久 午夜福利 张柏芝| 亚洲自拍另类| 免费高清毛片| 91在线播放免费不卡无毒| 国产产在线精品亚洲aavv| 99re经典视频在线| 国产精品网址你懂的| 五月综合色婷婷| 婷婷激情亚洲| 亚洲资源站av无码网址| 国产精品毛片一区视频播| 亚洲美女高潮久久久久久久| 欧美色伊人| 国产成人高清在线精品| 欧美日韩另类在线| 欧美午夜视频在线| 伊人久久大香线蕉aⅴ色| 91丝袜美腿高跟国产极品老师| 国产欧美视频在线观看| 看看一级毛片| 日本中文字幕久久网站| h视频在线播放| 四虎影视国产精品| 日韩精品久久久久久久电影蜜臀| 超级碰免费视频91| 99色亚洲国产精品11p| 九九九九热精品视频| 日本少妇又色又爽又高潮|