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

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

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

3天內不再提示

MD5到底算不算一種加密算法?

OSC開源社區 ? 來源:OSC開源社區 ? 作者:張張 ? 2022-11-24 11:52 ? 次閱讀

一旦提到加密算法,經常有人會有這樣的疑問:MD5 到底算不算一種加密算法呢?

在回答這個問題之前,我們需要先弄清楚兩點:

什么是加密算法?

什么是 MD5?

1什么是加密算法?

數據加密的基本過程就是對原來為明文的文件或數據按某種算法進行處理,使其成為不可讀的一段代碼為“密文”,使其只能在輸入相應的密鑰之后才能顯示出原容,通過這樣的途徑來達到保護數據不被非法人竊取、閱讀的目的。該過程的逆過程為解密,即將該編碼信息轉化為其原來數據的過程。

-- 來自《百度百科》

使用密碼學可以達到以下三個目的:

數據保密性:防止用戶的數據被竊取或泄露;

數據完整性:防止用戶傳輸的數據被篡改;

身份驗證:確保數據來源與合法的用戶。

加密算法分類

常見的加密算法大體可以分為兩大類:對稱加密和非對稱加密。

對稱加密

對稱加密算法就是用一個秘鑰進行加密和解密。

2a5ae5f8-6b2e-11ed-8abf-dac502259ad0.png

非對稱加密

與對稱加密算法不同的是,進行加密與解密使用的是不同的秘鑰,有一個公鑰-私鑰對,秘鑰正確才可以正常的進行加解密。

2a7b7fc0-6b2e-11ed-8abf-dac502259ad0.png

2什么是MD5?

MD5算法:MD5全稱Message Digest Algorithm 5,即消息摘要算法第5版。

MD5 以 512位分組來處理輸入的信息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理后,算法的輸出由四個32位分組組成,將這四個32位分組級聯后將生成一個128位散列值。

MD5算法的主要特點:

長度固定

MD5加密后值固定長度是128位,使用32個16進制數字進行表示。

單向性

如果告訴原始消息,算法是MD5,迭代次數=1的情況下,我們一樣可以得到一摸一樣的消息摘要,但是反過來卻不行。

不可逆

在不知道原始消息的前提下,是無法憑借16個字節的消息摘要(Message Digest),還原出原始的消息的。

下面這個消息摘要,你知道他的原始信息是什么嗎?

MessageDigest='454e2624461c206380f9f088b1e55fae'

其實,原始信息是以下長長的字符串:
93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0Nx
TulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC
0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOm
Vya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCo
B15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD

恒定性

如果按照以上示例的原始信息,大家與我計算出來的消息摘要不一樣,那肯定你是使用了一個假的 MD5 工具,哈哈哈。

當原始消息恒定時,每次運行MD5產生的消息摘要都是恒定不變的,無論是誰來計算,結果都應該是一樣的。

不可預測性

讓我們再來嘗試一次,「不可逆」中應用到的原始消息的最后一個字母'D',修改成'E',如下所示:

93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0Nx
TulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC
0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOm
Vya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCo
B15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onE

那經 MD5 后產生的消息摘要,是不是和 '454e2624461c206380f9f088b1e55fae' 很相似呢?

讓大家失望了,產生的消息摘要沒有一絲一毫的關聯性,新的消息摘要如下所示:

Message Digest = '8796ed5412b84ff5c4769d080b4a89a2'

聊到這里,突然想到一個有意思的問題:

MD5是32位的,理論上是有限的,而世界上的數據是無限的,那會不會生成重復的MD5值?

是不是也有同學產生相似的疑問呢?

理論上來講,當然會生成重復的MD5值。

分享一個經典的例子:

數據源1:

