1 回答

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
在 Java 中,(簽名)算法名稱是 的別名,即原始 FIPS186-0 算法。這與顯然由Go實(shí)現(xiàn)的非標(biāo)準(zhǔn)“原始”原語(yǔ)不同。 確實(shí)是您想要的正確Java名稱,但是“標(biāo)準(zhǔn)”(SUN)提供程序中的實(shí)現(xiàn)是一種笨拙的東西,需要20個(gè)字節(jié)的數(shù)據(jù),而不是或多或少,因?yàn)檫@是SHA1哈希的大小,這是FIPS186-3之前DSA的唯一標(biāo)準(zhǔn)哈希。DSA
SHA1withDSA
NONEwithDSA
如果您(擁有或可以獲取并)使用 BouncyCastle 提供程序,則它沒有此限制,并且應(yīng)該適用于更改為的代碼(并且修改了代碼或安全配置,以便選擇 BC 作為提供程序,當(dāng)然)。NONEwithDSA
如果你不使用Buly,我認(rèn)為你必須自己編寫算法代碼;我不認(rèn)為有任何方法可以讓SUN實(shí)現(xiàn)做你想做的事情。
盡管最好對(duì)標(biāo)準(zhǔn)中指定的適當(dāng)大小的哈希值進(jìn)行簽名,而不是原始數(shù)據(jù),然后可以使用指定和設(shè)計(jì)的 Java 提供程序。
- 1 回答
- 0 關(guān)注
- 89 瀏覽
添加回答
舉報(bào)