gpt4 book ai didi

java - java序列化逆向工程

转载 作者:行者123 更新时间:2023-12-02 07:35:24 30 4
gpt4 key购买 nike

首先让我解释一下我们的项目。

我们有一个客户端服务器系统。客户端和服务器端都是用java实现的。我们正在用 C 重新实现客户端,保持接口(interface)相同,并保持服务器仍然用 java。

客户端和服务器通信的方式是通过java动态代理,remoteid是网络连接。现在,客户端调用服务器上调用的方法。显然正在进行序列化和反序列化。我想在 C 中实现服务器期望的相同格式。作为一名 C 黑客,我通过wireshark 打开数据包并开始在 java 代码中映射实际字节,这对我没有多大帮助。有几个字节我无法在代码中映射(显然我没有查看正确的代码)。

我还没有完全理解java动态代理是否使用它的库自动序列化,或者是否需要在类中实现一些功能,以便可以将东西写入线路。

有人可以建议我更人性化的方法来解决这个问题吗?

PS:我不太擅长java编程。

最佳答案

我是 Google Protocol Buffers 的粉丝用于维护跨语言兼容的序列化接口(interface)。您以相当简单的格式编写消息格式,protoc 会以您想要的消息对象的任何语言生成代码,并以兼容的方式序列化它们。 (它也非常擅长确保您以后可以添加更多字段而不会破坏所有内容,这对于轻松维护事物非常重要。)

默认情况下它只处理 Java、C++ 和 Python,但是 C plugins exist .

关于java - java序列化逆向工程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12309235/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com