Способ активации функции чипсета и чипсет
Изобретение относится к криптографии. Технический результат - эффективная защита чипсета. Способ активации функции чипсета включает: принимают по меньшей мере один из следующих элементов: ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма; передают по меньшей мере два из следующих элементов: начальное значение, полученный ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма, на модуль вычислений, причем начальное значение, полученный ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма предоставляются по меньшей мере двумя различными организациями; генерируют в модуле вычислений временный ключ с использованием одного из следующих элементов: по меньшей мере одного криптографического алгоритма модуля вычислений и по меньшей мере двух элементов, выбранных из группы, включающей начальное значение, ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма; принимают сообщение об активации с помощью модуля вычислений; принимают код аутентификации указанного сообщения с помощью модуля вычислений, при этом указанный код аутентификации сообщения вычисляется с использованием временного ключа; проверяют аутентичность указанного полученного сообщения с использованием кода аутентификации сообщения и временного ключа; если полученное сообщение является аутентичным, активируют соответствующую функцию чипсета; если полученное сообщение не является аутентичным, запрещают активацию указанной соответствующей функции чипсета. 2 н. и 9 з.п. ф-лы, 1 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к способу активации функции чипсета, включающего, по меньшей мере, память и модуль вычислений, отвечающий за криптографические операции. Оно также относится к защищенному чипсету, реализующему этот способ.
Чипсет может, например, использоваться в пользовательской аппаратуре, предназначенной для предоставления разрешения на доступ к данным условного доступа, таким как контент для платного телевидения. Его можно применять по существу в любом устройстве, в котором важным вопросом является защищенность чипсета.
Уровень техники
Чипсет, используемый в настоящем изобретении, представляет собой набор электронных схем, позволяющий процессору управлять обменом данными между различными компонентами устройства или пользовательской аппаратуры. Задачей операций, выполняемых на уровне чипсета, является предотвращение всех значимых атак, состоящих в анализе обменных сигналов в целях обнаружения ключей, относящихся к конкретному устройству или пользовательской аппаратуре. В связи с этим, ключ чипсета недоступен вне чипсета.
У некоторых существующих защищенных чипсетов уникальный ключ вводится в чипсет при его изготовлении. Ключ чипсета может сохраняться в памяти чипсета и иметь жестко заданный код, чтобы данный ключ невозможно было модифицировать мошенническим путем. Дополнительные ключи также могут быть вычислены по такому ключу чипсета таким образом, чтобы, с одной стороны, жестко закодированный ключ чипсета нельзя было модифицировать, и, с другой стороны, можно было получать различные ключи, модифицируя вычисление данного ключа. Вычисление ключа может осуществляться путем конкатенации, шифрования или любой другой комбинации ключа чипсета и числа, которое может быть или не быть случайным.
Все ключи, которые впоследствии вводятся в чипсет или в устройство, тем или иным образом зависят от этого первоначального ключа чипсета. В качестве примера из области телевидения условного доступа, права, которые используются для управления доступом к шифрованному контенту, зашифровываются ключом декодера, относящимся к этому декодеру. Этот ключ декодера передают на нужный декодер, зашифрованный с помощью первоначального ключа чипсета. Таким образом, если первоначальный ключ чипсета будет взломан, ключ декодера также будет взломан, как и сам контент.
Первоначальный ключ нельзя изменить в течение всего срока службы чипсета. Это важно в том случае, когда ключ чипсета вводится в полностью защищенной среде. Если ключ чипсета не вводится в условиях строгой безопасности, безопасность чипсета и пользовательской аппаратуры нельзя гарантировать. Поскольку ключ чипсета нельзя изменить, если первоначальный ключ не является полностью защищенным, повысить безопасность впоследствии будет невозможно.
Первоначальный ключ всегда вводится при изготовлении чипсета. Однако этот ключ следует активировать, только если выполнены специальные условия, в частности, в отношении конфигурации чипсета. На практике, непосредственно после изготовления чипсета или в процессе его изготовления чипсет должен пройти испытания конфигурации с целью проверки, соответствует ли конфигурация заданным требованиям, в частности, требованиям, относящимся к вопросам безопасности. Эти испытания конфигурации проводятся производителем, который является единственным, кто может их контролировать. Таким образом, возможно, что первоначальный ключ будет активирован, даже если не все испытания конфигурации прошли успешно. Невыполнение всех требований может быть результатом мошенничества или ошибки и способно привести к нарушениям защищенности. Так или иначе, решение, позволяющее предотвратить такую некорректную активацию ключа, если не все испытания были пройдены, отсутствует. В этом случае безопасность пользовательской аппаратуры не может быть гарантирована.
Поскольку в защищенных чипсетах, относящихся к известному уровню техники, испытания конфигурации могут выполняться только производителем, либо испытания проходят успешно и заданные функции активируются, либо чипсет не проходит испытания, при этом соответствующие функции не активируются. После завершения процесса изготовления добавлять новые функции невозможно.
В патенте США №5,883,956 описан защищенный модуль обработки (SPU, secure processing unit), в котором обеспечивается динамическое конфигурирование функций после того, как чипсет был установлен в устройстве, при этом указанное устройство находится в помещении пользователя. Доверенный центр перенастраивает конфигурацию защищенного модуля обработки с помощью таблицы возможностей и электронно-цифровой подписи. Указанная таблица возможностей формируется на головной станции и подвергается хешированию для получения сжатой формы сообщения. Сжатая форма сообщения зашифровывается с помощью секретного ключа защищенного модуля обработки для получения подписи. Таблицу возможностей и электронно-цифровую подпись передают на надлежащий защищенный модуль обработки. В модуле SPU сжатая форма сообщения дешифруется с помощью секретного ключа доверенного центра.
В этом защищенном устройстве секретный ключ необходим для обмена данными между головной станцией и защищенным модулем обработки. Этот секретный ключ вводят в модуль SPU при изготовлении или извлекают из ключа, введенного при изготовлении. Таким образом, если этот ключ взломан, права также могут быть нарушены.
Следовательно, решение, описанное в патенте США №5,883,956, обеспечивает средства для добавления или удаления прав или функций в чипсете, но безопасность операций, выполняемых чипсетом, зависит от защищенности первоначального ключа. Этот первоначальный ключ задает одна организация, обычно производитель чипсета, который может задать ключ, даже если не все требования выполнены. Поскольку только одна организация задает ключ, по которому получают все остальные ключи, ни одна другая организация не может проверить и подтвердить, что все требования выполнены.
Публикация WO 2006/091304 относится к системе и способу подготовки и передачи, по меньшей мере, на один чипсет ключей или прав, зависящих как от географического региона, так и от часового пояса. Указанный способ используется для обеспечения функций прекращения связи. Эти ключи или права зависят от первоначального ключа, который содержится в соответствующем чипсете. Таким образом, если первоначальный ключ взломан, защищенность всего чипсета также будет нарушена.
Раскрытие изобретения
Одной из задач настоящего изобретения является предложение защищенного чипсета, в котором может быть гарантировано выполнение всех требований перед активацией чипсета.
Другая задача изобретения состоит в активации дополнительных функций после этапов изготовления чипсета. Однако эти дополнительные функции активируются только при выполнении специальных условий.
Еще одной задачей настоящего изобретения является обеспечение возможности изменения ключа чипсета, если окажется, что этот ключ чипсета взломан.
Задачи настоящего изобретения решаются с помощью способа активации функции чипсета, включающего, по меньшей мере, память и модуль вычислений, который отвечает за криптографические операции, при этом память содержит, по меньшей мере, начальное значение, а модуль вычислений содержит, по меньшей мере, один криптографический алгоритм, причем способ включает следующие шаги:
- принимают, по меньшей мере, один из следующих элементов: ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS);
- передают, по меньшей мере, два из следующих элементов: начальное значение, полученный ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS), на модуль вычислений, причем начальное значение, полученный ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма предоставляются, по меньшей мере, двумя различными организациями;
- генерируют в модуле вычислений временный ключ (SKtemp) с использованием одного из следующих элементов: по меньшей мере, одного криптографического алгоритма модуля вычислений и, по меньшей мере, двух элементов, выбранных из группы, включающей начальное значение (Sd), ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS);
- принимают сообщение об активации с помощью модуля вычислений;
- принимают код аутентификации указанного сообщения с помощью модуля вычислений (CM), при этом указанный код аутентификации сообщения (MAC) вычисляется с использованием временного ключа (SKtemp);
- проверяют аутентичность указанного полученного сообщения с использованием кода аутентификации сообщения (MAC) и временного ключа (SKtemp);
- если полученное сообщение является аутентичным, активируют соответствующую функцию (F1, F2, F3) чипсета;
- если полученное сообщение не является аутентичным, запрещают активацию указанной соответствующей функции чипсета.
Задачи настоящего изобретения решаются также с помощью чипсета, включающего, по меньшей мере, память и модуль вычислений, который отвечает за криптографические операции, при этом память содержит, по меньшей мере, начальное значение, а модуль вычислений содержит, по меньшей мере, один криптографический алгоритм, причем чипсет включает следующие компоненты:
- средства приема, по меньшей мере, одного из следующих элементов: ключа сегментации (SK), ключа общего применения (GK) или глобального селектора криптографического алгоритма (GCAS);
- средства передачи, по меньшей мере, двух из следующих элементов: начального значения, полученного ключа сегментации (SK), ключа общего применения (GK) и глобального селектора криптографического алгоритма (GCAS), на модуль вычислений, причем начальное значение, полученный ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма предоставляются, по меньшей мере, двумя различными организациями;
- средства генерации в модуле вычислений временного ключа (SKtemp) с использованием одного из следующих элементов: по меньшей мере, одного криптографического алгоритма модуля вычислений и, по меньшей мере, двух элементов, выбранных из группы, включающей начальное значение (Sd), ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS);
- средства приема сообщения об активации с помощью модуля вычислений;
- средства приема кода аутентификации указанного сообщения с помощью модуля вычислений (CM), при этом указанный код аутентификации сообщения (MAC) вычисляется с использованием временного ключа (SKtemp);
- средства проверки аутентичности указанного полученного сообщения с использованием кода аутентификации сообщения (MAC) и временного ключа (SKtemp);
- средства активации соответствующей функции (F1, F2, F3) чипсета, если полученное сообщение является аутентичным;
- средства запрещения активации указанной соответствующей функции чипсета, если полученное сообщение не является аутентичным.
Благодаря способу и устройству настоящего изобретения одна организация, в частности, производитель, не может сама активировать обязательную функцию чипсета. Это означает, что защищенность чипсета не может быть нарушена вследствие мошеннических действий со стороны производителя или ошибок, допущенных при заключительных испытаниях.
Способ настоящего изобретения позволяет также осуществлять замену ключа чипсета в случае взлома указанного ключа. Это обеспечивает высокую степень гибкости при использовании таких чипсетов.
Кроме того, можно предложить чипсет, обладающий неактивной обязательной функцией, которую можно активировать не на этапе производства, как в известном уровне техники, а позднее, на этапе персонализации. Это обеспечивает двукратную проверку требований к активации, при этом одна проверка выполняется на этапе производства, а вторая - в процессе активации.
Кроме того, чипсет может обладать только несколькими функциями или только одной функцией, активируемой после персонализации. Дополнительные функции можно активировать впоследствии, когда чипсет уже установлен в устройстве и используется.
Краткое описание чертежей
Настоящее изобретение и его преимущества будет легче понять, обращаясь к следующему прилагаемому чертежу и подробному описанию конкретного варианта осуществления.
На ФИГ.1 показана схема способа настоящего изобретения.
Осуществление изобретения
Согласно настоящему изобретению чипсет содержит, по меньшей мере, память и модуль вычислений CM. При изготовлении чипсета память получает уникальный идентификационный номер (Sd). Этот идентификационный номер может быть или не быть секретным.
Модуль вычисления CM чипсета содержит, по меньшей мере, один криптографический алгоритм. Согласно предпочтительному варианту осуществления этот алгоритм является патентованным (внутренним). Однако могут также использоваться хорошо известные криптографические алгоритмы, например, такие как 3DES, AES, RSA. На ФИГ.1 модуль вычислений показан с использованием трех алгоритмов, GCA1, GCA2 и GCA3.
После изготовления чипсета выполняется его персонализация, осуществляемая, как правило, организацией, отличной от производителя. В процессе персонализации чипсет получает ключ сегментации SK. Он может также получить, по меньшей мере, ключ общего применения GK или глобальный селектор криптографического алгоритма GCAS. Таким образом, чипсет содержит, по меньшей мере, уникальный идентификационный номер, который может использоваться в качестве начального значения и, по меньшей мере, одного из таких элементов, как ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма.
По меньшей мере, два из числа таких элементов, как уникальный идентификационный номер, ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма передают на криптографический модуль CM. В случае, когда глобальный селектор криптографического алгоритма не передают на криптографический модуль, используется алгоритм по умолчанию. Уникальный идентификационный номер может использоваться в качестве начального значения с одним из других элементов, передаваемых на модуль вычислений. Алгоритм, который содержится в криптографическом модуле, используется в дальнейшем для генерации временного ключа SKtemp.
Начальное значение или уникальный идентификационный номер обычно известны производителю чипсета. Ключ сегментации известен производителю STB (Set Top Box, телевизионной абонентской приставки), а криптографический(-е) алгоритм(ы), содержащийся(-еся) в модуле вычислений, известен(-ны) поставщику услуг безопасности. Таким образом, ни производитель, ни организация, выполняющая персонализацию, не знает всех секретов.
Как ясно из изложенного выше, для формирования временного ключа необходимы несколько фрагментов информации. Эти фрагменты информации распределены среди нескольких организаций, а именно, таких как производитель, организация, отвечающая за персонализацию, и поставщик услуг безопасности. Они могут быть сведены в одно целое злонамеренными лицами только с большими трудностями. Это обеспечивает высокую степень защищенности устройства от мошеннических действий, а также от ошибок.
Согласно одному из конкретных вариантов осуществления, обязательная функция чипсета является неактивной до тех пор, пока он не получит сообщение об активации. Обработка сообщения об активации требует использования временного ключа SKtemp, который был сформирован, как описано выше. Сообщение об активации формируется, например, в центре управления и предназначается для конкретного чипсета. Это сообщение может быть или не быть зашифрованным. Это сообщение об активации связано с кодом аутентификации сообщения, при этом указанный код вычисляется с помощью временного ключа, известного центру управления. Вычисление кода аутентификации сообщения с помощью временного ключа может представлять собой шифрование или любую другую подходящую операцию с использованием кода аутентификации сообщения и временного ключа. После получения сообщения чипсетом оно обрабатывается с целью дешифрования, если необходимо, и получения кода аутентификации сообщения. Сообщение может содержать, по меньшей мере, две части. Одна часть относится к операции, которая должна быть произведена в случае выполнения некоторых условий. Другая часть может содержать условия AC (activation condition, условие активации), которые должны быть выполнены перед началом операций. Сообщение может также содержать другие дополнительные части. В одном из примеров условия активации проверка последнего выполняется, если временный ключ SKtemp уже находится в чипсете. Ключ сегментации SK не сохраняется, если временный ключ уже находится в чипсете.
Код аутентификации сообщения вычисляется с помощью временного ключа SKtemp. Этот код аутентификации сообщения обрабатывается в модуле вычислений для получения кода аутентификации сообщения в удобной для использования форме, после чего выполняется проверка аутентичности сообщения. Если сообщение является аутентичным, чипсет проверяет, выполнены ли условия AC, которые содержатся в сообщении. Если это так, выполняется операция, содержащаяся в сообщении и связанная со списком условий. Согласно одному из конкретных вариантов осуществления, первая функция состоит в активации обязательной функции чипсета и ее приведении в состояние, допускающее возможность использования. После однократного использования временный ключ SKtemp может быть удален.
Возможно, что сообщение не содержит никакого условия. В этом случае только результат аутентификации определяет, будет ли функция активирована. Если результат аутентификации отрицательный, или условия не выполнены, соответствующая функция не активируется. В зависимости от конкретного типа осуществления могут возникать и другие последствия.
При использовании чипсета можно обеспечить этот чипсет дополнительными функциями F1, F2, F3. Как и в предыдущем случае, на чипсет передают сообщение, при этом код аутентификации сообщения вычисляется с помощью временного ключа SKtemp. Это сообщение также содержит, по меньшей мере, операцию и список условий AC. Код аутентификации сообщения используется для проверки аутентичности указанного сообщения. Условия также проверяются и, в случае их выполнения, производится данная операция. Эта операция может заключаться, например, в активации новой функции чипсета.
Если условия не выполнены, по меньшей мере, активация новой функции не будет разрешена. Невыполнение условий может иметь и другие последствия. Например, если некоторые условия не выполнены, все или часть функций чипсета могут быть деактивированы.
По каждой новой функции, подлежащей активации, можно передавать одно сообщение с одним набором условий. Кроме того, различные наборы условий могут содержаться в единственном сообщении и быть связанными с одной и той же или различными операциями.
Согласно настоящему изобретению ключ можно ввести безопасным способом не только при изготовлении чипсета, но и позже, в процессе его настройки. Это обеспечивает большую степень гибкости и защищенности, так как испытания могут проводиться дважды, причем различными организациями.
В чипсете согласно настоящему изобретению можно изменять ключ чипсета. Таким образом, если ключ взломан, чипсет, тем не менее, можно использовать после изменения ключа.
Согласно способу настоящего изобретения поставщик услуг безопасности может полностью контролировать процесс и, в частности, может определить, что конфигурация чипсета соответствует необходимым функциям. Это обеспечивает высокую степень защищенности от ошибок, как и от мошеннических манипуляций.
Можно предложить чипсет, в котором обязательная функция является неактивной до тех пор, пока он не получит аутентичное сообщение об активации. Такое аутентичное сообщение создается и передается центром управления, связанным с поставщиком услуг безопасности. Таким образом, чипсет должен соответствовать требованиям как на этапе изготовления, так и на этапе активации. Так как изготовление и активация обычно выполняются различными организациями, степень защищенности повышается.
1. Способ активации функции чипсета, включающего, по меньшей мере, память и модуль вычислений, который отвечает за криптографические операции, при этом память содержит, по меньшей мере, начальное значение, а модуль вычислений содержит, по меньшей мере, один криптографический алгоритм, включающий следующие шаги:- принимают, по меньшей мере, один из следующих элементов: ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS);- передают, по меньшей мере, два из следующих элементов: начальное значение, полученный ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS), на модуль вычислений, причем начальное значение, полученный ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма предоставляются, по меньшей мере, двумя различными организациями;- генерируют в модуле вычислений временный ключ (SKtemp) с использованием одного из следующих элементов: по меньшей мере, одного криптографического алгоритма модуля вычислений и, по меньшей мере, двух элементов, выбранных из группы, включающей начальное значение (Sd), ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS);- принимают сообщение об активации с помощью модуля вычислений;- принимают код аутентификации указанного сообщения с помощью модуля вычислений (CM), при этом указанный код аутентификации сообщения (MAC) вычисляется с использованием временного ключа (SKtemp);- проверяют аутентичность указанного полученного сообщения с использованием кода аутентификации сообщения (MAC) и временного ключа (SKtemp);- если полученное сообщение является аутентичным, активируют соответствующую функцию (F1, F2, F3) чипсета;- если полученное сообщение не является аутентичным, запрещают активацию указанной соответствующей функции чипсета.
2. Способ по п.1, отличающийся тем, что сообщение об активации содержит, по меньшей мере, одно условие активации (AC), причем способ включает следующие шаги:- проверяют, выполнено ли, по меньшей мере, одно условие активации, содержащееся в указанном сообщении;- если, по меньшей мере, одно условие активации выполнено, активируют соответствующую функцию (F1, F2, F3) чипсета;- если, по меньшей мере, одно из указанных условий активации не выполнено, запрещают активацию указанной соответствующей функции чипсета.
3. Способ по п.2, отличающийся тем, что условие активации (АС) содержит проверку, находится ли уже временный ключ (SKtemp) в чипсете, причем ключ сегментации (SK) не сохраняется, если временный ключ уже находится в чипсете.
4. Способ по п.1, отличающийся тем, что начальное значение (Sd) вводят при изготовлении чипсета.
5. Способ по п.1, отличающийся тем, что ключ сегментации (SK) вводится на этапе персонализации чипсета.
6. Способ по п.1, отличающийся тем, что, по меньшей мере, один из указанных криптографических алгоритмов, содержащихся в чипсете, является внутренним алгоритмом.
7. Способ по п.1, отличающийся тем, что модуль вычислений (CM) содержит несколько алгоритмов, причем чипсет принимает инструкцию, указывающую, какой алгоритм должен использоваться для генерации временного ключа (SKtemp).
8. Способ по п.1, отличающийся тем, что, по меньшей мере, одна функция чипсета остается неактивной, пока сообщение об активации не будет получено и обработано.
9. Способ по п.1, отличающийся тем, что временный ключ (SKtemp) удаляют после однократного использования.
10. Способ по п.1, отличающийся тем, что сообщение об активации зашифровывают.
11. Чипсет, включающий, по меньшей мере, память и модуль вычислений, который отвечает за криптографические операции, при этом память содержит, по меньшей мере, начальное значение, а модуль вычислений содержит, по меньшей мере, один криптографический алгоритм, причем чипсет также включает следующие компоненты:- средства приема, по меньшей мере, одного из следующих элементов: ключа сегментации (SK), ключа общего применения (GK) и глобального селектора криптографического алгоритма (GCAS);- средства передачи, по меньшей мере, двух из следующих элементов: начального значения, полученного ключа сегментации (SK), ключа общего применения (GK) и глобального селектора криптографического алгоритма (GCAS), на модуль вычислений, причем начальное значение, полученный ключ сегментации, ключ общего применения и глобальный селектор криптографического алгоритма предоставляются, по меньшей мере, двумя различными организациями;- средства генерации в модуле вычислений временного ключа (SKtemp) с использованием одного из следующих элементов: по меньшей мере, одного криптографического алгоритма модуля вычислений и, по меньшей мере, двух элементов, выбранных из группы, включающей начальное значение (Sd), ключ сегментации (SK), ключ общего применения (GK) и глобальный селектор криптографического алгоритма (GCAS);- средства приема сообщения об активации с помощью модуля вычислений;- средства приема кода аутентификации указанного сообщения с помощью модуля вычислений (CM), при этом указанный код аутентификации сообщения (MAC) вычисляется с использованием временного ключа (SKtemp);- средства проверки аутентичности указанного полученного сообщения с использованием кода аутентификации сообщения (MAC) и временного ключа (SKtemp);- средства активации соответствующей функции (F1, F2, F3) чипсета, если полученное сообщение является аутентичным;- средства запрещения активации указанной соответствующей функции чипсета, если полученное сообщение не является аутентичным.