背景:我们有运行嵌入式XP SP3,.NET Framework 3.5的设备,其中windows分区(c :)写保护。我们使用System.Security.Cryptography.ProtectedData来加密和解密数据(使用DataProtectionScope.LocalMachine)。
问题:大约3个月后,我们得到间歇性的" System.Security.Cryptography.CryptographicException:密钥无法在指定状态下使用。 "我们尝试解密一个值时的异常。加密值存储在启用写入的驱动器上的文件中并保持不变。在1-3个电源循环后,该值将被解密。
从阅读开始,MasterKey可能会在我们启动时到期并续订。但是,当我们重新启动并且抛出CryptographicException异常时,由于我们的写保护驱动器,更新的MasterKey可能会丢失。我知道LocalMachine范围并不安全,但是,该系统的最终用户无法访问设备的XP SP3嵌入式操作系统,也无法登录设备。
问题: