Encryption

使用單個 EC 證書/密鑰材料來派生對稱加密密鑰(用於儲存)?

  • September 19, 2013

這種情況涉及想要對文件進行 AES 加密的單方(單一證書),然後他們可以解密該文件。假設 EC 證書 + EC 密鑰有一個目的,即“文件加密”(可能類似於 EFS),頒發給人類(“CSO 先生”)或應用程序(“我的貓照片應用程序”)。證書將脫離現有的組織 PKI。

編輯涉及證書,因為已經維護了一個 PKI。我們想重用它,而不是引入另一個 (AES)-Key-Infrastructure。AES 密鑰在文件頭中加密,然後通過私鑰解密。這是一個可用性問題。

編輯#2: 這是一個儲存案例,接收者是發送者,時移。儲存介質本身是不可信的。實際上,簽名可能是一種矯枉過正,因為內部 AES 是經過身份驗證的 AES。

使用 RSA 證書,在抽象級別上可以簡單到

AESKey=KDF(nonce)
AESKey_encrypted = RSA_Encrypt(public key, AESKey) ---- (1)
AESKey_signed = RSA_Sign(private key, AESKey)      ---- (2)

File = AESKey_encrypted | AESKey_signed | AES(File_clear, AESKey)

僅供參考,AES 是經過身份驗證的 AES,這就是為什麼沒有單獨的 HMAC 的原因。無論如何,客戶想要橢圓曲線加密(521p 曲線)而不是 RSA。(2) 的 EC 對應項是明確的 (ECDSA),但 (1) 的 EC 對應項是我想從你們那裡聽到的。任何其他意見也表示讚賞。提醒一下,沒有第二方/第二方的證書。

最後,關於混合公鑰 + 比特桶和私鑰 + 相同比特桶(以上 1、2)的任何算法問題?據我所知,這些互動沒有經過證實的算法或結構弱點。

對於閱讀本文的任何人,決定是使用臨時靜態 EC 密鑰。看看 NIST SP800-56A。6.2.2 節描述了一些有趣的細節。

您可以使用ECIES,儘管它沒有得到廣泛實施。

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