Обратная разработка
исследование некоторого готового устройства или программы Из Википедии, свободной энциклопедии
исследование некоторого готового устройства или программы Из Википедии, свободной энциклопедии
Обра́тная разрабо́тка (обратное проектирование, обратный инжиниринг, реверс-инжиниринг; англ. reverse engineering) — исследование некоторого готового устройства или программы, а также документации на него с целью понять принцип его работы; например, чтобы обнаружить недокументированные возможности (в том числе программные закладки), сделать изменение или воспроизвести устройство, программу или иной объект с аналогичными функциями, но без прямого копирования.
Эта статья или раздел нуждается в переработке. |
Применяется обычно в том случае, если создатель оригинального объекта не предоставил информации о структуре и способе создания (производства) объекта. Правообладатели таких объектов могут заявить, что проведение обратной разработки или использование её результатов нарушает их исключительное право по закону об авторском праве и патентному законодательству[1][2].
В 2016 году на заседании Правительственной комиссии по импортозамещению министр промышленности торговли РФ Д. В. Мантуров заявил о планах создать на базе Фонда развития промышленности центр обратного инжиниринга[3]. В дальнейшем информации о развитии с результатами работ не было. В других странах мира известно о ряде продукции, преимущественно военного назначения, созданной таким путём.
Исследование и обратная разработка программ обычно осуществляются с целью дальнейшей модификации, копирования, или, например, написания генераторов ключей, алгоритм работы которых получен на основе анализа алгоритма их проверки. Также исследование программ применяется с целью получения некоторых закрытых сведений о внутреннем устройстве программы — о протоколе сетевого обмена с сервером, аппаратным средством, ключом защиты или о взаимодействии с другой программой. Ещё одна область применения — получение информации о способах экспортирования данных из многочисленных проприетарных форматов файлов[4].
С развитием Интернета популярные операционные системы и программы всё интенсивнее исследуются на предмет обнаружения в них уязвимостей или т. н. «дыр». В дальнейшем найденные дыры могут использоваться для получения несанкционированного доступа к удалённому компьютеру или компьютерной сети. C другой стороны, обратная разработка применяется при исследовании антивирусными компаниями вредоносного ПО c целью добавления его сигнатур в базы своих продуктов.
Одним из широко известных примеров обратной разработки является исследование BIOS персонального компьютера IBM, ставшее серьёзным шагом на пути развития производства IBM-совместимых компьютеров сторонними производителями.[5][6] Создание сервера Samba[7][8] (входящего в состав ОС GNU/Linux и работающего с серверами на базе ОС Windows) также потребовало обратной разработки используемого Microsoft протокола SMB.
Обратная разработка программного обеспечения производится с помощью следующих методик.
В настоящее время под словами «reverse engineering» чаще всего понимается т. н. clean room reverse engineering, то есть процесс, при котором одна группа разработчиков анализирует машинный код программы, составляет алгоритм данной программы на псевдокоде либо, если программа является драйвером какого-либо устройства, составляет исчерпывающие спецификации интересующего устройства. После получения спецификаций другая группа разработчиков пишет собственный драйвер на основе полученных спецификаций или алгоритмов. Такой подход позволяет избежать обвинений в нарушении авторских прав на исходную программу, так как по законам, к примеру в США, попадает под понятие «fair use», то есть добросовестного использования оригинальной программы. Результат обратной разработки редко идентичен оригиналу, что и позволяет избежать ответственности перед законом, особенно при условии контроля отсутствия этой идентичности первой группой разработчиков и отсутствия нарушений торговых марок и патентов.
Может использоваться при создании реляционной модели базы данных.
Проверить информацию. |
Копирование различных механизмов и машин без фактической разработки. Позволяет минимальными затратами воспроизвести удачную конструкцию, но есть случаи копирования и неудачных машин.
Примеры:
Часто при реверс-инжиниринге все таки приходится вносить изменения в конструкцию, что может быть связано с отличиями технологии производства или устранением недостатков оригинала. Например, двигатели Honda GX имеют алюминиевый безгильзовый цилиндр с никосилевым напылением. Китайские клоны имеют чугунную гильзу. [источник не указан 177 дней]Трёхступенчатые АККП Chrysler имеют достаточно сложный цельнокованный промежуточный вал, тогда как в их клоне Aisin A130 этот элемент собран из трёх деталей и получился значительно более технологичным, чем оригинальный[источник не указан 177 дней]. Лодочный мотор «Вихрь», хоть и скопирован с Koening, но конструкция целого ряда его элементов сильно упрощена.
Реверс-инжениринг в современном машиностроении напрямую связан с развитием технологии трёхмерного сканирования объектов. Благодаря трёхмерному сканеру весь объём данных о геометрии изделия может быть представлен в виде STL-файла. Дальнейшее построение конструкторской параметрической модели осуществляется на основе STL в специализированных САПР. В конечном итоге применение 3D-сканеров позволяет получать конструкторскую документацию, необходимую для изготовления копии изначального образца. Часто (например, при копировании различных несложных запчастей) конструкторская документация и вовсе не разрабатывается, а полученный результат сканирования сразу же загружается в обрабатывающий центр.
Обратная разработка электронных устройств (clean-room design / dark-room technique ) появилась ещё на заре радиотехники. В 1920—1930 годах различные фирмы копировали друг у друга радиолампы и схемотехнические решения их применения. Именно с обратной разработкой, а не с лицензионным производством, связано то, что радиолампы одного назначения почти всех производителей оказались унифицированными и взаимозаменяемыми. Например европейская лампа EL95 — клон более ранней американской лампы 6KA5. Есть и обратные примеры: американские 6CA5 и KT88[источник не указан 177 дней] и советский 6П14П — клоны европейской лампы EL34. То же самое относится и к советским радиолампам, многие из которых являются клонами американских ламп, получавшихся по ленд-лизу (например 6Ж4, 6П9), или немецких из трофейной аппаратуры (6Г2, ГУ50)[источник не указан 177 дней]. Вместе с лампами копировались и типовые схемы их включения, то есть фактически схемы блоков радиоаппаратуры. Поэтому именно благодаря обратной разработке ламповая эпоха охарактеризовалась по сути переходом к типовому проектированию в электронике. В частности, все выпускавшиеся в мире бытовые приемники-супергетеродины строились фактически по трём схемам, которая определялась лампой смесительно-гетеродинного узла: двойной триод, триод-гептод или пентагрид. То же самое относилось и к усилителям низкой частоты. Существовало не более десятка типовых схем их построения в зависимости от выходной мощности: маломощные однотактные на комбинированной лампе типа 6Ф3П, маломощные однотактные с темброблоком на двойном триоде (типа 6Н1П) и выходном пентоде (6П14П, EL84) или лучевом тетроде (6П3С, EL34), двухтактные с триодным фазоинвертором (6Н1П + 2х6П14П), двухтактные многокаскадные (6Н8П + 2х6П6С + ГУ50). Чёрно-белые телевизоры в 1960—1970-х годах строились фактически по двум схемам: одна для совсем простых аппаратов с малыми размерами экрана без АПЧГ и АПЧиФ строчной развёртки (по типу советских телевизоров УНТ-35), вторая схема предназначалась для аппаратов на кинескопах с углом отклонения луча 110°, АПЧГ, АПЧиФ (советские УНТ-59, большинство телевизоров европейских фирм)[источник не указан 905 дней].
В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
Обратная разработка продукта конкурента с целью узнать его устройство, принцип работы и оценить возможности создания аналога.
Так например, ряд производителей фототехники, таких как Sigma, Tamron, Tokina и Carl Zeiss, выпускает объективы с байонетом типа Canon EF. Они созданы методом обратной разработки, а их производители не имеют доступа к спецификациям Canon[источник не указан 2728 дней].
Самыми[источник не указан 4010 дней] известными фактами обратной разработки являлись:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.