Encryption

安全的私鑰儲存

  • August 9, 2012

我正在用 Java 開發應用程序,該應用程序必須在可預見的未來(即至少 10 年)將 RSA 密鑰儲存在軟體中。

儲存私鑰的兩個最常見的標準是 PKCS12 和 JKS(Java Key Store)。雖然 PKCS12 支持許多不同的算法,但即使是最安全的算法也是基於 SHA1 的 3DES。JKS 更糟糕,因為預設值基於 MD5 和 3DES。

JKS 的 Bouncy Castle Java 庫版本要好一些,因為它PBEWithSHAAndTwofish-CBC用於“UBER”版本的密鑰儲存格式。

是否有任何標準格式的私鑰儲存支持使用 AES 和 SHA-2 加密密鑰對?

RFC 5958RFC5959 似乎是儲存加密私鑰的最新標準。它廢棄了 RFC 5208,也稱為 PKCS#8。我的理解是 AES 是 RFC 5958 支持的眾多加密算法之一。

GNU Keyring File Format是另一種使用 AES-128 儲存私鑰的文件格式標準。

Gnome Keyring 實現使用(除其他外)AES-128 加密來儲存私鑰。唉,它似乎沒有遵循任何已發布的標準,但也許可以將其視為事實上的標準。Gnome Keyring FAQ簡要提到,在未來的某個時候(2010 年之後),它將過渡到“加密密鑰環的標準方法”(PBKDF2),這顯然需要“一種新的文件格式”(可能是上述格式之一?)。

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