我對消息摘要的理解是,它是與加密數據一起發送的一些數據的加密散列,因此您可以驗證數據是否未被篡改。這個和消息認證碼(MAC)和散列MAC(HMAC)有什麼不同?Message Digest,Message Authentication Code和HMAC有什麼區別?
48
A
回答
78
- 甲消息摘要算法採用單個輸入 - 消息 - 和產生「消息摘要」(又名散列),它允許您驗證消息的完整性:任何變化到消息將(理想)導致產生不同的散列。可以替換消息和摘要的攻擊者完全能夠用新的有效對替換消息和摘要。
- MAC算法有兩個輸入端 - 的消息和密鑰 - 並且產生MAC,其可以驗證完整性和的消息的真實性:任何變化到消息或祕密密鑰將(理想地)導致產生不同的MAC。沒有祕密的人應該能夠產生驗證的MAC計算;換句話說,可以使用MAC來檢查MAC是否由可訪問密鑰的一方產生。
- HMAC算法只是一種特定類型的MAC算法,它在內部使用散列算法(而不是例如加密算法)來生成MAC。
14
- 甲消息摘要是一個簡單的消息的散列。它是應用於輸入數據的加密散列函數的輸出,它被稱爲消息。
- A 消息驗證碼(MAC)是一條證明消息完整性並且不容易被僞造的信息。
- A HMAC是由RFC 2104定義的特定種類的MAC。
維基百科有很好的文章涵蓋了所有這些條款:見Message Digest,Message Authentication Code和HMAC。
+1
對於MAC,完整性和真實性都可以證明,因爲發送方和接收方共享一個公共密鑰。 – Nate 2013-07-01 00:08:44
相關問題
- 1. Kohana :: message和Kohana :: config有什麼區別?
- 2. Message Digest java
- 3. MD5 Message Digest Java
- 4. 錯誤: - {「code」:「403」,「message」:「HMAC validation Failure」}
- 5. Send Message和Post Message之間有什麼區別,以及這些與C#,WPF和Pure windows編程有何關係?
- 6. Laravel 5.3:Passport Implementation - {「error」:「invalid_client」,「message」:「Client authentication failed」}
- 7. Exception的.ToString()和.Message之間的區別是什麼?
- 8. WebSphere Message Broker和WebSphere MQ之間的區別是什麼?
- 9. 投入和MESSAGE之間的區別?
- 10. Ionic 3 Native:File:{code:5,message:「ENCODING_ERR」}
- 11. select message for message feed
- 12. .NET的HMAC和HMAC KeyedHashAlgorithm有什麼區別?
- 13. python:error message
- 14. Mule Message Redelivery
- 15. Angular Digest Authentication
- 16. Struts 2 Validation message with HTML code inside
- 17. {「error」:{「message」:「Missing client_id parameter。」,「type」:「OAuthException」,「code」:101}}
- 18. JGroups:send(null,null,Message)vs send(Address,null,Message)
- 19. Microsoft Message Queue和ASPX
- 20. biztalk:identify message
- 21. Rails erb中的<% code %>和<%= code %>有什麼區別?
- 22. WSDL中的<types>和<message>之間的區別
- 23. git add之間的區別。和git commit -am「message」
- 24. CXF:PAYLOAD和MESSAGE數據格式之間的區別
- 25. HMAC簽名和哈希直接有什麼區別?
- 26. ISO_8583 MESSAGE包裝
- 27. ModelSim Message Viewer空
- 28. Zend \ Mail \ Message問題
- 29. 什麼是WSO2 Message Broker中的identity.xml?
- 30. WebView.requestFocusNodeHref(Message hrefMsg)中的消息是什麼?
@Rook這裏很老的評論,但CMAC只是MAC的一種特定形式。當然,沒有什麼能反對使用AES-CMAC。 – 2012-08-11 13:32:54
@owlstead你的權利,我很困惑,因爲一些圖書館將其稱爲模式。 – rook 2012-08-11 18:00:06
「一個MAC可以用來檢查MAC是否生成...」不應該是「...檢查_message_是否生成...」? – leonbloy 2017-09-20 13:46:28