how do you “reverse engineer” something?

582 views

how do you “reverse engineer” something?

In: 64

22 Answers

Anonymous 0 Comments

In this context, the opposite of reverse engineering – let’s call it engineering – creates some sort of a machine, a piece of software, or other product from smaller parts, using a particular formula, design, a recipe, an equation, or something like that for combining the parts together.

So reverse engineering then means looking at that full product, and dividing it into its smaller parts to understand how it functions. You want to either know the parts its made of or the equation/design/recipe that makes it run, or both.

Broadly speaking, the end goal is to gain enough understanding of the system or a product that you can replicate its functionality.

Sometimes you can reverse engineer something by simply observing its behavior for a while. If a machine has two inputs and one output, and when I input `2` and `4` I get `6` and when I input `0` and `11` I get `11`, I can deduce that the machine is summing the two inputs together. Tada, reverse engineered.

Often it’s more complex than that. If you’re reverse engineering how e.g. a game authenticates with a game server, you might want to look at the actual network traffic being sent by a software like Wireshark. Sometimes you may want to try to decompile the software to see if you could understand parts of its code. Being knowledgeable about common authentication protocols, network protocols, game design, etc, is helpful.

If you have a physical device (e.g. during WW2, some weapons were used sparsely because of the worries of them being reverse engineered and copied by the enemy) you might inspect it from the outside, determine the materials being used, and you might take it apart to try to get an understanding of how it functions.

You are viewing 1 out of 22 answers, click here to view all answers.