d131dd02c5e6eec4693d9a0698aff95c2fcab58712467eab4004583eb8fb7f89 
55ad340609f4b30283e488832571415a085125e8f7cdc99fd91dbdf280373c5b 
d8823e3156348f5bae6dacd436c919c6dd53e2b487da03fd02396306d248cda0 
e99f33420f577ee8ce54b67080a80d1ec69821bcb6a8839396f9652b6ff72a70

數據源2:

d131dd02c5e6eec4693d9a0698aff95c2fcab50712467eab4004583eb8fb7f89 
55ad340609f4b30283e4888325f1415a085125e8f7cdc99fd91dbd7280373c5b 
d8823e3156348f5bae6dacd436c919c6dd53e23487da03fd02396306d248cda0 
e99f33420f577ee8ce54b67080280d1ec69821bcb6a8839396f965ab6ff72a70

它們竟然有著共同的MD5值(? 注意看,數據源1、2是存在很多細節不同的):

79054025255fb1a26e4bc422aef54eb4

3MD5是加密算法嗎?

MD5計算,對原始消息(Message)做有損的壓縮計算,無論消息(輸入值)的長度字節是多少,是1億字節還是1個字節,都會生成一個固定長度(128位/16字節)的消息摘要(輸出值)。

也就是說,MD5 算法和加密算法都可以將信息轉換為另外一種內容,但是,MD5 算法對比 加密算法 缺少了解密過程。

好比一頭山羊,被層層加工制作成一包包風干羊肉,這個就是一次MD5操作。這種加工過程,勢必將羊身體N多部位有損失,故無法通過羊肉干再復原出一頭山羊...

2aa31832-6b2e-11ed-8abf-dac502259ad0.png

使用加密算法加密后的消息是完整的,并且基于解密算法后,可以恢復原始數據。而MD5 算法得到的消息是不完整的,并且通過摘要的數據也無法得到原始數據。

所以嚴格意義上來講,MD5 稱為摘要/散列算法更合適,而不是加密算法

那現實的問題來了,MD5究竟有什么用?

審核編輯:湯梓紅

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

    關注

    0

    文章

    29

    瀏覽量

    20888
  • 加密算法
    +關注

    關注

    0

    文章

    216

    瀏覽量

    25559
  • 數據加密
    +關注

    關注

    0

    文章

    54

    瀏覽量

    12733

原文標題:MD5到底算不算一種加密算法?

