Skip to main content

Что такое обратный инжиниринг?

Некоторые термины говорят сами за себя. Так обстоит дело с реверс-инжинирингом, который буквально разбирает что-то и собирает его обратно. Это может быть сделано физически или виртуально, и цель состоит в том, чтобы выяснить, как что-то работает, чтобы создать нечто подобное.

Обратное проектирование было сделано на протяжении многих веков, почти до тех пор, пока люди создавали вещи. Иногда обратный инжиниринг делается с целью улучшения существующего создания, в то время как другие примеры обратного инжиниринга включают технологию кражи. Последнее особенно имело место с оружием на протяжении всей истории войны.

Это не просто оружие, это предметы реинжиниринга. Повседневные вещи, такие как транспортные средства, DVD-диски и бытовые приборы, являются предметом пристального внимания в разных частях света. Некоторые компании имеют привычку импортировать товары из других стран, разбирать их по частям, а затем использовать реверс-инжиниринг для создания своих товаров.

Обратный инжиниринг делается и в виртуальном мире. Компьютерные художники и ученые практикуют реверс-инжиниринг, создавая 3D-модели реальных устройств, а затем виртуально деконструируя их, чтобы увидеть, как они работают. Иногда они складывают их вместе, точно или немного по-другому. Появление мощных серверов и графических пакетов сделало это возможным и желательным.

Компьютеры также занимаются реверс-инжинирингом на более фундаментальном уровне. Одна из форм этого вида обратного инжиниринга - декомпиляция. Декомпиляция - это процесс, во время которого компьютер преобразует информацию из низкоуровневого формата (компьютерный код) в высокоуровневый формат (текст и цифры ASCII), чтобы люди могли читать такие вещи, как инструкции и веб-статьи. Распространенные случаи декомпиляции включают передачу файлов от одного пользователя другому, например, обмен данными или изображениями в электронном письме, или восстановление кодировки, которая была повреждена или никогда не была завершена. Декомпиляция также может иметь форму нарушений безопасности, при которых хакер использует реверс-инжиниринг для восстановления данных, которые кто-то так отчаянно хотел скрыть с помощью шифрования.

Еще одно двойное использование реверс-инжиниринга - создание и предотвращение компьютерных вирусов. Создатели вирусов копаются во внутренностях компьютерного кода, чтобы найти места, где можно похоронить свои творения. Перестраивая машинный код в качестве исходного кода, создатель вируса может найти то, что он ищет. На оборотной стороне этих действий люди, которые стремятся предотвратить или уничтожить компьютерные вирусы. Они также используют реверс-инжиниринг для деконструкции самого вируса и уничтожения или предвидения вредоносных исполняемых файлов.