代码之家  ›  专栏  ›  技术社区  ›  Chris Craft

有没有类似dpapi的东西可以用于.NET Compact Framework或Windows Mobile?

  •  1
  • Chris Craft  · 技术社区  · 16 年前

    我需要一种方法来保护移动设备上的私钥。

    我在“编写安全代码”一章“保护机密数据”中知道,“Windows CE”不能在安全环境中使用。但是这本书已经有很多年的历史了,2003年。

    还是这样吗?告诉我不是这样的。现在必须有一种方法来保护私钥。

    4 回复  |  直到 15 年前
        1
  •  3
  •   dso    15 年前

    dpapi包含在一组win32函数中, CryptProtectData CryptUnprotectData . 这些功能在Windows CE和Windows Mobile平台上可用(请参阅链接),尽管我不知道它们添加了支持的版本。

    dpapi的.NET包装器是 ProtectedData System.Security.Cryptography命名空间(assembly system.security.dll)中的类。但是,我认为.NET Compact框架还没有实现这一点,因此如果使用.NET,则必须使用P/Invoke。

        2
  •  1
  •   Shane Powell    15 年前

    如果用户有权访问设备,那么不可以100%安全地存储密钥。你可以提高杆,但你不能移除它。

    您必须外部化对密钥的访问,例如用户输入的用户名和/或密码,或通过其他方法发送到设备(例如,通过网络连接的非对称加密)。这是Windows Mobile程序员的安全建议。

    您在设备上存储密钥的任何方式都可以进行反向工程。这包括使用CryptProtectData和CryptUnProtectData API。

        3
  •  0
  •   Frank Krueger    15 年前

    使用标准加密算法有什么问题?

        4
  •  0
  •   Chris Craft    15 年前

    http://www.windowsfordevices.com/news/NS5217487259.html?kc=rss

    网络广播涵盖了Windows Mobile程序员的安全性

    这看起来会很好。