【问题标题】:Porting Android to WP7. How do I handle KeyStore?将 Android 移植到 WP7。如何处理 KeyStore?
【发布时间】:2011-09-10 17:00:39
【问题描述】:
我正在将 Android 应用程序移植到 Windows Phone 7。Android 应用程序使用 KeyStore。从我读到的here 看来,C#/.NET 中的等价物是 X509CertificateStore。但是,包含命名空间似乎不是 Windows Phone 7 的一部分。是否有专门针对 WP7 的替代方法?
编辑:看起来有一个 X509Certificate 类。我对这两个平台上的证书都不熟悉,但我会试一试。任何其他建议仍然非常感谢
【问题讨论】:
标签:
.net
android
windows-phone-7
certificate
keystore
【解决方案2】:
不幸的是,在 WP7 上无法使用 Java 或 iOS 中的密钥存储。 X509Certificate 只能用于创建新证书,不能读取手机上现有的证书。如果您在MSDN 上查找它,您会注意到它们被标记为安全关键。无法在常规锁定设备上调用安全关键代码。
但是,您可以从字节流创建新的 X509Certificate,唯一的问题是您不能将此证书添加到设备证书存储中。这只能通过电子邮件或网络浏览器实现。也无法查看手机上已经安装了哪些证书(除了解锁手机并查看注册表和路径)。
在 WP7 上没有保护机密的地方,就像在 Androids KeyStore 中使用的那样。您只能像 here 中描述的那样使用带 DPAPI 的 IsolatedStorage,或者使用手机上某处不安全的密码加密 IsolatedStorage 中的文件。