【问题标题】:Are .Net's and Java's DSA implementation compatible?.Net 和 Java 的 DSA 实现是否兼容?
【发布时间】:2010-12-22 19:26:51
【问题描述】:

我正在尝试对运行 J2ME 的移动客户端发出的请求进行数字签名,并希望通过 .Net Framework 验证签名。

有谁知道有没有实现

DSACryptoServiceProvider //.Net

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

兼容吗?或者有人有更好的主意吗?


经过一些研究,我发现这个库似乎具有 C# 和 Java 的 DSA API,具有相同的底层实现:http://www.bouncycastle.org

有人有这方面的经验吗?

【问题讨论】:

    标签: .net java-me sha1 digital-signature dsa


    【解决方案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# 版本是兼容的。

    【讨论】:

      【解决方案2】:

      它们必须兼容,否则 Java 和 .NET 网络服务将不兼容,而且我确信它们是兼容的

      【讨论】:

        【解决方案3】:

        .NET 和 Java 以不同的方式对签名进行编码。否则它们应该是兼容的。 More details in another answer.

        【讨论】:

          【解决方案4】:

          据我了解,DSA/SHA1 是标准算法(或 RFC,但没关系),因此它们很可能可以互换。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-02-12
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-11-15
            • 1970-01-01
            • 2011-05-14
            相关资源
            最近更新 更多