当前位置:  开发笔记 > 编程语言 > 正文

如何保证在运行时解密的文件被清除?

如何解决《如何保证在运行时解密的文件被清除?》经验,为你挑选了2个好方法。

使用C或C++,在将文件解密到磁盘后 - 如果应用程序崩溃或系统关闭且无法正常清理,我如何保证将其删除?在Windows和Linux上使用C或C++?



1> Bill the Liz..:

不幸的是,没有100%万无一失的方法来确保在系统崩溃的情况下删除该文件.想想如果用户只是在文件在磁盘上时拔出插头会发生什么.没有任何异常处理可以保护您免受那种(最坏的)情况的影响.

您可以做的最好的事情是不首先将解密的文件写入磁盘.如果文件以加密和解密形式存在,那么这就是安全性方面的弱点.

您可以做的第二件事是使用Brian的结构化异常处理建议,以确保临时文件得到清理.这不会保护您免受所有可能性的影响,但它会有很长的路要走.

最后,我建议您在启动应用程序时检查临时解密文件.这将允许您在应用程序完成系统崩溃后进行清理.将这些文件放在任何时间都不是理想的,但至少这会让你尽快摆脱它们.



2> housemaister..:

根本不要将解密的文件写入磁盘.

如果关闭系统,则文件仍在磁盘上,可以访问磁盘,从而访问文件.

例外情况是使用加密文件系统,但这不受您的程序控制.

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有