Java堆转储中的敏感数据

前端之家收集整理的这篇文章主要介绍了Java堆转储中的敏感数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我编写的软件处理各种敏感信息,如电子邮件地址,密码和信用卡号.

当我们遇到内存问题时,让应用程序编写堆转储会很好.问题是如果一个线程恰好在该区域中工作,那么堆转储可能包含纯文本的敏感信息…当我们在其他地方加密它时,我们真的不希望写入磁盘.

是否有处理此问题的方法,例如导致JVM写入加密转储?

最佳答案
我一直在考虑在VM外面处理这个问题.一种天真的方法可能是让jvm将转储写入加密的环回设备.当然,这并不是完全安全的,因为任何具有root访问权限的人都可以访问挂载点,但这是我期望的那种解决方案.我可能会看到我是否可以设置jvm最终写入的FIFO.我知道vm将使用的文件名,所以这可能会起作用,这取决于vm如何应对(稍后:这不起作用.JVM抱怨“文件存在”)

使用char数组只能缓解问题,但仍有可能数组在转储时会包含一些纯文本.

猜你在找的Java相关文章