文章出處:【微信號:OSC開源社區,微信公眾號:OSC開源社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【安全算法MD5MD5摘要運算的C語言源碼實現

    【安全算法MD5MD5摘要運算的C語言源碼實現
    的頭像 發表于 09-12 16:32 ?3672次閱讀
    【安全<b class='flag-5'>算法</b>之<b class='flag-5'>MD5</b>】<b class='flag-5'>MD5</b>摘要運算的C語言源碼實現

    如何對MD5加密算法優化?

    有人針對程序安全啟動過程,進行MD5算法的優化嘛。目前采用標準算法,時間稍長,如果有人做過優化的話,可以分享下,謝謝。
    發表于 02-18 08:20

    基于MD5算法的密碼加密

    MD5進行密碼的加密MD5算法對密碼的加密規則,第個,輸入的長度不固定但是輸出的長度是固定的
    發表于 07-17 06:11

    加密算法(DES,AES,RSA,MD5,SHA1,Base64)

    加密算法(DES,AES,RSA,MD5,SHA1,Base64)比較和項目應用加密技術通常分為兩大類:"對稱式"和"非對稱式"。對稱性加密算法:對稱式
    發表于 07-19 08:44

    【開源三方庫】crypto-js加密算法庫的使用方法

    加密算法(如 AES、DES)和散列函數(如 MD5、SHA1、SHA256),以及消息認證碼(MAC)算法。它提供了套完整的加密工具,滿
    發表于 09-08 15:10

    md5加密算法源代碼

    This file contains a summary of what you will find in each of the files thatmake up your Md5 DLL.
    發表于 09-08 09:18 ?81次下載

    一種基于MD5硬件Key的票據號產生方法

    文章討論了一種基于加密處理器的商業票據產生方法,介紹了采用多個母密鑰片斷產生MD5 密鑰的算法,以及密鑰在加密處理器中的存儲和管理方式,并給
    發表于 01-22 15:23 ?10次下載

    MD5加密算法改進及其特征碼在殺毒軟件中的應用

    文章分析了MD5算法發展、危機、碰撞分析并加入"鹽值"對算法做了改進,然后給出了其C++的具體實現算法;分析MD5特征碼的特點構建了特征庫配
    發表于 12-21 10:19 ?8次下載

    C#教程之MD5加密

    C#教程之MD5加密,很好的C#資料,快來學習吧。
    發表于 04-20 15:27 ?14次下載

    labview md5加密算法.llb

    md5加密算法 md5加密算法 md5加密算法 md5
    發表于 05-25 14:25 ?112次下載

    md5算法原理與實現

    MD5為計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護。用于確保信息傳輸完整致。是計算機廣泛使用的雜湊算法,主流編程語
    發表于 12-28 08:42 ?7144次閱讀
    <b class='flag-5'>md5</b><b class='flag-5'>算法</b>原理與實現

    MD5的硬件應該如何加密詳細方法說明

    加密技術與我們的日常生活息息相關,在信息社會更是凸現重要。本文將主要就MD5算法及密碼學和其硬件實現做些相關探討。MD5的全稱是messa
    發表于 08-19 17:31 ?2次下載
    <b class='flag-5'>MD5</b>的硬件應該如何<b class='flag-5'>加密</b>詳細方法說明

    md5算法可逆嗎_MD5值是什么

    MD5不可逆的原因是由于它是一種散列函數(也叫哈希函數,哈希函數又稱散列函數,雜湊函數,他是個單向密碼體制,即從明文到密文的不可逆映射,只有加密過程沒有解密過程,哈希函數可以將任意長
    的頭像 發表于 11-16 15:30 ?1.3w次閱讀

    md5是什么_md5怎么用

    MD5信息摘要算法(英語:MD5 Message-Digest Algorithm),一種被廣泛使用的密碼散列函數,可以產生出個128位(
    的頭像 發表于 11-16 15:42 ?1.2w次閱讀

    開源物聯網技術--哈希算法MD5加密功能技術分享

    MD5(Message-Digest Algorithm 5)是一種常用的哈希函數,通常用于數據加密和安全校驗等場合。MD5
    的頭像 發表于 09-21 09:57 ?1802次閱讀
    開源物聯網技術--哈希<b class='flag-5'>算法</b><b class='flag-5'>MD5</b><b class='flag-5'>加密</b>功能技術分享
    主站蜘蛛池模板: 天天摸天天碰成人免费视频| 五月天婷婷在线播放| 欧美色图网站| 狠狠五月天| 丁香五香天堂网卡| 欧美色视频网| 巨乳色最新网址| 日本成人在线网址| 午夜欧美福利| 四虎国产精品免费观看| 欧美一级在线观看| 色丁香在线| 一级做a爱过程免费视| 日本一区二区不卡在线| 韩国一区二区三区视频| 亚洲春色www| 亚洲偷偷| 一级aaaaa毛片免费视频| 久久99热国产这有精品| 亚洲一区有码| www亚洲成人| 一色屋成人免费精品网| 午夜免费影院| 萌白酱香蕉白丝护士服喷浆 | 天天天综合| 小泽玛利亚在线观看123| 午夜手机视频| 五月天婷婷基地| 加勒比在线免费视频| 69xxxx日本hd4k| 亚洲免费播放| 五月月色开心婷婷久久合| 免费观看黄色网页| 一级视频在线免费观看| 国产精品人人爱一区二区白浆| 色天使在线观看| 三级精品在线观看| 激情福利网站| 国产一级做a爰片久久毛片男| 激情欧美一区二区三区中文字幕| 综合免费视频|