Способ функционирования тахографа и тахограф
Иллюстрации
Показать всеИзобретения относятся к способу функционирования тахографа. Технический результат - защита тахографа от манипуляций, повышение надежности. Тахограф содержит контроллер (2) приложений и контроллер (3) безопасности. С контроллером (2) приложений ассоциирована память (5), и с контроллером (3) безопасности ассоциирована другая память (6). Зашифрованный программный код (DPC) с по меньшей мере одной ассоциированной цифровой подписью предоставляется в распоряжение контроллеру (3) безопасности. Посредством контроллера (3) безопасности зашифрованный программный код (DPC) дешифруется и верифицируется посредством по меньшей мере одной цифровой подписи. Определяется, является ли дешифрованный программный код предназначенным для контроллера (2) приложений или контроллера (3) безопасности. В зависимости от определения, программа в памяти (5) и/или другая программа в другой памяти (6) посредством дешифрованного программного кода (ЕРС) по меньшей мере частично заменяется, и в зависимости от результата верификации, по меньшей мере частично замененная программа и/или по меньшей мере частично замененная другая программа деблокируются для выполнения. 2 н. и 9 з.п. ф-лы, 2 ил.
Реферат
Изобретение относится к способу функционирования тахографа и тахографу с контроллером приложений и контроллером безопасности.
Путевые регистраторы или тахографы могут являться приборами контроля, которые предусмотрены для того, чтобы устанавливаться в автомобиле, в частности грузовом или легковом автомобиле, чтобы обеспечивать возможность контроля действий водителя автомобиля или его напарника.
В WO 2006/053998 А1 описан, например, тахограф, с контроллером безопасности и отдельным контроллером приложений для контроля действий водителя автомобиля и его напарника.
Задачей изобретения является создание способа функционирования тахографа, который отвечает высоким требованиям по защите от манипуляций и является максимально надежным.
Эта задача решается признаками независимых пунктов формулы изобретения. Предпочтительные формы выполнения изобретения следуют из зависимых пунктов формулы изобретения.
Изобретение характеризуется способом функционирования тахографа и соответствующим тахографом с контроллером приложений и контроллером безопасности. С контроллером приложений сопоставлена память, в которой сохранена исполняемая контроллером приложений программа. С контроллером безопасности сопоставлена другая память, в которой сохранена исполняемая контроллером безопасности другая программа. Контроллер приложений соединен с контроллером безопасности. При этом зашифрованный программный код с по меньшей мере одной цифровой подписью предоставляется в распоряжение контроллеру безопасности. Посредством контроллера безопасности зашифрованный программный код дешифруется и верифицируется посредством по меньшей мере одной цифровой подписи. Определяется, является ли дешифрованный программный код предназначенным для контроллера приложений или контроллера безопасности. В зависимости от определения, программа в памяти и/или другая программа в другой памяти по меньшей мере частично заменяется посредством дешифрованного программного кода. В зависимости от результата, верификации, по меньшей мере частично замененная программа и/или по меньшей мере частично замененная другая программа деблокируются для выполнения.
Это позволяет также при защищенном от манипуляций тахографе выполнять актуализацию исполняемой программы для контроллера приложений и/или контроллера безопасности. Преимущества тахографа с подобной архитектурой контроллера безопасности и взаимодействие с контроллером приложений состоят прежде всего в существенной интеграции функций безопасности в контроллере безопасности.
Программный код может включать в себя часть соответствующей исполняемой программы или полную соответствующую исполняемую программу. Исполняемую программу в этом отношении следует понимать так, что она процессором соответствующего контроллера может интерпретироваться как последовательность команд и, тем самым, исполняется и реализует одну или несколько функций тахографа. В противоположность этому, данные не представляют никакой интерпретируемой последовательности команд. Данные могут применяться во время выполнения заданной команды. Предпочтительным образом данные обрабатываются соответствующей программой.
По меньшей мере одна цифровая подпись может служить для верификации дешифрованного программного кода или для верификации зашифрованного программного кода.
Программный код может предоставляться контроллеру безопасности также в незашифрованной форме, причем контроллер безопасности тогда предпочтительным образом больше не выполняет дешифрование, а выполняет только верификацию. Незашифрованный программный код соответствует тогда дешифрованному программному коду. Также возможно предоставление частично зашифрованного программного кода.
В другой памяти, которая также может содержаться в контроллере безопасности, наряду с другой программой, сохранены, например, криптологические ключи, с помощью которых блок шифрования зашифровывает и/или подписывает рабочие данные транспортного средства. Другая программа и криптологические ключи предпочтительно сохранены способом, защищенным от манипулирования и от несанкционированного доступа, в другой памяти.
Верификация посредством цифровой подписи может включать в себя проверку целостности зашифрованного или дешифрованного программного кода, то есть проверку целостности и неизменности программного кода. В качестве альтернативы или дополнительно, можно посредством верификации также проверять происхождение зашифрованного или дешифрованного программного кода. При этом программный код может содержать только цифровую подпись или также несколько цифровых подписей, которые, например, ассоциированы с заданными частями программного кода и позволяют верифицировать только эти заданные части. Для этого могут применяться симметричные и/или асимметричные сигнатурные способы, так, например, RSA-, MDS- или SHA-способы.
В предпочтительном выполнении посредством контроллера безопасности идентифицируется и/или аутентифицируется источник зашифрованного программного кода зашифрованного программного кода. В зависимости от идентификации и/или аутентификации, зашифрованный программный код предоставляется контроллеру безопасности. За счет этого уже перед предоставлением зашифрованного программного кода устанавливается, является ли источник достоверным. Источник представляет предпочтительно отдельный и внешний прибор и может, например, представлять собой диагностический прибор или компьютер и осуществлять связь посредством проводного или беспроводного соединения с тахографом.
В другом предпочтительном выполнении дешифрованный программный код промежуточным образом сохраняется в контроллере приложений и/или контроллере безопасности. Программа в памяти и/или другая программа в другой памяти заменяются посредством промежуточно сохраненного дешифрованного программного кода, если верификация успешна. Предпочтительно промежуточным образом сохраняется полный программный код. Это обеспечивает возможность особенно надежной актуализации соответствующей программы. При успешной верификации соответствующая программа предпочтительно не заменяется, а текущая программа продолжает исполняться. Тем самым полная предшествующая функциональность тахографа предоставляется пользователю в распоряжение и после успешной актуализации.
В другом предпочтительном выполнении зашифрованный программный код дешифруется пакетами (попакетно) посредством контроллера безопасности. Программа в памяти и/или другая программа в другой памяти попакетно заменяются соответствующими пакетами дешифрованного программного кода. По меньшей мере частично замененная программа и/или по меньшей мере частично замененная другая программа деблокируются для выполнения, если верификация успешна. Это допускает особенно незначительную потребность в памяти в соответствующем контроллере и к тому же особенно быструю актуализацию соответствующей программы.
Примеры выполнения изобретения далее более подробно поясняются со ссылками на чертежи, на которых показано следующее:
Фиг. 1 - схематичное представление тахографа,
Фиг. 2 - блок-схема последовательности операций способа.
Элементы одинаковой конструкции или функции снабжены на чертежах одинаковыми ссылочными позициями.
На фиг. 1 показано схематичное представление тахографа 1, который включает в себя контролер 2 приложений и контроллер 3 безопасности.
Контролер 2 приложений имеет интерфейс 7 и память 5, которая, например, выполнена как энергонезависимая память, таким образом, например, как флэш-память, как SRAM (статическое запоминающее устройство с произвольной выборкой) или FRAM (ферроэлектрическое запоминающее устройство) с батарейной поддержкой. В памяти 5 сохранена программа, в частности, прикладная программа, которая может выполняться процессором контролера 2 приложений. Посредством программы могут быть реализованы основные функции тахографа 1. Наряду с этой программой, в памяти 5 могут быть также сохранены коммуникационные программы, которые обеспечивают возможность коммуникации с контроллером 3 безопасности и/или с внешними приборами через интерфейс 7. Кроме того, в памяти 5 сохранены программы управления памятью, которые обеспечивают возможность стирания, управления и/или перепрограммирования памяти 5. Кроме того, в памяти 5 могут быть также сохранены данные, например, данные о транспортном средстве и/или о водителе. Предпочтительным образом контролер 2 приложений выполнен с возможностью заменять только программу в памяти 5 по меньшей мере частично посредством соответствующего дешифрованного программного кода ЕРС.
Контроллер 3 безопасности имеет другой интерфейс 8 и другую память 6, которая, например, также выполнена как энергонезависимая память, так например, как флэш-память или EEPROM (электрически стираемое программируемое постоянное запоминающее устройство). В другой памяти 6 сохранена другая программа, которая может выполняться другим процессором контроллера 3 безопасности. Посредством другой программы могут быть реализованы функции безопасности тахографа 1. Для этого, наряду с другой программой, в другой памяти 6 могут быть сохранены также криптологические функции и криптологические данные, например, криптологические ключи. Кроме того, ассоциированные с контроллером 3 безопасности данные и программы также в зашифрованном виде могут быть сохранены в другой памяти 6. Например, контроллер 3 безопасности выполнен как контроллер, который также применяется на чип-картах и оптимизирован для выполнения криптологических операций. Другая программа предпочтительно не включает в себя никаких криптологических вычислительных операций, а они предоставляются в распоряжение, например, только посредством криптологических функций, которые, например, вызываются другой программой. Кроме того, в другой памяти 6 могут быть сохранены программы управления памятью для другой памяти 6 и коммуникационные программы. Предпочтительным образом контроллер 3 безопасности выполнен с возможностью заменять только другую программу в другой памяти 6 по меньшей мере частично посредством соответствующего дешифрованного программного кода ЕРС.
Интерфейс 7 электрически связан с другим интерфейсом 8, так что возможна коммуникация между контролером 2 приложений контроллером 3 безопасности. Коммуникация между обоими контролерами 2, 3 может, например, быть последовательной и/или параллельной и осуществляться в смысле коммуникации типа «задающий-подчиненный». При этом контролер 2 приложений представляет, например, «задающий» контролер, а контроллер 3 безопасности представляет «подчиненный» контроллер. Кроме того, контролер 2 приложений может также быть выполнен с возможностью связывания с внешним прибором и коммуникации с ним. Дополнительно, контролер 2 приложений для коммуникации с внешним прибором 4 может также иметь дополнительный интерфейс.
Коммуникация с внешним прибором 4 может осуществляться проводным способом, последовательно и/или параллельно. Также была бы возможной беспроводная коммуникация между контроллером 2 приложений и внешним прибором 4 или между контроллером 3 безопасности и внешним прибором 4.
Посредством внешнего прибора 4, который выполнен, например, как диагностический прибор или как портативный компьютер, контроллер 2 приложений может предоставлять зашифрованный и снабженный цифровой подписью программный код DPC на интерфейс 7. Зашифрованный программный код DPC содержит программный код, который должен заменять текущую программу в памяти 5 или текущую другую программу в другой памяти 6 в рамках актуализации программного обеспечения. Так как контроллер 2 приложений не выполнен с возможностью исполнения криптологических вычислительных операций, то предоставленный зашифрованный программный код DPC не может непосредственно интерпретироваться процессором контроллера 2 приложений. Поэтому контроллер 2 приложений выполнен с возможностью распознавания зашифрованного программного кода DPC, например, на основе данных заголовка, которые ассоциированы с зашифрованным программным кодом DPC и, например, являются незашифрованными и на контроллер 3 безопасности передаются, в частности, без изменений.
Контроллер 3 безопасности выполнен с возможностью принимать зашифрованный программный код DPC, дешифровать его и проверять программный код, посредством ассоциированной цифровой подписи, на целостность и/или аутентичность. Для этого контроллер 3 безопасности дешифрует зашифрованный программный код DPC, например, побайтно или по каждому слову данных. Кроме того, контроллер 3 безопасности выполнен с возможностью определять, предназначен ли дешифрованный программный код ЕРС для контроллера 2 приложений и/или для контроллера 3 безопасности. Затем, в зависимости от этого определения, дешифрованный программный код ЕРС передается пакетами на контроллер 2 приложений или другая программа в другой памяти 6 попакетно заменяется на попакетно дешифрованный программный код ЕРС.
Интерфейсы 7, 8 выполнены, например, как SPI- или SCI-,
CAN-, RS-232-, PC- или ISO 9018.3-интерфейсы.
Дешифрованный программный код ЕРС может попакетно заменять программу в памяти 5 и/или другую программу в другой памяти 6, то есть пакет дешифрованного программного кода ЕРС сохраняется по адресу, ассоциированному с этим пакетом, в соответствующей памяти. Для этого может потребоваться перед этим по меньшей мере частично стереть область памяти, ассоциированную с программой в соответствующей памяти.
Попакетная замена программы и/или другой программы посредством соответствующего дешифрованного программного кода ЕРС имеет преимущество, состоящее в том, что потребность в памяти является очень незначительной, и актуализация может осуществляться особенно быстро. Если верификация цифровой подписи безуспешна, то это сообщается контроллеру 2 приложений. Контроллер 3 безопасности и контроллер 2 приложений выполнены, соответственно, таким образом, чтобы выполнять замененный программный код или разрешать к использованию, если верификация успешна, а в противном случае - блокировать выполнение. За счет этого предотвращается то, что выполняется программный код, для которого требуемая аутентичность и/или целостность не верифицирована успешным образом, и который не является достоверным. Если в этом случае не предоставляется достоверный программный код, то контроллер 3 безопасности и/или контроллер 2 приложений остаются в режиме блокировки, в котором могут выполняться только коммуникационные программы, программы дешифрования и/или программы управления памятью, но не программа и/или другая программа, сохраненные в соответствующей памяти.
Альтернативно или дополнительно, дешифрованный программный код ЕРС сначала полностью сохраняется промежуточным образом в контроллере 3 безопасности или контроллере 2 приложений, например, в соответствующей памяти RAM. В этом случае программа в памяти 5 и/или другая программа в другой памяти 6 могут заменяться только посредством дешифрованного программного кода ЕРС, если верификация успешна. Это имеет преимущество, состоящее в том, что текущая программа и/или текущая другая программа так долго сохраняются в соответствующей памяти, пока она не будет заменена соответствующим достоверным программным кодом. При безуспешной верификации промежуточно сохраненный программный код может быть стерт или оставлен без внимания. Текущая программа и/или текущая другая программа остаются, таким образом, неизменными и могут продолжать выполняться. Тем самым тахограф 1 остается полностью работоспособным и тогда, когда пытаются недостоверный программный код перенести в контроллер 2 приложений и/или контроллер 3 безопасности. В другой форме выполнения внешний прибор 4 может быть также непосредственно электрически связан с другим интерфейсом 8 контроллера 3 безопасности, чтобы обеспечить возможность коммуникации и непосредственно предоставлять зашифрованный и снабженный цифровой подписью программный код DPC контроллеру 3 безопасности. Контроллер 3 безопасности может для этой цели также иметь другой дополнительный интерфейс.
На фиг. 2 показан способ функционирования тахографа 1 с помощью диаграммы последовательности операций способа. Способ начинается на этапе S0. На этапе S2 выполняется конфигурирование CONF, которое, например, конфигурирует интерфейсы 7, 8, так что через внешний прибор 4 зашифрованный программный код DPC может предоставляться в распоряжение. Кроме того, может устанавливаться соединение между внешним прибором 4 и соответствующим интерфейсом. Если контроллер 3 безопасности выполнен для этого, то альтернативно может также конфигурироваться коммуникация между контроллером 3 безопасности и внешним прибором 4.
На этапе S4 посредством контроллера 3 безопасности непосредственно через интерфейс 7 контроллера 2 приложений внешний прибор 4 идентифицирует и/или аутентифицирует себя. Внешний прибор 4 может также обозначаться как источник зашифрованного программного кода DPC. Если идентификация ID и/или аутентификация внешнего прибора 4 безуспешна, то на этапе S14 актуализация завершается. Если, напротив, внешний прибор 4 успешно идентифицируется и/или аутентифицируется, то на этапе S6 зашифрованный программный код DPC предоставляется в распоряжение контроллеру 3 безопасности и с помощью него дешифруется и определяется, с каким контроллером 2, 3 следует ассоциировать дешифрованный программный код ЕРС. С зашифрованным программным кодом DPC могут быть также ассоциированы зашифрованные или дешифрованные данные заголовка, которые перед дешифрованием DECRYPT зашифрованного программного кода DPC оцениваются, например, с помощью контроллера 2 приложений и/или контроллера 3 безопасности. В рамках этой проверки данных заголовка могут, например, сравниваться номера версий программного кода с номерами версий текущей программы. Если проверка данных заголовка безуспешна, то на этапе S14 актуализация завершается. В противном случае, в зависимости от определения цели программного кода, дешифрованный программный код ЕРС на этапе S8 подается на другую память 6 и/или на этапе S9 через интерфейс 7 предоставляется в распоряжение памяти 5 контроллера 2 приложений. При этом дешифрованный программный код ЕРС попакетно заменяет соответствующую программу в соответствующей памяти. Зашифрованный или дешифрованный программный код DPC, ЕРС может также полностью сохраняться промежуточным образом в соответствующем контроллере.
На этапе S10 затем верифицируется цифровая подпись с помощью контроллера 3. Если верификация VERIFY безуспешна, то на этапе S14 актуализация завершается. Промежуточно сохраненный программный код может на этапе S10 стираться, и для контроллера 3 безопасности и/или контроллера 2 приложений может задаваться режим блокировки. В качестве альтернативы, актуализация при успешной верификации VERIFY может снова выполняться на этапе S2 или S4.
Если верификация VERIFY, напротив, успешна, то на этапе S12 выполнение ЕХЕ соответствующей замененной программы разблокируется или соответствующая программа заменяется промежуточно сохраненным программным кодом и затем разблокируется для выполнения ЕХЕ. На этапе S14 актуализация завершается. Верификация цифровой подписи может также выполняться уже на этапе S6, причем затем этап S10 следует игнорировать.
Внешний прибор 4 может также предоставлять контроллеру 2 приложений или контроллеру 3 безопасности незашифрованный или частично зашифрованный программный код.
1. Способ функционирования тахографа (1) с контроллером (2) приложений и контроллером (3) безопасности, причем с контроллером (2) приложений ассоциирована память (5), в которой сохранена исполняемая контроллером (2) приложений программа, и с контроллером (3) безопасности ассоциирована другая память (6), в которой сохранена исполняемая контроллером (3) безопасности другая программа, причем контроллер (2) приложений соединен с контроллером (3) безопасности, при этомзашифрованный программный код (DPC) с по меньшей мере одной ассоциированной цифровой подписью предоставляют в распоряжение контроллеру (3) безопасности,оценивают данные заголовка зашифрованного программного кода путем сравнения номера версий программного кода с номерами версий текущей программы, причем данные заголовка являются одними из: зашифрованных и незашифрованных,посредством контроллера (3) безопасности зашифрованный программный код (DPC) дешифруют, если оценка данных заголовка успешна,верифицируют зашифрованный программный код посредством по меньшей мере одной цифровой подписи,определяют, является ли дешифрованный программный код предназначенным по меньшей мере для одного из: контроллера (2) приложений и контроллера (3) безопасности,в зависимости от определения по меньшей мере частично заменяют посредством дешифрованного программного кода (ЕРС) по меньшей мере одно из: программы в памяти (5) и другой программы в другой памяти (6), ив зависимости от результата верификации деблокируют для выполнения по меньшей мере одно из: по меньшей мере частично замененной программы и по меньшей мере частично замененной другой программы.
2. Способ по п. 1, в котором дополнительнопосредством контроллера (3) безопасности выполняют по меньшей мере одно из: идентификации и аутентификации источника (4) зашифрованного программного кода (DPC),в зависимости от по меньшей мере одно из: идентификации и аутентификации, зашифрованный программный код (DPC) предоставляют контроллеру (3) безопасности.
3. Способ по п. 1 или 2, в котором дополнительнодешифрованный программный код (ЕРС) промежуточным образом сохраняют по меньшей мере в одном из: контроллере (2) приложений и контроллере (3) безопасности, ипо меньшей мере одно из: программы в памяти (5) и другой программы в другой памяти (6) заменяют посредством промежуточно сохраненного дешифрованного программного кода (ЕРС), если верификация успешна.
4. Способ по п. 1 или 2, в котором дополнительнозашифрованный программный код (DPC) дешифруют попакетно посредством контроллера (3) безопасности,по меньшей мере одно из: программы в памяти (5) и другой программы в другой памяти (6) попакетно заменяют соответствующим попакетно дешифрованным программным кодом (ЕРС),по меньшей мере одно из: по меньшей мере частично замененной программы и по меньшей мере частично замененной другой программы деблокируют для выполнения, если верификация успешна.
5. Тахограф (1), содержащийконтроллер (2) приложений, соединенный с контроллером (3) безопасности, причем с контроллером (2) приложений ассоциирована память (5), в которой сохранена исполняемая контроллером (2) приложений программа, ис контроллером (3) безопасности ассоциирована другая память (6), в которой сохранена исполняемая контроллером (3) безопасности другая программа,при этом контроллер (3) безопасности выполнен с возможностью:оценивать данные заголовка зашифрованного программного кода, причем данные заголовка являются одними из: зашифрованных и незашифрованных,дешифровать упомянутый зашифрованный программный код (DPC), предоставленный контроллеру (3) безопасности, если оценка данных заголовка успешна, причем зашифрованный программный код (DPC) включает в себя по меньшей мере одну ассоциированную с программным кодом цифровую подпись, и верифицировать его посредством по меньшей мере одной цифровой подписи,определять, является ли дешифрованный программный код (ЕРС) предназначенным по меньшей мере для одного из: контроллера (3) безопасности и контроллера (2) приложений,в зависимости от определения, заменять другую программу в другой памяти (6) посредством дешифрованного программного кода (ЕРС) по меньшей мере частично и,в зависимости от результата верификации, по меньшей мере частично замененную другую программу деблокировать по меньшей мере для одного из: выполнения и предоставления дешифрованного программного кода (ЕРС) и результата верификации контроллеру (2) приложений, иконтроллер (2) приложений выполнен с возможностью:в зависимости от предоставленного дешифрованного программного кода (ЕРС), заменять программу в памяти (5) по меньшей мере частично посредством дешифрованного программного кода (ЕРС), ив зависимости от предоставленного результата верификации, деблокировать для выполнения по меньшей мере частично замененную программу в памяти (5).
6. Тахограф по п. 5, в котором контроллер (3) безопасности выполнен с возможностью для по меньшей мере одного из: идентификации и аутентификации источника (4) зашифрованного программного кода (DPC) и, в зависимости от по меньшей мере одного из: идентификации и аутентификации для дешифровки и верификации зашифрованного программного кода (DPC).
7. Тахограф по п. 5, в котором контроллер (3) безопасности выполнен с возможностью промежуточно сохранять дешифрованный программный код (ЕРС) и, в зависимости от определения, выполнять по меньшей мере одно из: замены другой программы в другой памяти (6) по меньшей мере частично посредством промежуточно сохраненного дешифрованного программного кода (ЕРС), если верификация успешна, и предоставления промежуточно сохраненного дешифрованного программного кода (ЕРС) контроллеру (2) приложений, если верификация успешна.
8. Тахограф по п. 6, в котором контроллер (3) безопасности выполнен с возможностью промежуточно сохранять дешифрованный программный код (ЕРС) и, в зависимости от определения, выполнять по меньшей мере одно из: замены другой программы в другой памяти (6) по меньшей мере частично посредством промежуточно сохраненного дешифрованного программного кода (ЕРС), если верификация успешна, и предоставления промежуточно сохраненного дешифрованного программного кода (ЕРС) контроллеру (2) приложений, если верификация успешна.
9. Тахограф по любому из п.п. 5-8, в котором контроллер (2) приложений выполнен с возможностью промежуточно сохранять предоставленный дешифрованный программный код (ЕРС) и по меньшей мере частично заменять программу в памяти (5) посредством промежуточно сохраненного дешифрованного программного кода (ЕРС), если имеет место положительный результат верификации.
10. Тахограф по любому из п.п. 5-8, в котором контроллер (3) безопасности выполнен с возможностью попакетно дешифровать зашифрованный программный код (DPC) и выполнять по меньшей мере одно из: попакетной замены другой программы в другой памяти (6) и деблокировки для выполнения по меньшей мере частично замененной другой программы, если верификация успешна, и попакетного предоставления попакетно дешифрованного программного кода (ЕРС) контроллеру (2) приложений.
11. Тахограф по п. 10, в котором контроллер (2) приложений выполнен с возможностью заменять программу в памяти (5) посредством попакетно предоставленного дешифрованного программного кода (ЕРС) и деблокировать для выполнения по меньшей мере частично замененную программу, если имеет место положительный результат верификации.