СПОСОБ ИЗМЕНЕНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ БЛОКА УПРАВЛЕНИЯ ДВС
METHOD FOR VARIATION OF INTERNAL COMBUSTION ENGINE CONTROL UNIT SOFTWARE

Изобретение относится к области двигателестроения и может быть использовано для защиты программного обеспечения (далее ПО) блока управления (далее БУ) двигателем внутреннего сгорания (далее ДВС) транспортного средства (далее ТС) от несанкционированного изменения.
Известны, см., например, описание к патенту РФ № 2146399 С1, публ. 10.03.2000 г., энергонезависимые стираемые перепрограммируемые запоминающие устройства (далее ЭСППЗУ), предназначенные для хранения информации в условиях отсутствия подвода электрической энергии. Такие устройства нашли применение в БУ ДВС ТС (см., например, заявку ФРГ № 3917979 А1, публ. 06.12.1990 г.).
ПО БУ ДВС ТС включает в себя сведения, необходимые для управления ДВС:
- исполняемый код (другими словами, программу управления) с адресами массива данных;
- массив данных с константами и калибровочными таблицами, используемый исполняемым кодом в зависимости от режима работы ДВС.
Проблемой для производителей ТС является несанкционированное изменение содержания калибровочных таблиц, известное как «чип-тюнинг» (термин см., например, журнал «За рулем», №6/99 г., стр.128). Вследствие изменения значений калибровочных таблиц ДВС ТС может выйти из строя или работать в аварийном режиме.
Для выполнения несанкционированного «чип-тюнинга» необходимо располагать информацией об исполняемом коде, массиве данных с таблицами и константами и файлом описания данных для калибровки.
Известен способ изменения ПО БУ ДВС ТС, см. журнал «АБС», март 2003 г., стр.8, при котором БУ ДВС ТС соединяют с персональным компьютером и записывают в ЭСППЗУ БУ ДВС ТС измененное ПО.
Известные способы изменения ПО БУ ДВС ТС характеризуются малой степенью защиты ПО от несанкционированного копирования и изменения.
За прототип заявляемого изобретения взят способ изменения ПО БУ ДВС ТС, патент РФ №2176028 С1, публ. 20.11.2001 г., при котором БУ ДВС ТС связывают с компьютером, вводят с клавиатуры компьютера пароль, проверяют в блоке управления правильность введенного пароля, при правильном пароле открывают доступ к данным, хранящимся в постоянном запоминающем устройстве (ПЗУ), и вносят изменения в упомянутые данные. При изменении данных в ПЗУ записывают сообщение о легитимности проведенного изменения данных. Сообщение о легитимности изменения данных, которое содержит сведения о контрольных суммах данных, размещенных в секторах ПЗУ блока управления двигателем, перед записью в ПЗУ зашифровывают.
Однако степень защиты ПО БУ ДВС ТС от несанкционированного копирования и изменения недостаточна, поскольку существует возможность обхода сообщения о легитимности проведенного изменения данных ввиду существования ПО БУ ДВС ТС в открытом виде и, таким образом, являющимся доступным для проведения действий по дезассемблированию исходного кода и его несанкционированной модификации.
Задачей заявляемого изобретения является создание способа изменения ПО БУ ДВС ТС с повышенной степенью защиты ПО от несанкционированного копирования и изменения.
Указанная задача решается в способе изменения программного обеспечения БУ ДВС ТС, при котором БУ связывают с компьютером, через пароль открывают доступ к данным, хранящимся в запоминающем устройстве БУ ДВС ТС, и вносят изменения в упомянутые данные с последующей записью зашифрованного сообщения о легитимности проведенного изменения данных. Задача решается тем, что в качестве запоминающего устройства используют ЭСППЗУ, при первой записи программного обеспечения в ЭСППЗУ БУ ДВС в ЭСППЗУ записывают также программу для распознавания команды перевода БУ ДВС ТС в режим загрузки измененного программного обеспечения и программу дешифрирования, разрабатывают измененное программное обеспечение, зашифровывают его, а для изменения программного обеспечения подают команду на перевод БУ ДВС ТС в режим загрузки измененного программного обеспечения, распознают посредством БУ ДВС ТС упомянутую команду, переводят БУ ДВС ТС в режим загрузки измененного программного обеспечения, записывают в оперативное запоминающее устройство (ОЗУ) БУ ДВС ТС зашифрованное программное обеспечение, дешифрируют подаваемое программное обеспечение посредством программы дешифрирования, записывают дешифрированное программное обеспечение в ЭСППЗУ БУ ДВС ТС, после чего закрывают ЭСППЗУ БУ ДВС ТС от считывания и переводят БУ ДВС ТС в рабочий режим.
На чертеже изображена блок-схема устройства для записи в БУ ДВС ТС измененного ПО.
Изобретение может быть реализовано в устройстве, см. чертеж, включающем в себя БУ 1 ДВС ТС, снабженный микроконтроллером 2 с ЭСППЗУ 3 и ОЗУ 4, а также персональный компьютер 5.
Для реализации изобретения выполняют следующие действия:
- При первой загрузке ПО в ЭСППЗУ 3 БУ 1 ДВС ТС записывают также программу для распознавания команды перевода измененного ПО в режим загрузки и программу дешифрирования измененного ПО, после чего программно закрывают ЭСППЗУ 3 микроконтроллера 2 БУ 1 ДВС ТС от считывания ПО;
- Разрабатывают измененное ПО;
- Производят шифрование измененного ПО;
- Подключают персональный компьютер 5 к БУ 1 ДВС ТС;
- Устанавливают в персональный компьютер 5 носитель информации с измененным ПО;
- Через пароль открывают доступ к данным, хранящимся в ЭСППЗУ 3 БУ 1 ДВС ТС;
- Для записи в ЭСППЗУ 3 БУ 1 ДВС ТС измененного ПО подают (например, посредством клавиатуры персонального компьютера) команду на перевод БУ 1 ДВС ТС в режим загрузки измененного ПО;
- Распознают посредством БУ 1 ДВС ТС упомянутую команду и переводят БУ 1 ДВС ТС в режим загрузки измененного ПО;
- Записывают в ОЗУ 4 БУ 1 ДВС ТС зашифрованное ПО;
- Дешифрируют ПО, записанное в ОЗУ 4, посредством программы дешифрирования измененного ПО и записывают дешифрированное ПО в ЭСППЗУ 3 БУ 1 ДВС ТС;
- Записывают в ЭСППЗУ 3 БУ 1 ДВС ТС зашифрованное сообщение о легитимности проведенного изменения данных;
- Программно закрывают ЭСППЗУ 3 БУ 1 ДВС ТС от считывания;
- Переводят БУ 1 ДВС ТС из режима загрузки измененного ПО в рабочий режим.
Таким образом, разработан способ изменения программного обеспечения блока управления двигателем внутреннего сгорания транспортного средства, характеризующийся зашифрованным исполняемым кодом, осуществлением дешифрирования только внутри микроконтроллера и защитой от считывания, что повышает степень защиты программного обеспечения от несанкционированного копирования и изменения.