【问题标题】:Windows.Security.Cryptography and Windows Phone 8 SDK?Windows.Security.Cryptography 和 Windows Phone 8 SDK?
【发布时间】:2012-11-02 16:10:47
【问题描述】:

今天我安装了新的 windows phone 8 sdk (w8phone sdk)...试图包含我的一些基类 来自 Windows 8 应用程序......他们说的核心相同......但是哎呀?

没有Windows.Security.Cryptography

我使用SymmetricKeyAlgorithmProvider 通过 WCF 服务对序列化数据进行端到端加密。 (http://msdn.microsoft.com/en-us/library/windows/apps/xaml/br241537.aspx)

似乎使用 .NET Framework 加密是平台/设备的专有技术。

有人建议在 Windows 8 Phone 上使用相同的功能吗?

谢谢。

编辑/更新

我通过将http://www.bouncycastle.org/ 移植到分离 Windows 8 和 Windows Phone 8 库以及从此处略微更改的小 BC 引擎版本解决了这个问题:Encrypt/Decrypt using Bouncy Castle in C#

【问题讨论】:

    标签: encryption sdk windows-8 cryptography windows-phone-8


    【解决方案1】:

    Windows.Security.Cryptography 是一个 WinRT API。 Windows Phone 8 仍然主要是 Silverlight,使用来自 System.Security.Cryptography 的 API,其中不包括 SymmetricKeyAlgorithmProvider

    您仍然可以在 Windows Phone 上使用AesManaged API,这可能足以满足您的目的,也可能不够。

    Windows.Security.Cryptography 很可能只是 Microsoft cryptolib 的 x86 COM 抽象,与 .NET 3.5-4.0 上的大多数 System.Security.Cryptography 相同

    【讨论】:

    • 感谢您的大量回答。确保与 WP7 兼容性,即使在引擎盖下使用 Win8 核心也不容易转到 WinRT API。但我也希望在服务器端与 .NET 4.5 有相同的 Lib,而不是为了相同的加密目的而使用 3 种不同的实现。所以我坚持我的方法,使用相同的方法和签名为每个平台/设备编译 bouncycastle.org。
    • 这确实是一个很好的解决方案。可选地,随着 WP8 现在支持非托管代码,应该可以对加密算法进行非托管实现,与完全托管的实现相比,这样可以大大提高性能。但是我们可能需要几个月的时间才能在 Github et 上看到此类项目。人。
    • AesManaged 似乎在 System.Security.Cryptography 命名空间中。来源:msdn.microsoft.com/en-us/library/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    相关资源
    最近更新 更多