我正在向现有程序(纯 c 控制台应用程序)添加加密功能。它需要很少的文件作为输入参数,我的任务是确保这些文件(敏感数据)的安全。
我现在要做的是首先加密文件(与外部应用程序进行简单的异或运算),然后在程序内部将它们解密,现有程序处理文件。然后,在一切成功后,我将这些文件加密回来(所有内容都存储在本地硬盘上)。
但是,安全性存在漏洞,因为所有“打开”的文件都存储在硬盘上。如果程序在中间某处失败,这些文件将不会被解密回来。
我的问题是现有程序将FILE
变量作为输入并直接使用这些文件。这不是我的程序,所以我无权修改它。
我需要的是将文件写入内存而不是硬盘。我知道 Linux 中有一些库可以实现这一点,但我是在 win 中开发的。