成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

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

安全 應(yīng)用安全
數(shù)據(jù)加密的基本過(guò)程就是對(duì)原來(lái)為明文的文件或數(shù)據(jù)按某種算法進(jìn)行處理,使其成為不可讀的一段代碼為“密文”,使其只能在輸入相應(yīng)的密鑰之后才能顯示出原容,通過(guò)這樣的途徑來(lái)達(dá)到保護(hù)數(shù)據(jù)不被非法人竊取、閱讀的目的。 該過(guò)程的逆過(guò)程為解密,即將該編碼信息轉(zhuǎn)化為其原來(lái)數(shù)據(jù)的過(guò)程。

?一旦提到加密算法,經(jīng)常有人會(huì)有這樣的疑問(wèn):MD5 到底算不算一種加密算法呢?

在回答這個(gè)問(wèn)題之前,我們需要先弄清楚兩點(diǎn):

  • 什么是加密算法?
  • 什么是 MD5?

1.什么是加密算法?

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

-- 來(lái)自《百度百科》

使用密碼學(xué)可以達(dá)到以下三個(gè)目的:

  • 數(shù)據(jù)保密性:防止用戶的數(shù)據(jù)被竊取或泄露;
  • 數(shù)據(jù)完整性:防止用戶傳輸?shù)臄?shù)據(jù)被篡改;
  • 身份驗(yàn)證:確保數(shù)據(jù)來(lái)源與合法的用戶。

  • 加密算法分類

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

  • 對(duì)稱加密

對(duì)稱加密算法就是用一個(gè)秘鑰進(jìn)行加密和解密。

圖片

  • 非對(duì)稱加密

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

圖片

2.什么是MD5?

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

MD5 以 512位分組來(lái)處理輸入的信息,且每一分組又被劃分為16個(gè)32位子分組,經(jīng)過(guò)了一系列的處理后,算法的輸出由四個(gè)32位分組組成,將這四個(gè)32位分組級(jí)聯(lián)后將生成一個(gè)128位散列值。

MD5算法的主要特點(diǎn):

  • 長(zhǎng)度固定

MD5加密后值固定長(zhǎng)度是128位,使用32個(gè)16進(jìn)制數(shù)字進(jìn)行表示。

  • 單向性

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

  • 不可逆

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

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

Message Digest = '454e2624461c206380f9f088b1e55fae'

其實(shí),原始信息是以下長(zhǎng)長(zhǎng)的字符串:

93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0Nx
TulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC
0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOm
Vya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCo
B15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD
  • 恒定性

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

當(dāng)原始消息恒定時(shí),每次運(yùn)行MD5產(chǎn)生的消息摘要都是恒定不變的,無(wú)論是誰(shuí)來(lái)計(jì)算,結(jié)果都應(yīng)該是一樣的。

  • 不可預(yù)測(cè)性

讓我們?cè)賮?lái)嘗試一次,「不可逆」中應(yīng)用到的原始消息的最后一個(gè)字母'D',修改成'E',如下所示:

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

那經(jīng) MD5 后產(chǎn)生的消息摘要,是不是和 '454e2624461c206380f9f088b1e55fae' 很相似呢?

讓大家失望了,產(chǎn)生的消息摘要沒有一絲一毫的關(guān)聯(lián)性,新的消息摘要如下所示:

Message Digest = '8796ed5412b84ff5c4769d080b4a89a2'

聊到這里,突然想到一個(gè)有意思的問(wèn)題:

MD5是32位的,理論上是有限的,而世界上的數(shù)據(jù)是無(wú)限的,那會(huì)不會(huì)生成重復(fù)的MD5值?

是不是也有同學(xué)產(chǎn)生相似的疑問(wèn)呢?

理論上來(lái)講,當(dāng)然會(huì)生成重復(fù)的MD5值。

分享一個(gè)經(jīng)典的例子:

  • 數(shù)據(jù)源1:

d131dd02c5e6eec4693d9a0698aff95c2fcab58712467eab4004583eb8fb7f89 
55ad340609f4b30283e488832571415a085125e8f7cdc99fd91dbdf280373c5b
d8823e3156348f5bae6dacd436c919c6dd53e2b487da03fd02396306d248cda0
e99f33420f577ee8ce54b67080a80d1ec69821bcb6a8839396f9652b6ff72a70
  • 數(shù)據(jù)源2:


