Java Serializable - 序列化/反序列化是否具有安全性?

时间:2014-09-21 05:47:35

标签: java serialization

我有一个基于Serializable类的问题。

在Google上搜索后,我找不到满足我问题的答案。

这是我正在做的事情:

通过UDP(DatagramPacket)将序列化对象发送到服务器。

Packet类是一个抽象类,所有数据包都应该继承。 Packet是Serializable,它有一个生成的UUID作为静态变量。 客户端和服务器都具有此生成的UUID。

服务器反序列化对象,检查它是否继承了Packet,然后评估它正确需要传输到的Packet类(服务器端)。

我想知道序列化和转换对象是否在某种程度上是安全的;有这样说:

如果有人修改了客户端数据包类并添加了新的方法和字段等,那么将该对象转换为服务器端对象是否仍有资格?

希望这可以很好地解决。

1 个答案:

答案 0 :(得分:2)

是可序列化对象在暴露私有变量时会产生安全隐患。 参考:Serializable Interface

关于添加新字段和方法,有些东西是兼容的,有些则不兼容。请查看此帖子了解更多详情。 Java Serialization

另外,有关详细信息,请查看:IBM Dev Works : Java Things

我希望这就是你要找的东西。