【问题标题】:Is data encrypted in Silverlight decryptable using C++?Silverlight 中加密的数据是否可以使用 C++ 解密?
【发布时间】:2011-06-21 01:31:00
【问题描述】:

我正在研究使用 WCF 在 Silverlight 客户端和本机代码 (C++) 服务器之间发送加密数据。我正在考虑使用 AesManaged 类来加密客户端发送回服务器的数据,但想知道解密。假设如果 AesManaged 类是根据 AES 规范实现的,它应该与任何 C++ AES 库交叉兼容,但鉴于之前我认为微软(和其他供应商)对规范的“解释”经验,我应该确认它如果可能的话。

我计划构建一个原型,但我希望得到已经在该领域有经验的人的回答。使用 C++/CLI 或 C# 访问 AesManaged 类不是一个选项,因为我正在处理要添加功能的遗留代码。

【问题讨论】:

    标签: c# c++ silverlight encryption


    【解决方案1】:

    我只能告诉你,问是件好事;我无法谈论这个特定的互操作,但我试图与一个使用称为 AesLib 的旧本机实现的遗留软件进行通信,并且我试图使用 AesCryptoServiceProvider。他们不会互相交谈,显然是因为 AesLib 要么使用没有 IV 的模式,要么具有我无法发现的静态或确定性 IV。

    如果您可以获取并引用本机服务器正在使用的 AES 实现,并围绕它实现与 ICryptoServiceProvider 兼容的包装器,那么这可能是您的消息完好无损地到达的最佳保证(尽管这可能会导致其自身的问题) .否则,我将确保我拥有有关此实现的所有可发现信息,以便我可以以相同的方式配置 AesManaged。您至少需要密钥、IV、块大小和模式。

    【讨论】:

      【解决方案2】:

      我很久以前(在 Silverlight 2 Beta 中)成功地使用了 C# AesManaged 和 PHP 的 AES 实现,所以这当然是可能的。

      但是,您可能需要仔细研究 IV、填充、块大小和模式等内容,以确保 AES 的设置匹配。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-09-03
        • 2016-10-21
        • 1970-01-01
        • 2012-08-30
        • 1970-01-01
        • 2013-04-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多