在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

md5的算法步驟及應用

姚小熊27 ? 來源:網(wǎng)絡整理 ? 作者:網(wǎng)絡整理 ? 2020-11-16 16:01 ? 次閱讀

md5的算法步驟

按位補充數(shù)據(jù)

在MD5算法中,首先需要對信息進行填充,這個數(shù)據(jù)按位(bit)補充,要求最終的位數(shù)對512求模的結果為448。也就是說數(shù)據(jù)補位后,其位數(shù)長度只差64位(bit)就是512的整數(shù)倍。即便是這個數(shù)據(jù)的位數(shù)對512求模的結果正好是448也必須進行補位。補位的實現(xiàn)過程:首先在數(shù)據(jù)后補一個1 bit; 接著在后面補上一堆0 bit, 直到整個數(shù)據(jù)的位數(shù)對512求模的結果正好為448。總之,至少補1位,而最多可能補512位 。

擴展長度

在完成補位工作后,又將一個表示數(shù)據(jù)原始長度的64 bit數(shù)(這是對原始數(shù)據(jù)沒有補位前長度的描述,用二進制來表示)補在最后。當完成補位及補充數(shù)據(jù)的描述后,得到的結果數(shù)據(jù)長度正好是512的整數(shù)倍。也就是說長度正好是16個(32bit) 字的整數(shù)倍 。

初始化MD緩存器

MD5運算要用到一個128位的MD5緩存器,用來保存中間變量和最終結果。該緩存器又可看成是4個32位的寄存器A、B、C、D,初始化為 :

A : 01 23 45 67

B: 89 ab cd ef

C: fe dc ba 98

D: 76 54 32 10

處理數(shù)據(jù)段

首先定義4個非線性函數(shù)F、G、H、I,對輸入的報文運算以512位數(shù)據(jù)段為單位進行處理。對每個數(shù)據(jù)段都要進行4輪的邏輯處理,在4輪中分別使用4個不同的函數(shù)F、G、H、I。每一輪以ABCD和當前的512位的塊為輸入,處理后送入ABCD(128位)。

輸出

信息摘要最終處理成以A, B, C, D 的形式輸出。也就是開始于A的低位在前的順序字節(jié),結束于D的高位在前的順序字節(jié)。

md5應用

用于密碼管理

當我們需要保存某些密碼信息以用于身份確認時,如果直接將密碼信息以明碼方式保存在數(shù)據(jù)庫中,不使用任何保密措施,系統(tǒng)管理員就很容易能得到原來的密碼信息,這些信息一旦泄露, 密碼也很容易被破譯。為了增加安全性,有必要對數(shù)據(jù)庫中需要保密的信息進行加密,這樣,即使有人得到了整個數(shù)據(jù)庫,如果沒有解密算法,也不能得到原來的密碼信息。MD5算法可以很好地解決這個問題,因為它可以將任意長度的輸入串經(jīng)過計算得到固定長度的輸出,而且只有在明文相同的情況下,才能等到相同的密文,并且這個算法是不可逆的,即便得到了加密以后的密文,也不可能通過解密算法反算出明文。這樣就可以把用戶的密碼以MD5值(或類似的其它算法)的方式保存起來,用戶注冊的時候,系統(tǒng)是把用戶輸入的密碼計算成 MD5 值,然后再去和系統(tǒng)中保存的 MD5 值進行比較,如果密文相同,就可以認定密碼是正確的,否則密碼錯誤。通過這樣的步驟,系統(tǒng)在并不知道用戶密碼明碼的情況下就可以確定用戶登錄系統(tǒng)的合法性。這樣不但可以避免用戶的密碼被具有系統(tǒng)管理員權限的用戶知道,而且還在一定程度上增加了密碼被破解的難度。

電子簽名

