<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          MD5算法原理

          作者:蔣雅嫻 時(shí)間:2015-06-05 來(lái)源:電子產(chǎn)品世界 收藏

            導(dǎo)讀:本文主要介紹的是的原理,感興趣的親們快來(lái)看一下吧~~~很漲姿勢(shì)的哦~~~

          本文引用地址:http://www.ex-cimer.com/article/275283.htm

          1.原理--簡(jiǎn)介

            的全稱(chēng)為Message-Digest Algorithm 5,即消息摘要第五版,是當(dāng)前計(jì)算機(jī)領(lǐng)域用于確保信息傳輸完整一致而廣泛使用的散列算法之一。MD5算法的功能是將數(shù)據(jù)運(yùn)算變?yōu)榱硪还潭ㄩL(zhǎng)度值,是散列算法的基礎(chǔ)原理。MD5的前身有MD2、MD3和MD4。

          2.

            MD5算法的原理主要分為以下幾個(gè)步驟,下面就讓小編為大家一一介紹一下吧:

            1)填充:首先將輸入信息的長(zhǎng)度(bit)進(jìn)行填充,使得對(duì)512求余的結(jié)果等于448。填充的方法是填充一個(gè)1和n個(gè)0。

            2)記錄信息長(zhǎng)度:用64位來(lái)存儲(chǔ)填充前信息長(zhǎng)度。這64位加在第一步結(jié)果的后面,這樣信息長(zhǎng)度就變?yōu)镹*512+448+64=(N+1)*512位。

            3)裝入標(biāo)準(zhǔn)的幻數(shù):標(biāo)準(zhǔn)的幻數(shù)是(A=(01234567)16,B=(89ABCDEF)16,C=(FEDCBA98)16,D=(76543210)16)。如果在程序中定義應(yīng)該是(A=0X67452301L,B=0XEFCDAB89L,C=0X98BADCFEL,D=0X10325476L)。

            4)四輪循環(huán)運(yùn)算:循環(huán)的次數(shù)是分組的個(gè)數(shù)(N+1)。

          3.--用途

            MD5算法的用途主要分為以下幾類(lèi):

            1、防止被篡改,比如我提供文件下載,為了防止不法分子在安裝程序中添加木馬,我可以在網(wǎng)站上公布由安裝文件得到的MD5輸出結(jié)果。

            2、防止直接看到明文,現(xiàn)在很多網(wǎng)站在數(shù)據(jù)庫(kù)存儲(chǔ)用戶(hù)的密碼的時(shí)候都是存儲(chǔ)用戶(hù)密碼的MD5值。這樣就算不法分子得到數(shù)據(jù)庫(kù)的用戶(hù)密碼的MD5值,也無(wú)法知道用戶(hù)的密碼。

            3、防止抵賴(lài)(數(shù)字簽名),例如A寫(xiě)了一個(gè)文件,認(rèn)證機(jī)構(gòu)對(duì)此文件用MD5算法產(chǎn)生摘要信息并做好記錄。這樣可以防止出現(xiàn)以后A不承認(rèn)此事而帶來(lái)的麻煩。

            拓展閱讀:

            1.基于DSP的程序加密保護(hù)體制設(shè)計(jì)

            2.DSP程序構(gòu)造的加密體制概述

            3.快速實(shí)現(xiàn)SHA-1算法的硬件結(jié)構(gòu)

          萬(wàn)能遙控器相關(guān)文章:萬(wàn)能遙控器代碼




          關(guān)鍵詞: MD5 算法 MD5算法原理

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();