You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

При удаленном программировании электронных ключей, находящихся у конечных пользователей, неизбежно возникают проблемы, связанные с защищенным обменом данными.
При удаленном программировании разработчик должен убедиться, во-первых, в том, что конечный пользователь собирается обновить данные именно в том ключе, в котором нужно. Для этой цели в закодированное число-вопрос, генерируемое ключом в начале сессии удаленного программирования, обязательно включается ID ключа, на котором оно сгенерировано.
Во-вторых, разработчику необходимо удостовериться, что число-вопрос является подлинным, то есть конечный пользователь не прислал поддельное или измененное число-вопрос. Для контроля подлинности используется аппаратно реализованная хэш-функция с секретным ключом: HASH64 (для Guardant Sign/Time/Net) или SHA256 (Guardant Code /Code Time). Число-вопрос передается разработчику вместе с результатом вычисления хэш-функции. Имея электронный ключ с тем же алгоритмом, разработчик может убедиться в подлинности числа-вопроса, вычислив хэш-функцию и сравнив ее результат с присланным. Таким образом, реализуется своего рода цифровая электронная подпись данных.
В-третьих, разработчик должен быть уверенным в том, что число-ответ будет передано в электронный ключ конечного пользователя в неизменном виде. Для этого также используется аппаратное вычисление HASH64 (SHA256).
В-четвертых, конечному пользователю вовсе не обязательно знать, какие именно данные передаются. На месте конечного пользователя вполне может оказаться хакер, пытающийся проанализировать протокол удаленного программирования. По этой причине все данные, передаваемые от конечного пользователя разработчику и обратно, в обязательном порядке кодируются симметричным алгоритмом: GSII64 (для Guardant Sign/Time/Net) или AES128 (Guardant Code /Code Time).
Безопасность протокола удаленного программирования Trusted Remote Update обеспечивается именно аппаратной реализацией алгоритмов кодирования и хеширования, а также тем, что секретные ключи этих преобразований в процессе работы не извлекаются из электронного ключа. Все операции, связанные с декодированием и проверкой целостности данных, осуществляются внутри аппаратного устройства. Это исключает возможность компрометации или подмены данных, которые записываются в электронный ключ.


Важно!
Для того чтобы механизм Trusted Remote Update работал, в ключ конечного пользователя на этапе предпродажной подготовки прошиваются секретные пароли удаленного обновления (секретные ключи GSII64 или AES128). Их копии вместе с ID электронных ключей, в которые они были прошиты, обязательно должны сохраняться разработчиком в базе данных, доступ к которой должен иметь только авторизованный персонал.
  • No labels