СПОСОБ ЗАГРУЗКИ КОДА ПО МЕНЬШЕЙ МЕРЕ ОДНОГО ПРОГРАММНОГО МОДУЛЯ

1. Способ загрузки кода по меньшей мере одного программного модуля в главную память посредством процессора системы безопасности, характеризующийся тем, что исполняют посредством процессора системы безопасности:
код загрузки, осуществляющий загрузку (156) кода главного загрузчика в главную память и затем запускающий (162) исполнение этого главного загрузчика из главной памяти, причем код загрузки записан в энергонезависимом постоянном запоминающем устройстве процессора, начиная с первого адреса, на который указывает порядковый счетчик процессора сразу же после сброса процессора,
код главного загрузчика для загрузки (180) в главную память кода многозадачной операционной системы, выполненного с возможностью использования только одного уменьшенного диапазона адресов в главной памяти и для последующего запуска исполнения операционной системы из главной памяти,
операционную систему для планирования одновременного исполнения нескольких пользовательских программ указанного процессором,
при этом
главный загрузчик также осуществляет загрузку (170) в главную память кода указанного программного модуля перед запуском исполнения операционной системы в диапазон адресов главной памяти, находящийся вне диапазона адресов главной памяти, используемого операционной системой, а
после запуска операционная система переадресует (194) обращение к этому программному модулю из пользовательской программы по адресу в главной памяти, по которому был загружен код программного модуля перед запуском исполнения операционной системы, с использованием особой файловой системы операционной системы, которая автоматически ассоциирует адрес программного модуля в пространстве виртуальной памяти пользовательской программы с физическим адресом программного модуля в главной памяти.
2. Способ по п.1, в котором перед запуском исполнения главного загрузчика код загрузки, исполняемый процессором, проверяет (158) аутентичность кода главного загрузчика на основе сигнатуры кода и криптографического ключа и запускает исполнение главного загрузчика только в случае аутентичности кода.
3. Способ по п.2, в котором:
в процессе исполнения главный загрузчик конфигурирует (176) сопроцессор безопасности, имеющийся в составе интегральной схемы процессора, причем сопроцессор проверяет аутентичность кода программного модуля на основе сигнатуры, предоставляемой вместе с кодом указанного модуля, и криптографического ключа,
после запуска исполнения системы эксплуатации сопроцессор безопасности автоматически проверяет (178) через заданные интервалы аутентичность загруженного кода программного модуля, так что исполнение программного модуля не допускается в случае его неаутентичности, при этом указанный сопроцессор использует для этой цели собственное энергонезависимое запоминающее устройство и собственное запоминающее устройство с произвольной выборкой для исполнения без обращения к главной памяти проверки аутентичности кода программного модуля, причем указанные энергонезависимое запоминающее устройство и запоминающее устройство с произвольной выборкой доступны исключительно для сопроцессора безопасности.
4. Способ по п.2, в котором:
oc1
главный загрузчик конфигурирует (168) сопроцессор безопасности, имеющийся в интегральной схеме, составляющей процессор, для сокрытия команд, записанных в первом диапазоне адресов главной памяти, куда загружен код программного модуля, причем указанное сокрытие состоит в сохранении в зашифрованном виде, с использованием криптографического ключа K, команд кода программного модуля, записанного в указанном диапазоне адресов, и
oc1
oc1
после запуска исполнения системы эксплуатации указанный сопроцессор безопасности автоматически расшифровывает с использованием ключа K каждую команду, считанную из указанного первого диапазона адресов, перед исполнением команды процессором, причем указанный сопроцессор использует для этой цели собственное энергонезависимое запоминающее устройство и собственное запоминающее устройство с произвольной выборкой для исполнения без обращения к главной памяти указанной расшифровки с применением ключа K, причем указанное энергонезависимое запоминающее устройство и указанное запоминающее устройство с произвольной выборкой доступны исключительно для указанного сопроцессора безопасности.
5. Способ по п.4, в котором записывают исполняемый код программного модуля в зашифрованном с использованием ключа Koc1 виде в энергонезависимое запоминающее устройство, а главный загрузчик осуществляет загрузку указанного кода программного модуля, зашифрованного с применением ключа Koc1, непосредственно в главную память.
6. Способ по п.2, в котором:
главный загрузчик конфигурирует (168) сопроцессор безопасности, имеющийся в интегральной схеме процессора для сокрытия данных, записанных во втором диапазоне адресов главной памяти, причем указанное сокрытие заключается в шифровании указанных данных, а затем
в процессе выполнения (194), после запуска операционной системы, программный модуль записывает данные во второй диапазон адресов и
в ответ на это сопроцессор безопасности шифрует каждый сегмент данных, подлежащий записи во второй диапазон адресов, перед передачей указанного сегмента данных в шину данных, соединяющую процессор с главной памятью, и расшифровывает каждый сегмент данных, считанный процессором из второго диапазона адресов, при получении указанного сегмента данных процессором из шины данных перед использованием указанного сегмента данных процессором, так что каждый сегмент данных, записанный во втором диапазоне адресов главной памяти, находится вне интегральной схемы, составляющей процессор, исключительно в зашифрованном виде, при этом указанный сопроцессор использует для этой цели собственное энергонезависимое запоминающее устройство и собственное запоминающее устройство с произвольной выборкой для исполнения, без использования ресурсов главной памяти, указанного шифрования и указанной расшифровки, причем указанное энергонезависимое запоминающее устройство и указанное запоминающее устройство с произвольной выборкой доступны исключительно для указанного сопроцессора безопасности.
7. Способ по п.2, в котором:
в процессе исполнения главный загрузчик конфигурирует (182) сопроцессор безопасности, имеющийся в интегральной схеме процессора, с тем, чтобы сопроцессор проверил аутентичность загруженного кода операционной системы на основе сигнатуры, предоставленной вместе с кодом этой операционной системы, и криптографического ключа,
при этом после запуска исполнения операционной системы сопроцессор безопасности автоматически и через заданные промежутки времени проверяет аутентичность кода операционной системы и не допускает выполнения операционной системы в случае неаутентичности кода, причем сопроцессор использует для этой цели собственное энергонезависимое запоминающее устройство и собственное запоминающее устройство с произвольной выборкой для выполнения без использования ресурсов главной памяти указанной проверки аутентичности кода операционной системы, при этом указанное энергонезависимое запоминающее устройство и указанное запоминающее устройство с произвольной выборкой доступны исключительно для указанного сопроцессора безопасности.
8. Способ по любому из пп.1-7, в котором главный загрузчик осуществляет загрузку (170) кода программного модуля в непрерывный диапазон адресов главной памяти, не разбитый операционной системой на страницы.
9. Способ по любому из п.п.1-7, в котором код главного загрузчика прекращает выполняться после запуска операционной системы и не выполняется до тех пор, пока не произойдет сброс процессора системы безопасности.
10. Способ по любому из пп.1-7, в котором операционная система после запуска устанавливает механизм виртуальной памяти между выделенной пользователю подсекцией главной памяти и одним или более запоминающими устройствами большой емкости.
11. Способ по любому из пп.1-7, в котором программный модуль включает в себя сегменты данных или код библиотеки условного доступа, причем указанные сегменты данных или указанный код позволяют расшифровать криптограмму управляющего слова, имеющуюся в сообщении ЕСМ (сообщение управления правами).
12. Способ приема контента мультимедиа, скремблированного с использованием управляющих слов CWi,t, содержащий этапы, на которых:
<mrow><mi>C</mi><msubsup><mi>W</mi><mrow><mi>i</mi><mo>,</mo><mi>t</mi></mrow><mo>∗</mo></msubsup></mrow>
i,t
принимают (200) сообщение ЕСМ (сообщение управления правами), содержащее криптограмму
управляющего слова CW;
<mrow><mi>C</mi><msubsup><mi>W</mi><mrow><mi>i</mi><mo>,</mo><mi>t</mi></mrow><mo>∗</mo></msubsup></mrow>
i,t
загружают программный модуль в главную память приемного терминала, причем программный модуль выполнен с возможностью расшифровки криптограммы
для получения управляющего слова CW при исполнении программного модуля процессором, соединенным с главной памятью посредством шины данных;
<mrow><mi>C</mi><msubsup><mi>W</mi><mrow><mi>i</mi><mo>,</mo><mi>t</mi></mrow><mo>∗</mo></msubsup></mrow>
исполняют указанный программный модуль процессором для расшифровки (200) криптограммы
;
i,t
дескремблируют контенты мультимедиа, скремблированные с использованием управляющего слова CW в открытой форме; и
загружают указанный программный модуль в соответствии со способом по любому из пп.1-7.
13. Носитель записи информации (78, 94, 102), содержащий команды для реализации способа по любому из пп.1-7 при исполнении указанных команд электронным процессором системы безопасности.
14. Терминал, оснащенный:
главной памятью (92)
процессором системы безопасности (90), имеющим вид интегральной схемы, в которой реализованы микропроцессор (99), выполненный с возможностью исполнять команды, записанные в главной памяти, сопроцессор безопасности (100), энергонезависимое запоминающее устройство (102) и запоминающее устройство с произвольной выборкой (103), доступные исключительно для указанного сопроцессора безопасности, причем указанный процессор соединен с главной памятью посредством шины данных,
кодом (128) многозадачной операционной системы, выполненной с возможностью при исполнении процессором операционной системы планировать одновременное выполнение нескольких пользовательских программ,
кодом (104) главного загрузчика, выполненного с возможностью при исполнении процессором главного загрузчика, загружать в главную память код многозадачной операционной системы, выполненной с возможностью использования только одного уменьшенного диапазона адресов в главной памяти, и затем запускать выполнение операционной системы из главной памяти,
командами кода загрузки, который при исполнении указанных команд процессором, выполнен с возможностью загружать код главного загрузчика в главную память, причем указанные команды записаны в энергонезависимое запоминающее устройство (102) сопроцессора, начиная с первого адреса, на который указывает порядковый счетчик процессора сразу после каждого сброса процессора,
одним или несколькими энергонезависимыми запоминающими устройствами (73, 74), содержащими код (125) программного модуля,
при этом главный загрузчик (104) дополнительно выполнен с возможностью при исполнении процессором загружать код программного модуля в главную память прежде запуска исполнения операционной системы в диапазон адресов главной памяти, расположенный вне диапазона адресов, используемого операционной системой, и
после запуска операционная система (128) выполнена с возможностью при исполнении микропроцессором переадресовывать обращение к указанному программному модулю от пользовательской программы по адресу в главной памяти, по которому был загружен код программного модуля до запуска выполнения операционной системы, с использованием особой файловой системы операционной системы, причем указанная файловая система автоматически ассоциирует адрес программного модуля в пространстве виртуальной памяти пользовательской программы с физическим адресом программного модуля в главной памяти.
15. Терминал по п.14, характеризующийся тем, что:
содержит приемник сообщений ЕСМ (70),
<mrow><mi>C</mi><msubsup><mi>W</mi><mrow><mi>i</mi><mo>,</mo><mi>t</mi></mrow><mo>∗</mo></msubsup></mrow>
i,t
причем программный модуль (126) выполнен с возможностью при его исполнении процессором принимать сообщение ЕСМ, расшифровывать криптограмму
для получения управляющего слова CW, содержащегося в сообщении ЕСМ,
i,t
при этом терминал содержит блок дескремблирования, выполненный с возможностью дескремблировать контент мультимедиа, скремблированный с использованием управляющего слова CW, расшифрованного программным модулем.