我的应用程序将用户交互存储在加密文件中,并在Session
期间收集。会话就像离线考试一样,不仅可以存储答案,还可以存储鼠标点击,屏幕截图等。
会话必须保持ATOMIC,因此我会一直保存增量文件,并在会话结束时将它们一起修补。如果应用程序发现了被篡改文件的痕迹,则会将会话标记为不合格。
我想要实现的目标:
我已经考虑过IsolatedStorage,哈希等,但是希望得到其他人做过这类事情的建议。
答案 0 :(得分:1)
特别是对于.NET(和Java)等托管环境,在与完全控制系统的用户在同一台计算机上运行时,无法安全地执行此操作。尝试将需要安全的应用程序部分移动到中央计算机(例如Web服务)。这样,没有人可以将调试工具附加到该逻辑或进行内存转储。这是保护您的应用程序的唯一方法。
答案 1 :(得分:0)
您可以使用SecureString存储敏感信息,但仅限于内存中。并避免内存转储。
您可以加密文件,以避免在文件系统中看到敏感信息。
您无法避免文件删除,您可以在应用程序的生命周期内锁定文件,但这不是防弹。