如何在程序能够自由读取数据文件时阻止用户解密数据文件?

sol*_*tim 0 encryption

我想要一个成熟的模型来做到这一点.假设我想向用户提供程序和敏感数据文件.该程序能够读取存储在数据文件中的任何数据,但不允许用户轻松破坏数据文件.数据文件将通过AES等标准算法进行加密.现在,问题转向如何管理密钥.把密钥放在程序中似乎是一个坏主意,但我还能做些什么呢?显然我不能直接将密钥交给用户.

EMP*_*EMP 5

没有办法安全地做到这一点,即.真正阻止用户阅读数据.只要他们拥有数据并且他们拥有可以读取它的程序,一个称职的反汇编程序将能够弄清楚程序如何读取它并做同样的事情.或者,更简单的是,他们可以让程序执行它,然后从内存中获取解密的版本.

话虽如此,如果您只是想阻止普通用户这样做,那么在源代码中对密钥进行硬编码应该没问题.:)只是对这提供的保护级别要切合实际.