Innovation and creativity are crucial for the creation of new products. However, what new idea is entirely original? As Mark Twain put it, “There is no such thing as a new idea. We simply take a lot of old ideas and put them into a sort of mental kaleidoscope.”
Some such “old ideas” are the ideas already used by other software companies, for instance. Another company identifies the knowledge and technology, employing it in a new way.
What is Reverse Engineering?
However, let’s begin with a definition. In his book Reversing, Eldad Eilam points out, “Reverse engineering is the process of extracting the knowledge or design blueprints from anything man-made”. The fact that the object of study is man-made differentiates it from other scientific inquiries, such as dissecting a frog.
You’re essentially taking apart the manufactured product to discover both the materials it’s composed of and how it works. Methods to acquire such knowledge range from microscopy to chemical analysis.
Who Utilizes Reverse Engineering?
Reverse engineering is utilized in a variety of settings.
RE Application of RE
- Software Development
An Interdisciplinary Endeavor
And reverse engineering is often interdisciplinary. For instance, as Eilam notes, software reverse engineering involves a number of skills: “Software reverse engineering integrates several arts: code breaking, puzzle solving, programming, and logical analysis.
It’s important to note though, the aim is not to duplicate the other product, but rather to create an improved product of your own.
Benefits of Reverse Engineering
The most obvious benefit of reverse engineering, of course, is to maximize efficiency. That is, it eliminates the need to “reinvent the wheel.” Instead, dedicate such time to other aspects of creating an efficient and effective product. Let’s review the three primary benefits of the process though.
- to Maximize Efficiency
- to Improve Product
- to Speed Up Innovation
The main aim of the process is to create an improved project, leveraging the upsides of the reversed technology. Ideally, such technology will inspire further innovation as well.
Software/Computer Related Applications
Lastly, we’ve mentioned that software engineers utilize software engineering as well. However, it isn’t utilized in the field as you might suspect. As Eilam explains, “software is so complex that in many cases reverse engineering for competitive purposes is thought to be such a complex process that it just doesn’t make sense financially.”
However, he also delves into the cybersecurity-related uses of reverse engineering. As for the black hat hackers (i.e., bad guys), they utilize it to identify vulnerabilities to exploit, either to acquire sensitive information or to gain control of the network.
As for the ethical hackers and cybersecurity experts, however, they’re ultimate aim is to reverse engineer malware to fight such threats.
A famous example was when malware expert and hacker Marcus Hutchins saved the Internet from WannaCry. As the publication Wired puts it, “Hutchins had saved the internet from what was, at the time, the worst cyberattack in history: a piece of malware called WannaCry. As the publication Wired explains, Hutchins found and triggered the kill switch, “neutering WannaCry’s global threat.”
Who Reverse Engineers?
As far as career paths go, it’s not difficult to see how an individual with a burning curiosity would enjoy the process of reverse engineering. Whether it be within the field of engineering, manufacturing, or software development, of course, depends upon their other interests and inclinations.
All things considered, reverse engineering is a crucial process for engineering, manufacturing, software development, and cybersecurity.