- 0
Cracking Egg, Inc.'s ei_hash_v2 function
-
Similar Content
-
- 0 comments
- 1,592 views
-
- 0 replies
- 861 views
-
- 0 answers
- 1,012 views
-
- 0 replies
- 720 views
-
- 1 comment
- 8,951 views
-
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.
Question
StupidRepo
Hey! I'm trying to make a server reimplementation for a game called Egg, Inc.
The game has a protobuf message called `AuthenticatedMessage`, which contains a `message` field and a `code` field. In previous versions of the game, the `code` field used a v1 hash (which I have cracked) but the newer versions use an 'ei_hash_v2' function which I have no idea how to reverse-engineer as a) I have limited C++ knowledge and Assembly + Ghidra knowledge b) it's confusing asf. The game doesn't use unity btw, so all stuff is in libegginc.so.
When the game sends a message to the server, it expects the server to send an AuthenticatedMessage back with a (I believe) SHA-256 hash of the bytes from the 'message' field, in the 'code' field. Not sure how or where, but the game will also generate a v2 hash from the 'message' field and compared it to the one sent back, discarding the AuthenticatedMessage if it doesn't match. This is why it's crucial to reverse this hash because otherwise the game just ignores invalid responses...
As previously mentioned, the game used to use the old v1 hash which I have already cracked but now it uses v2. If someone could figure out how v2 hashes, and can reimplement it successfully, please let me know how!
Game uses Google's pairipcore, so dynamic debugging goes right out of the window unless there is another method.
You can find the latest, or older versions, of the .proto file extracted from the game on this person's GitHub if needed.
Figured I'd ask this here as GameGuardian can do memory editing stuff (will try it on Egg, Inc. in a sec to see what I can do)
(Here is a authenticatedmessage serialised to JSON if you're lazy)
Edited by StupidRepoclarification
0 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now