1 回答

TA貢獻1850條經(jīng)驗 獲得超11個贊
是否只是密鑰大小 1024 和 SHA-1 哈希算法由于某種原因無法在此特定實現(xiàn)中進行交換
有點。有兩種名為 DSA(或 DSS,如果您愿意)的競爭算法。
第一個在 FIPS 186-1 和 FIPS 186-2 中描述,適用于 512 到 1024 位的密鑰,步長為 64 位,并且需要 SHA-1。
第二種,在 FIPS 186-3 及更新版本中描述,適用于大小為 1024、2048 和 3072 位的密鑰,具有“批準的哈希函數(shù)”(基本上意味著 SHA-2 函數(shù))。
DSACryptoServiceProvider 使用 Windows CAPI,它只支持舊版本的 DSA。DSACng 使用 Windows CNG,它支持兩個版本。因此 DSACryptoServiceProvider 無法升級(在 .NET 中,因為 Windows 表示 CAPI 僅供維護且已棄用)。
DSA 總體上已經(jīng)失寵。它比 RSA 和 ECDSA 慢,它比 RSA 具有更多“完美或損壞”狀態(tài),并且其密鑰生成比 RSA 和 ECDSA 慢幾個數(shù)量級。
Windows 已決定他們不會、也“不會”支持使用 FIPS 186-3 DSA 簽名的 X.509 證書……加密庫只為那些被迫有效使用它的人提供它。(Apple Security.framework 不允許生成 DSA 密鑰,并且無法驗證 FIPS 186-3 簽名,并且 Apple 不提供 DSA 證書)。
- 1 回答
- 0 關(guān)注
- 202 瀏覽
添加回答
舉報