亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于md5的加密方法及系統(tǒng)的制作方法

文檔序號(hào):8365232閱讀:553來(lái)源:國(guó)知局
一種基于md5的加密方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)加密領(lǐng)域,尤其涉及一種基于MD5的加密方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)通信技術(shù)的不斷發(fā)展,信息安全越來(lái)越重要。于數(shù)據(jù)信息傳輸時(shí),為了保證安全性,通常會(huì)采用加密算法對(duì)數(shù)據(jù)信息進(jìn)行加密處理。但是,現(xiàn)有的標(biāo)準(zhǔn)開(kāi)源加密算法由于算法機(jī)制完全透明,算法資料全面,很容易被暴力破解。

【發(fā)明內(nèi)容】

[0003]本發(fā)明提供一種基于MD5的加密方法及系統(tǒng),能夠解決由于現(xiàn)有技術(shù)中標(biāo)準(zhǔn)開(kāi)源算法容易被惡意破解而造成信息安全性不高的問(wèn)題。
[0004]為了解決上述技術(shù)問(wèn)題,本發(fā)明提供一種基于MD5的加密方法,包括以下步驟:獲取原始待加密數(shù)據(jù),添加動(dòng)態(tài)數(shù)據(jù);根據(jù)預(yù)定的動(dòng)態(tài)加密規(guī)則對(duì)添加動(dòng)態(tài)數(shù)據(jù)的原始待加密數(shù)據(jù)進(jìn)行加密運(yùn)算,得到第一加密數(shù)據(jù),其中,所述動(dòng)態(tài)加密規(guī)則包括加密算法、加密次數(shù)及加密算法執(zhí)行順序;根據(jù)調(diào)整后的鏈接變量對(duì)所述第一加密數(shù)據(jù)進(jìn)行MD5運(yùn)算,得到第二加密數(shù)據(jù);將動(dòng)態(tài)信息加入所述第二加密數(shù)據(jù)得到第三加密數(shù)據(jù),將所述第三加密數(shù)據(jù)轉(zhuǎn)換為可見(jiàn)字符,得到加密結(jié)果,其中,所述動(dòng)態(tài)信息包括動(dòng)態(tài)數(shù)據(jù)的信息、動(dòng)態(tài)加密規(guī)則的信息以及所述調(diào)整后的鏈接變量的信息。
[0005]進(jìn)一步地,所述動(dòng)態(tài)數(shù)據(jù)由隨機(jī)函數(shù)生成。
[0006]進(jìn)一步地,所述第三加密數(shù)據(jù)包括所述動(dòng)態(tài)信息在所述第三加密數(shù)據(jù)中的位置信息。
[0007]進(jìn)一步地,所述動(dòng)態(tài)加密規(guī)則的加密算法包括以下一種算法或其任意組合:AES算法、SHAl算法、RipeMD算法、Tiger算法、WhirlPool算法。
[0008]本發(fā)明還提供一種基于MD5的加密系統(tǒng),包括:數(shù)據(jù)獲取模塊、第一加密模塊、第二加密模塊以及第三加密模塊。所述數(shù)據(jù)獲取模塊,用于獲取原始待加密數(shù)據(jù),添加動(dòng)態(tài)數(shù)據(jù);所述第一加密模塊,用于根據(jù)預(yù)定的動(dòng)態(tài)加密規(guī)則對(duì)添加動(dòng)態(tài)數(shù)據(jù)的原始待加密數(shù)據(jù)進(jìn)行加密運(yùn)算,得到第一加密數(shù)據(jù),其中,所述動(dòng)態(tài)加密規(guī)則包括加密算法、加密次數(shù)及加密算法執(zhí)行順序;所述第二加密模塊,用于根據(jù)調(diào)整后的鏈接變量對(duì)所述第一加密數(shù)據(jù)進(jìn)行MD5運(yùn)算,得到第二加密數(shù)據(jù);所述第三加密模塊,用于將動(dòng)態(tài)信息加入所述第二加密數(shù)據(jù)得到第三加密數(shù)據(jù),將所述第三加密數(shù)據(jù)轉(zhuǎn)換為可見(jiàn)字符,得到加密結(jié)果,其中,所述動(dòng)態(tài)信息包括動(dòng)態(tài)數(shù)據(jù)的信息、動(dòng)態(tài)加密規(guī)則的信息以及所述調(diào)整后的鏈接變量的信息。
[0009]進(jìn)一步地,所述動(dòng)態(tài)數(shù)據(jù)由隨機(jī)函數(shù)生成。
[0010]進(jìn)一步地,所述第三加密數(shù)據(jù)包括所述動(dòng)態(tài)信息在所述第三加密數(shù)據(jù)中的位置信息。
[0011]進(jìn)一步地,所述動(dòng)態(tài)加密規(guī)則的加密算法包括以下一種算法或其任意組合:AES算法、SHAl算法、RipeMD算法、Tiger算法、WhirlPool算法。
[0012]本發(fā)明提供的基于MD5的加密方法及系統(tǒng),采用了多種加密算法混合,加密次數(shù)動(dòng)態(tài)計(jì)算,動(dòng)態(tài)信息分散在加密串各位置,能夠解決現(xiàn)有技術(shù)中標(biāo)準(zhǔn)開(kāi)源算法容易被破解的問(wèn)題,可以滿(mǎn)足高安全性要求的業(yè)務(wù)需求。
【附圖說(shuō)明】
[0013]圖1所示為本發(fā)明較佳實(shí)施例提供的基于MD5的加密方法的流程圖;
[0014]圖2所示為本發(fā)明較佳實(shí)施例提供的基于MD5的加密系統(tǒng)的示意圖。
【具體實(shí)施方式】
[0015]如圖1所示,本發(fā)明較佳實(shí)施例提供的基于MD5的加密方法包括以下步驟:步驟S1:獲取原始待加密數(shù)據(jù),添加動(dòng)態(tài)數(shù)據(jù);步驟S2:根據(jù)預(yù)定的動(dòng)態(tài)加密規(guī)則對(duì)添加動(dòng)態(tài)數(shù)據(jù)的原始待加密數(shù)據(jù)進(jìn)行加密運(yùn)算,得到第一加密數(shù)據(jù),其中,所述動(dòng)態(tài)加密規(guī)則包括加密算法、加密次數(shù)及加密算法執(zhí)行順序;步驟S3:根據(jù)調(diào)整后的鏈接變量對(duì)所述第一加密數(shù)據(jù)進(jìn)行MD5運(yùn)算,得到第二加密數(shù)據(jù);步驟S4:將動(dòng)態(tài)信息加入所述第二加密數(shù)據(jù)得到第三加密數(shù)據(jù),將所述第三加密數(shù)據(jù)轉(zhuǎn)換為可見(jiàn)字符,得到加密結(jié)果,其中,所述動(dòng)態(tài)信息包括動(dòng)態(tài)數(shù)據(jù)的信息、動(dòng)態(tài)加密規(guī)則的信息以及所述調(diào)整后的鏈接變量的信息。
[0016]于較佳實(shí)施例中,動(dòng)態(tài)數(shù)據(jù)由隨機(jī)函數(shù)生成。
[0017]于較佳實(shí)施例中,第三加密數(shù)據(jù)包括動(dòng)態(tài)信息在第三加密數(shù)據(jù)中的位置信息。
[0018]于較佳實(shí)施例中,動(dòng)態(tài)加密規(guī)則的加密算法包括以下一種算法或其任意組合:AES算法、SHAl算法、RipeMD算法、Tiger算法、WhirlPool算法。
[0019]接下來(lái)對(duì)本發(fā)明較佳實(shí)施例的流程進(jìn)行詳細(xì)描述。
[0020]舉例而言,當(dāng)本實(shí)施例的加密方法應(yīng)用于手機(jī)游戲支付業(yè)務(wù)時(shí),步驟SI獲取的原始待加密數(shù)據(jù)例如為用戶(hù)輸入的需要加密的支付信息。同時(shí),添加動(dòng)態(tài)數(shù)據(jù)至原始待加密數(shù)據(jù)。其中,動(dòng)態(tài)數(shù)據(jù)由隨機(jī)函數(shù)生成,并具有指定格式,例如100?300之間的數(shù)字、30位的字節(jié)數(shù)組或規(guī)定每個(gè)字節(jié)為O?120的字節(jié)數(shù)組。
[0021]步驟S2中的動(dòng)態(tài)加密規(guī)則為預(yù)定義的。舉例而言,加密算法例如為AES算法和SHAl算法;加密次數(shù)例如為AES算法運(yùn)算I次,SHAl算法運(yùn)算2次;加密算法執(zhí)行順序例如為先進(jìn)行AES算法運(yùn)算,再進(jìn)行SHAl算法運(yùn)算。其中,可預(yù)先定義多種動(dòng)態(tài)加密規(guī)則,于使用時(shí),通過(guò)隨機(jī)函數(shù)確定相應(yīng)的動(dòng)態(tài)加密規(guī)則。
[0022]在步驟S3中,對(duì)第一加密數(shù)據(jù)進(jìn)行的MD5運(yùn)算為非公MD5運(yùn)算。即,以調(diào)整后的鏈接變量進(jìn)行MD5運(yùn)算。具體而言,標(biāo)準(zhǔn)的MD5運(yùn)算有四個(gè)32位被稱(chēng)作鏈接變量(ChainingVariable)的整數(shù)參數(shù),他們從小到大依次為:A = 0x01234567,B = 0x89abcdef, C =0xfedcba98,D = 0x76543210。改變這四個(gè)鏈接變量的值進(jìn)行運(yùn)算,可使得運(yùn)算結(jié)果與標(biāo)準(zhǔn)算法的結(jié)果不同。但是,若隨意修改鏈接變量,容易出現(xiàn)不同字符串加密結(jié)果碰撞增加的情況(即,不同字符串的加密結(jié)果相同)。因此,于本實(shí)施例中,鏈接變量的修改值經(jīng)過(guò)大數(shù)據(jù)碰撞測(cè)試得到,即將不同的鏈接變量修改值基于大規(guī)模的數(shù)據(jù)進(jìn)行加密結(jié)果檢測(cè),根據(jù)加密結(jié)果的碰撞情況確定該鏈接變量修改值是否合適。于此,將經(jīng)過(guò)大數(shù)據(jù)碰撞測(cè)試的鏈接變量修改值放入鏈接變量集合,于使用時(shí),根據(jù)所需的范圍區(qū)間,動(dòng)態(tài)地從鏈接變量集合中取出合適的調(diào)整后的鏈接變量進(jìn)行MD5運(yùn)算。
[0023]在步驟S4中,將動(dòng)態(tài)信息加入由步驟S3的MD5運(yùn)算得到的第二加密數(shù)據(jù)中。其中,經(jīng)過(guò)MD5運(yùn)算得到的第二加密數(shù)據(jù)為128位散列值。具體而言,通過(guò)隨機(jī)函數(shù)生成動(dòng)態(tài)信息的位置信息,動(dòng)態(tài)信息根據(jù)位置信息分布在整個(gè)MD5的128位散列的各個(gè)位置,使其擴(kuò)展到152?168位,例如可以偽裝成SHAl運(yùn)算結(jié)果的160位數(shù)?;?
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1