Encryption

將 AES GCM/GMAC 與 ECDSA 結合起來有什麼好處?

  • August 24, 2021

這是一個現實世界的問題(由於我不是密碼學專家,我只有一些關於使用它的基本知識,而不是深入了解 ist 在後台是如何工作的。):一個用於從許多人那裡收集數據的系統嵌入式終端設備採用 AES128 GCM/GMAC 來保護消息的機密性和真實性:每條消息 $ M $ 已加密 $ C = E(K, M) $ 並用標籤保護 $ T=T(K, M) $ 使用對稱密鑰: $ (C, T) $ 被發送到接收方。

在系統的高級版本中,除了這種保護,數字簽名 $ S=S(M) $ 採用基於 ECDSA(使用 ECC NIST 密鑰材料):第一個符號 $ M $ ,然後加密:

簽名的結果是元組 $ (S, M) $

然後 $ { E(K,(S,M)), T(K, (S,M))} $ 被發送到具有公共 ECC 密鑰的接收方。

Q1:我們從使用這個額外的簽名中獲得了什麼額外的好處?

如果 GCM/GMAC 以正確的方式使用(例如,只使用一次初始化向量)並且對稱密鑰沒有被破壞,那麼 GCM/GMAC 是一個很好的保護。在哪些場景下,額外使用簽名有助於提高安全性?

Q2:除了對消息進行簽名外,ECDH 還用於不時就新的對稱密鑰達成一致。在“舊”版本中,這是通過(標準化)密鑰包裝算法完成的,該算法依賴於對稱 KEK。我再次問:使用 ECDH 而不是 Key Wrap 的真正好處是什麼?

我當然知道公鑰密碼學的原理,但與僅使用對稱變體相比,我們無法真正估計我們獲得的額外價值,這證明了實施高級版本的努力是合理的。

Q1:我們從使用這個額外的簽名中獲得了什麼額外的好處?

我可以看到一些好處,儘管最終應該是案例表明可能的好處。

  1. 只有擁有私鑰的一方才能簽署文件。使用 MAC,雙方都可以使用共享密鑰進行簽名;
  2. 在標籤驗證和解密之後,驗證選項可能不再可用(換句話說,對稱加密僅用於提供傳輸安全性);
  3. 明文消息的簽名驗證可能由獲得(可信)公鑰的另一方執行。

Q2:除了對消息進行簽名外,ECDH 還用於不時就新的對稱密鑰達成一致。在“舊”版本中,這是通過(標準化)密鑰包裝算法完成的,該算法依賴於對稱 KEK。我再次問:使用 ECDH 而不是 Key Wrap 的真正好處是什麼?

我的猜測是,這僅僅是因為橢圓曲線加密不提供封裝密鑰的直接方法,而它可能比其他提供封裝的原語提供好處(高安全性下的效率)。

引用自:https://crypto.stackexchange.com/questions/93707