有谁对如何从内存中清除敏感数据提出建议?
该数据是信用卡信用数据,因此,我需要保证此数据将被删除。
我一直在阅读有关char []的信息,在我看来,我永远不应该使用文字字符串,因为在垃圾收集器想要获取此字符串之前,字符串将一直存在。
但...
我需要使用解密后的数据请求Rest API,因此当我将对象设置为xml格式时,不可避免地需要使用String。
伙计们,请帮帮我!
最佳答案
老实说,这是一种浪费的练习:/有持久的页表,崩溃转储,堆转储,cpu缓存,线程缓存,rowhammer攻击,冻结攻击,JVM的String实现本身以及许多服务器(例如Tomcat)实现了字符串池我不知道的事情。
但是,如果您下定决心,有时只是想检查一个愚蠢的“安全性” [剧院]审核框,则可以想象将其存储为char[]
或byte[]
并执行Arrays.fill(array, 'x')