d131dd02c5e6eec4693d9a0698aff95c2fcab50712467eab4004583eb8fb7f89
55ad340609f4b30283e4888325f1415a085125e8f7cdc99fd91dbd7280373c5b
d8823e3156348f5bae6dacd436c919c6dd53e23487da03fd02396306d248cda0
e99f33420f577ee8ce54b67080280d1ec69821bcb6a8839396f965ab6ff72a70

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

79054025255fb1a26e4bc422aef54eb4

3MD5是加密算法嗎?

MD5計(jì)算,對(duì)原始消息(Message)做有損的壓縮計(jì)算,無(wú)論消息(輸入值)的長(zhǎng)度字節(jié)是多少,是1億字節(jié)還是1個(gè)字節(jié),都會(huì)生成一個(gè)固定長(zhǎng)度(128位/16字節(jié))的消息摘要(輸出值)。

也就是說(shuō),MD5 算法和加密算法都可以將信息轉(zhuǎn)換為另外一種內(nèi)容,但是,MD5 算法對(duì)比 加密算法 缺少了解密過(guò)程。

好比一頭山羊,被層層加工制作成一包包風(fēng)干羊肉,這個(gè)就是一次MD5操作。這種加工過(guò)程,勢(shì)必將羊身體N多部位有損失,故無(wú)法通過(guò)羊肉干再?gòu)?fù)原出一頭山羊...

圖片

使用 加密算法 加密后的消息是完整的,并且基于解密算法后,可以恢復(fù)原始數(shù)據(jù)。而 MD5 算法 得到的消息是不完整的,并且通過(guò)摘要的數(shù)據(jù)也無(wú)法得到原始數(shù)據(jù)。

所以嚴(yán)格意義上來(lái)講,MD5 稱為摘要/散列算法更合適,而不是加密算法!

那現(xiàn)實(shí)的問(wèn)題來(lái)了,MD5究竟有什么用??

責(zé)任編輯:武曉燕 來(lái)源: 架構(gòu)精進(jìn)之路
相關(guān)推薦

2020-02-25 16:30:36

MD5是不是加密

2020-10-15 08:20:52

MD5算法加密的過(guò)程

2016-12-15 09:26:53

MD5加密

2022-10-18 22:21:51

2011-12-28 13:14:39

2015-03-23 11:21:08

2009-06-06 18:57:47

MD5加密類Java Bean

2015-06-02 10:15:08

2009-06-30 10:05:24

MD5加密JSP源碼

2020-08-11 10:43:02

5G先進(jìn)技術(shù)5G網(wǎng)絡(luò)

2021-11-17 08:21:31

HTTP連接數(shù)據(jù)

2021-06-07 10:00:41

MD5算法加密

2023-10-16 19:05:20

2025-03-11 08:10:00

加密數(shù)據(jù)安全數(shù)據(jù)保護(hù)

2021-02-19 11:55:36

C語(yǔ)言MD5加密

2009-08-21 15:02:31

C#加密算法

2021-04-15 09:02:33

Python加密解密

2011-05-05 09:36:48

Oracle安全標(biāo)記

2013-10-17 13:20:34

2021-04-06 22:52:04

加密貨幣比特幣數(shù)字貨幣
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产成人精品一区二区三区在线 | 毛片一级黄色 | 国产精品小视频在线观看 | 亚洲免费视频网址 | 国产999精品久久久久久 | 在线看日韩 | 久久国产一区二区三区 | 国产精品污www在线观看 | 天天综合国产 | 99精品视频一区二区三区 | 久久精品网 | 观看毛片| 日韩视频精品在线 | 日韩理论电影在线观看 | 日韩高清中文字幕 | 久草网在线视频 | 毛片在线免费 | 亚洲欧美自拍偷拍视频 | 激情网站在线 | 国产精品免费观看 | 久久机热| 国产精品1区 | 草久久免费视频 | 久久久久香蕉视频 | 色天堂影院| 伊人狼人影院 | 午夜一区二区三区在线观看 | 91视频在线观看 | 伊人精品一区二区三区 | 精品一二| 亚洲精品乱码 | 国产精品高潮呻吟久久av黑人 | 激情欧美日韩一区二区 | 日韩一区二区三区视频 | 精品国产第一区二区三区 | 欧美在线a | 日本中文在线 | 国产一区三区在线 | 亚洲精品乱码8久久久久久日本 | 婷婷久久久久 | 成人一区二区三区 |