0

J2MEを実行しているモバイルクライアントによって行われた要求にデジタル署名しようとしていますが、.NetFrameworkによる署名を確認したいと思います。

実装が

DSACryptoServiceProvider //.Net

Signature.getInstance("SHA1withDSA", "SUN") //Java

互換性がありますか?または誰かがより良いアイデアを持っていますか?


いくつかの調査の結果、同じ基本的な実装を持つC#とJavaの両方のDSA APIを備えているように見えるこのライブラリを見つけました:http ://www.bouncycastle.org

誰かがこれを経験したことがありますか?

4

4 に答える 4

1

それらは互換性がなければなりません。互換性がなければ、Java および .NET Web サービスは互換性がありません。

于 2009-12-06T07:59:09.287 に答える
1

J2ME => .Net Web サービスに対処する必要がありました。そして、暗号化にいくつか問題がありました。私が知る限り、DSA Java と .Net は DES と AES の暗号化が異なります。

これはあなたの質問への回答ではありませんが、役立つと思います。

Bouncy Castle という名前のライブラリがあります。

Java のリリース: http://www.bouncycastle.org/latest_releases.html (J2ME を選択)

C# のリリース http://www.bouncycastle.org/csharp/

私は頭痛なくそれらを使用しました。ドキュメンテーションは貧弱ではありませんが、良くもありません。ただし、Java と C# のバージョンには互換性があります。

于 2009-12-03T12:41:11.723 に答える
1

.NET と Java は、さまざまな方法で署名をエンコードします。それ以外の場合は、互換性があるはずです。詳細は別の回答で。

于 2009-12-16T19:28:45.870 に答える
0

私が理解しているように、DSA / SHA1は標準のアルゴリズム(またはRFCですが、気にしないでください)であるため、互換性がある可能性が高いです。

于 2009-12-03T12:13:44.233 に答える