就像Windows上的大多数加壳器(PE加密器)一样,为了保护 secret ,它们可能会在运行时加密整个进程内存。
想知道 jvm 是否有我们可以选择的内存加密选项?
只是想如果有人转储了整个 JVM 内存,他就可以获得一些有关文本的 secret 信息,甚至 vi 或 grep 也可以进行这种文本搜索。
最佳答案
JVM 不会为您加密其内存,但它支持加密,并且您可以显式执行此操作。
一些常见的技术是;
- 不要将 key 在内存中存储的时间超过所需的时间。根据需要从安全服务检索 key 。
- 在不需要 secret 数据时立即覆盖它,而不是等待 GC 稍后清理内存。
- 使用硬件加密设备,例如USB 笔驱动器。这样 key 就永远不会在内存中。
注意:如果您加密内存,您还需要在内存中拥有解密内存的 key ,因此您所做的只是在该过程中添加一个步骤。
关于java - JVM 是否可以选择自动加密其内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53701185/