Patterns in a key generation algorithm

192 views Asked by At

I want to reverse-engineer a key generation algorithm which starts from a 4-byte ID, and the output is a 4-byte key. This seems to not be impossible or very difficult, because some patterns can be observed. In the following picture are the inputs and outputs of the algorithm for 8 situations: enter image description here

As it can be seen, if the bytes from inputs are matching, also the outputs are matching, but with some exceptions (the red marking in the image).

So I think there are some simple arithmetic/binary operations done, and the mismatch could come from a carry of an addition operation.

Until now I ran a C program with some simple operations on the least significant byte of the inputs, with up to 4 variable parameters (0..255, all combinations) and compared with the output LSB, but without success.

Could you please advise me, what else could I try? And what do you think, it's possible what I'm trying to do?

Thank you very much!

0

There are 0 answers