欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

什么是HMAC,它如何保護文件傳輸?

數據完整性對于保護通信至關重要,通常通過稱為 HMAC 的機制實現。了解它是什么以及今天如何使用它!

概述

數據完整性檢查對于安全通信至關重要。它們使通信方能夠驗證他們收到的消息的完整性和真實性。在 FTPS、SFTP 和 HTTPS 等安全文件傳輸協議中,數據完整性/消息身份驗證通常通過稱為 HMAC 的機制實現。在這篇文章中,我們解釋了 HMAC 是什么、它的基本內部工作原理以及它如何保護數據傳輸。

什么是HMAC,它如何保護文件傳輸?

數據完整性檢查在安全文件傳輸中的重要性

業務決策和流程高度依賴于準確可靠的數據。如果數據被篡改并且這些變化未被注意到,它可能會影響決策和流程。因此,如果您的數據必須通過網絡傳輸,尤其是像 Internet 這樣危險的網絡,您必須采取預防措施來保持其完整性,或者至少知道它是否已被黑客入侵或更改。這正是 FTPS、SFTP 和 HTTPS 等安全文件傳輸協議配備防止數據完整性威脅機制的原因。目前最常用的機制是 HMAC。

什么是 HMAC?

HMAC 代表 Keyed-Hashing for Message Authentication。它是通過對數據(待驗證)和共享密鑰運行加密哈希函數(如 MD5、SHA1 和 SHA256)獲得的消息驗證碼。HMAC 在RFC 2104 中指定。

HMAC 與數字簽名幾乎相似。它們都強制執行完整性和真實性。他們都使用加密密鑰。它們都使用哈希函數。主要區別在于數字簽名使用非對稱密鑰,而 HMAC 使用對稱密鑰(無公鑰)。

什么是HMAC,它如何保護文件傳輸?

HMAC 的工作原理

要了解 HMAC 的工作原理,讓我們首先檢查如何使用散列函數(單獨)對文件傳輸進行數據完整性檢查。假設客戶端應用程序從遠程服務器下載文件。假設客戶端和服務器已經就通用哈希函數達成一致,例如 SHA2。

在服務器發出文件之前,它首先使用 SHA2 哈希函數獲取該文件的哈希值。然后它將該哈希(例如消息摘要)與文件本身一起發送。客戶端收到這兩項(例如下載文件和哈希)后,獲取下載文件的 SHA2 哈希,然后將其與下載的哈希進行比較。如果兩者匹配,則意味著文件未被篡改。

如果攻擊者設法攔截下載的文件,更改文件的內容,然后將更改后的文件轉發給接收者,那么該惡意行為就不會被忽視。這是因為,一旦客戶端通過約定的散列算法運行被篡改的文件,生成的散列將與下載的散列不匹配。這將使接收者知道文件在傳輸過程中被篡改。

所以哈希函數應該保護你的文件,對吧?沒那么快。雖然散列函數可以建立數據完整性,但它不能建立真實性。客戶端如何知道它收到的消息來自合法來源?

這就是為什么 FTPS、SFTP 和 HTTPS 等安全文件傳輸協議使用 HMAC 而不僅僅是散列函數的原因。當兩方通過這些安全文件傳輸協議交換消息時,這些消息將伴隨 HMAC 而不是普通的散列。HMAC 使用散列函數和共享密鑰。

什么是HMAC,它如何保護文件傳輸?

共享密鑰為交換方提供了一種確定消息真實性的方法。也就是說,它為雙方提供了一種驗證他們收到的消息和 MAC(更具體地說,HMAC)是否真的來自他們應該進行交易的一方的方法。

密鑰啟用此功能,因為它是在密鑰交換期間生成的,這是一個需要雙方參與的初步過程。只有參與密鑰交換的那兩個方會知道共享密鑰是什么。反過來,如果他們使用共享密鑰計算消息的相應 MAC,他們將是唯一能夠得出相同結果的人。

為什么 HMAC 適合文件傳輸?

除了啟用數據完整性和消息認證的能力之外,HMAC 是出色的文件傳輸數據完整性檢查機制的另一個原因是它的效率。正如文章了解散列中所討論的,散列函數可以獲取任意長度的消息并將其轉換為固定長度的摘要。這意味著,即使您有相對較長的消息,它們相應的消息摘要也可以保持較短,從而使您能夠最大限度地利用帶寬。

選擇 HMAC 函數

由于 HMAC 的屬性(尤其是其加密強度)高度依賴于其底層哈希函數,因此通常基于該哈希函數來識別特定的 HMAC。所以我們有 HMAC 算法,其名稱為 HMAC-MD5、HMAC-SHA1 或 HMAC-SHA256。

您可能聽說過 MD5 的碰撞相關漏洞。值得注意的是,盡管 HMAC-MD5 具有底層的 MD5 哈希函數,但并未受到這些漏洞的影響。無論如何,SHA-1 在密碼學上仍然比 MD5 強,而SHA-2(以及它的不同形式,如 SHA-224、SHA-256、SHA-512)在密碼學上也比 SHA1 強,所以您需要考慮到這一點.

什么是HMAC,它如何保護文件傳輸?

那么您應該使用哪個 HMAC?您通常會根據其底層哈希函數選擇 HMAC。因此,例如,如果性能對您來說比安全性更重要,您會想要使用 HMAC-MD5。另一方面,如果安全性更為關鍵,那么您可能想要使用 HMAC-SHA256 來代替。

文章鏈接: http://www.qzkangyuan.com/9487.html

文章標題:什么是HMAC,它如何保護文件傳輸?

文章版權:夢飛科技所發布的內容,部分為原創文章,轉載請注明來源,網絡轉載文章如有侵權請聯系我們!

聲明:本站所有文章,如無特殊說明或標注,均為本站原創發布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發布本站內容到任何網站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
IDC云庫

成功遷移到云技術需要注意哪些因素?

2022-8-30 11:33:59

IDC云庫

了解橫向運動以及如何預防

2022-8-30 11:52:16

0 條回復 A文章作者 M管理員
    暫無討論,說說你的看法吧
?
個人中心
購物車
優惠劵
今日簽到
有新私信 私信列表
搜索
主站蜘蛛池模板: 宣城市| 安西县| 永春县| 昌黎县| 会泽县| 长子县| 丰台区| 南昌市| 金堂县| 阳春市| 宜君县| 海伦市| 泸溪县| 大渡口区| 汉阴县| 武宣县| 柳河县| 平塘县| 怀仁县| 砀山县| 德令哈市| 内黄县| 肇庆市| 汕头市| 从江县| 锡林浩特市| 龙海市| 博白县| 潮州市| 砚山县| 平潭县| 托克托县| 新营市| 涪陵区| 寿光市| 攀枝花市| 通道| 女性| 莒南县| 盐亭县| 墨玉县|