MD5 算法還可以作為一種電子簽名的方法來使用,使用 MD5算法就可以為任何文件(不管其大小、格式、數(shù)量)產(chǎn)生一個獨一無二的“數(shù)字指紋”,借助這個“數(shù)字指紋”,通過檢查文件前后 MD5 值是否發(fā)生了改變,就可以知道源文件是否被改動。我們在下載軟件的時候經(jīng)常會發(fā)現(xiàn),軟件的下載頁面上除了會提供軟件的下載地址以外,還會給出一串長長的字符串。這串字符串其實就是該軟件的MD5 值,它的作用就在于下載該軟件后,對下載得到的文件用專門的軟件(如 Windows MD5 check 等)做一次 MD5 校驗,以確保我們獲得的文件與該站點提供的文件為同一文件。利用 MD5 算法來進行文件校驗的方案被大量應用到軟件下載站、論壇數(shù)據(jù)庫、系統(tǒng)文件安全等方面 。

垃圾郵件篩選

在電子郵件使用越來越普遍的情況下,可以利用 MD5 算法在郵件接收服務器上進行垃圾郵件的篩選,以減少此類郵件的干擾,具體思路如下:

建立一個郵件 MD5 值資料庫,分別儲存郵件的 MD5 值、允許出現(xiàn)的次數(shù)(假定為 3)和出現(xiàn)次數(shù)(初值為零)。

對每一封收到的郵件,將它的正文部分進行MD5 計算,得到 MD5 值,將這個值在資料庫中進行搜索。

如未發(fā)現(xiàn)相同的 MD5 值,說明此郵件是第一次收到,將此 MD5 值存入資料庫,并將出現(xiàn)次數(shù)置為1,轉(zhuǎn)到第五步。

如發(fā)現(xiàn)相同的 MD5 值,說明收到過同樣內(nèi)容的郵件,將出現(xiàn)次數(shù)加 1,并與允許出現(xiàn)次數(shù)相比較,如小于允許出現(xiàn)次數(shù),就轉(zhuǎn)到第五步。否則中止接收該郵件。結束。

接收該郵件。
責任編輯:YYX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4629

    瀏覽量

    93186
  • md5
    md5
    +關注

    關注

    0

    文章

    29

    瀏覽量

    20892
