keytool 是否使用某些数据擦除程序在内部删除条目?

Does keytool use some data erasure procedure to delete an entry internally?

他们是否使用一些安全的数据擦除程序,例如 Bruce Schneier 的算法、Peter Gutmann 的算法或其他模式?

首先,那不是任何纠删码所在的地方。它实际上会在 com.sun.crypto.provider.JceKeyStore class 中(或周围)。这是 keytool 等使用的 KeyStoreSpi 的内置实现。

但看了这些,我认为答案是否定的

事实上,engineDeleteEntry 方法只是在操作密钥库的内存副本。有不同的方法用于加载和存储内存中的密钥库。这些只是对 InputStreamOutputStream 进行操作......并且不会做任何特别的事情来删除文件的先前副本。

这给我们留下了 keytool 本身作为一个可能发生擦除的地方。但事实并非如此。它只是打开一个 FileOutputStream 并将新的(加密的)密钥库内容写入输出文件。


但正如其他人指出的那样,删除文件的旧副本没有什么价值...鉴于以加密形式存储的密钥库。