我正在读这个article关于序列化。
这是我第一次看到加密序列化对象。 我试图加密一些可序列化的对象,然后将它们保存到一个文件中。 但是本文的示例使用了 ECB 模式,该模式已知会泄露有关加密明文的信息。我想知道,如何加密序列化对象 使用 CBC 而不是 ECB 模式?
为了使用 CBC,需要一个初始 vector 。该 vector 必须与序列化对象一起保存,但如果该 vector 被加密,那么我们就无法找到该 vector 来解密该对象。
此外,是否可以说初始 vector 将在保存可序列化对象的文件中以明文形式保存。但是这样文件不会被销毁吗?
使用 CBC 模式的示例将非常有用。
最佳答案
有一个不错的 SO 问答 about using 3DES here . IV 是密码/ key 的摘要。那里引用的解决方案可以通过适当的序列化机制扩展到 ByteArrayOutputStream
或直接到/从 FileOutputStream
。
(无论如何都不是专家,但已经指出了 SO 上的内容......)
关于java - 如何在 Java 中使用 DES(CBC 模式)加密序列化对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4975843/