亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

可以解密MD5散列嗎?

可以解密MD5散列嗎?

可以解密MD5散列嗎?有人告訴我,他看到軟件系統:從其他系統檢索MD5加密密碼;解密加密密碼使用系統自己的算法將密碼存儲在系統的數據庫中。這有可能嗎?我認為解密MD5散列是不可能的/不可行的。我知道有MD5字典,但是有真正的解密算法嗎?
查看完整描述

4 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

否。MD5不是加密(雖然它可以作為某些加密算法的一部分),它是一種方法。散列函數..作為轉換的一部分,許多原始數據實際上是“丟失”的。

想想看:MD5總是128位長。這意味著有兩個128可能是MD5散列。這是一個相當大的數字,但它絕對是有限的。然而,對給定的哈希函數有無限多個可能的輸入(其中大多數包含超過128位,或僅為16個字節)。因此,實際上有無限多的數據可能會散列到相同的值。讓哈希有趣的是,要找到兩個散列到相同值的數據是非常困難的,而且意外發生的概率幾乎為0。

(非常不安全的)哈希函數(這說明了它是單向的)的一個簡單例子是,獲取一段數據的所有比特,并將其作為一個大數字來處理。接下來,使用一些大的(可能是素數)來執行整數除法。n并取其余部分(見:模數)。你將被留下一些數字介于0和n..如果要再次執行相同的計算(在任何時間、在任何計算機上、在任何地方),使用完全相同的字符串,它將得到相同的值。然而,沒有辦法找出原值是什么,因為有無數的數字有這個精確的余數,除以n.

也就是說,md5已經被發現有一些弱點,例如通過一些復雜的數學,可以在不嘗試2的情況下找到碰撞。128可能的輸入字符串。而且大多數密碼都是短的,而且人們經常使用公共值(如“密碼”或“秘密”),這意味著在某些情況下,您可以通過搜索哈?;蚴褂?/trans>彩虹臺..這就是為什么你應該永遠“食鹽“散列密碼,以便兩個相同的值,當散列時,不會散列到相同的值。

一旦通過散列函數運行了一段數據,就不會返回。


查看完整回答
反對 回復 2019-06-01
?
婷婷同學_

TA貢獻1844條經驗 獲得超8個贊

你不能-在理論上。散列的全部意思是它只是一種方式。這意味著,如果有人設法獲得哈希列表,他們仍然無法獲得您的密碼。此外,這意味著即使有人在多個站點上使用相同的密碼(是的,我們都知道我們不應該使用,但是.)任何訪問站點A的數據庫的人都不能在站點B上使用用戶的密碼。

MD5是一個散列的事實也意味著它會丟失信息。對于任何給定的MD5哈希,如果允許任意長度的密碼,則可能有多個密碼產生相同的哈希。對于一個好的散列,在計算上不可能找到超過一個非?,嵥榈淖畲箝L度,但這意味著沒有擔保如果您找到一個具有目標散列的密碼,它肯定是原始密碼。它是極不可能你會看到兩個只有ASCII的,長度合理的密碼,具有相同的MD5哈希,但這不是不可能的。

MD5是用于密碼的糟糕哈希:

  • 這是快速的,這意味著如果你有一個“目標”哈希,它是便宜的嘗試了很多密碼,看看你是否能找到一個哈希的目標。腌制無濟于事

    那,那個

    方案,但這有助于使試圖找到與任何一個密碼匹配的密碼變得更昂貴。

    倍數

    使用不同鹽類的散列。
  • 我相信它有一些缺陷,可以更容易地找到沖突,盡管在可打印的文本(而不是任意的二進制數據)中找到沖突至少要困難一些。

我不是一個安全專家,所以不會提出一個具體的建議以外的“不要滾動您自己的認證系統”。從有信譽的供應商那里找到一個,并使用它。安全系統的設計和實現都是一項棘手的工作。


查看完整回答
反對 回復 2019-06-01
?
暮色呼如

TA貢獻1853條經驗 獲得超9個贊

從技術上講,這是“可能的”,但在非常嚴格的條件 (彩虹桌,基于用戶密碼在該散列數據庫中的極小可能性而強制執行)。

但這并不意味著

  • 活的


  • 安全

你不想“逆轉”MD5哈希。使用下面列出的方法,您就不需要這樣做了。“反向”MD5實際上被認為惡意-一些網站提供了破解MD5哈希的能力,但它們都是包含字典單詞、先前提交的密碼和其他單詞的大型數據庫。有一個很小的機會它將使您需要的MD5哈希反轉。如果你鹽漬MD5散列-這也不起作用?。?


MD5哈希登錄方式工作是:

注冊期間:
用戶創建密碼>密碼使用md5->存儲在數據庫中的散列。

登錄期間:
用戶輸入用戶名和密碼->(用戶名檢查)密碼使用md5->哈希與數據庫中存儲的散列進行比較。

當需要“丟失密碼”時:

2個備選方案:

  • 用戶發送一個隨機密碼登錄,然后被竊聽,以改變它在第一次登錄。



  • 用戶被發送一個鏈接來更改他們的密碼(如果您有安全問題/等,可以進行額外的檢查),然后新密碼在數據庫中被散列并替換為舊密碼。


查看完整回答
反對 回復 2019-06-01
?
qq_笑_17

TA貢獻1818條經驗 獲得超7個贊

不是直接的。因為針孔原理,對任何給定的MD5輸出都有(可能)不止一個哈希值。因此,你不能肯定地逆轉它。此外,MD5是為了使人們很難找到任何這種反向散列(然而,有一些攻擊產生了碰撞-也就是說,生成兩個對相同結果進行散列的值,但不能控制得到的MD5值是什么)。

但是,如果將搜索空間限制為,例如,長度小于N的普通密碼,則可能不再具有不可逆性屬性(因為MD5輸出的數量遠遠大于感興趣域中的字符串數量)。然后,您可以使用彩虹臺或者類似于反向散列。


查看完整回答
反對 回復 2019-06-01
  • 4 回答
  • 0 關注
  • 930 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號