收藏 人收藏

    評論

    相關推薦

    PostgreSQL將不再支持MD5密碼

    根據(jù) PostgreSQL 代碼倉庫的最新動態(tài),近日有維護者提交了“棄用 MD5 密碼支持”的 commit。 該維護者指出,MD5 被認為不適合用作加密散列算法已有一段時間。 此外
    的頭像 發(fā)表于 12-10 16:14 ?186次閱讀

    開源物聯(lián)網(wǎng)技術--哈希算法MD5加密功能技術分享

    MD5(Message-Digest Algorithm 5)是一種常用的哈希函數(shù),通常用于數(shù)據(jù)加密和安全校驗等場合。MD5 算法可以將任意長度的消息輸入計算出一個固定長度的摘要,其生
    的頭像 發(fā)表于 09-21 09:57 ?1872次閱讀
    開源物聯(lián)網(wǎng)技術--哈希<b class='flag-5'>算法</b><b class='flag-5'>MD5</b>加密功能技術分享

    第三章:龍芯2K0300蜂鳥板資料分析

    |--u-boot-with-spl.bin.md5u boot bin md5格式文件
    發(fā)表于 09-11 17:47

    嵌入式學習-Ubuntu系統(tǒng)安裝之使用提供的ubuntu系統(tǒng)

    環(huán)境文件夾中有以下文件:為了保證開發(fā)環(huán)境在下載過程中沒有出現(xiàn)文件損壞,下載完后要對每一個文件進行MD5校驗(可以通過網(wǎng)絡進行MD5在線校驗,也可以下載MD5校驗工具),文件校驗完生成的校驗碼與資料
    發(fā)表于 08-09 15:40

    Ubuntu系統(tǒng)安裝之使用提供的ubuntu系統(tǒng)

    環(huán)境文件夾中有以下文件:為了保證開發(fā)環(huán)境在下載過程中沒有出現(xiàn)文件損壞,下載完后要對每一個文件進行MD5校驗(可以通過網(wǎng)絡進行MD5在線校驗,也可以下載MD5校驗工具),文件校驗完生成的校驗碼與資料
    發(fā)表于 08-08 11:00

    ESP8266上加載micropython,文件的MD5與閃存中的數(shù)據(jù)不匹配怎么解決?

    ESP8266 上加載 micropython,文件的 MD5 與閃存中的數(shù)據(jù)不匹配!
    發(fā)表于 07-19 08:08

    ESP8266 MD5怎么使用?

    ROM 中有一些 MD5 功能 提供 ( MD5Final = 0x40009900 ); 提供 ( MD5Init = 0x40009818 ); 提供 ( MD5Update =
    發(fā)表于 07-10 07:35

    idf.py下載程序,MD5不匹配導致下載失敗怎么解決?

    in 0.0 seconds (effective 4491.3 kbit/s)... Filemd5: 5d61d196adc3dba01928f264eb169be7 Flash md5
    發(fā)表于 06-24 08:38

    esp32燒錄flash時md5驗證錯誤,導致不能燒錄要怎么處理?

    md5: 2f96fdc5a8d3d8229c2036f90ce59db6 MD5 of 0xFF is bf962a57871258e1e226c47e04f2a18b A fatal error
    發(fā)表于 06-24 06:28

    ESP32-Sense Kit idf4.3下載固件md5報錯如何解決?

    買的ESP32-Sense Kit,下載固件時出現(xiàn)md5錯誤,下載器是附帶的jtag,請問該如何解決?
    發(fā)表于 06-20 08:14

    ESP32-WROOM-32D無法寫入flash,MD5檢驗錯誤:MD5 of file does not match data in flash怎么解決?

    kbit/s)... Filemd5: b181f1484c264652f0f20d506db35eca Flash md5: 4c03feeb3298a10ad0ea93ed8c09925b MD5
    發(fā)表于 06-20 07:14

    esp32如何先將OAT下來的固件進行sha256或者MD5校驗,再寫入相應的flash區(qū)域?

    esp32如何先將OAT下來的固件進行sha256或者MD5校驗,再寫入相應的flash區(qū)域,OAT下來的固件先放在哪里?
    發(fā)表于 06-07 07:53

    Linux中文件MD5校驗方法

    由于生成的md5信息中,每個md5值后都緊跟著對應的文件的路徑(可能是相對路徑),于是將生成的md5保存到某個文件中,以后可以使用該文件來檢查md5值對應文件內(nèi)容是否發(fā)生了修改。
    發(fā)表于 04-22 12:40 ?717次閱讀

    stm32寫B(tài)ootLoader程序遇到的幾個問題求解

    我最近在寫一個BootLoader程序,以前沒有接觸過md5和mbedtls,有些疑問。現(xiàn)在我需要使用md5校驗文件完整性,但是官方的md5庫需要依賴mbedtls庫,mbedtls庫必須
    發(fā)表于 03-28 07:48

    如何對MD5加密算法優(yōu)化?

    有人針對程序安全啟動過程,進行MD5算法的優(yōu)化嘛。目前采用標準算法,時間稍長,如果有人做過優(yōu)化的話,可以分享一下,謝謝。
    發(fā)表于 02-18 08:20
    主站蜘蛛池模板: 国产精品久久久久久久久免费hd | 视频一区中文字幕 | www资源| 亚洲福利一区二区三区 | 日日操日日爽 | 日本黄色大片在线观看 | 第四色播日韩第一页 | 偷偷狠狠的日日2020 | 一级片黄色免费 | 免费欧美黄色网址 | 午夜影视网| 亚洲成年网站 | 种子搜索在线 | 久久人人视频 | 欧美性爽xxxⅹbbbb | 日韩毛片 | 在线人成精品免费视频 | 天天拍天天干 | 成人国产精品一级毛片视频 | 中文在线三级中文字幕 | 亚洲婷婷国产精品电影人久久 | 欧美黑人性受xxxx精品 | yellow中文字幕久久网 | 国产伦精品一区二区三区在线观看 | 五月天婷婷一区二区三区久久 | 18视频免费网址在线观看 | 很狠操| 好爽好紧好大的免费视频国产 | 国产一级爱c片免费播放 | 色宅男看片午夜大片免费看 | 四虎影院在线观看网站 | 亲女乱h文小兰第一次 | 男男憋尿play按小腹 | 六月婷婷激情 | 日韩欧美理论 | 在线www天堂资源网 在线播放 你懂的 | 日韩在线视频免费观看 | 中文字幕一区二区三区四区五区 | 欧美一卡2卡三卡4卡5卡免费观看 | 欧美一区视频 | 看视频免费 |