ЗАЩИТА АППЛЕТОВ ОТ АНАЛИЗА СКРЫТЫХ КАНАЛОВ

1. Электронное устройство, оснащенное виртуальной машиной для исполнения апплета, при этом виртуальная машина выполнена с возможностью распознавания команд апплета и исполнения кода, соответствующего каждой команде, отличающееся тем, что виртуальная машина содержит модуль ассоциирования, выполненный с возможностью связывать с одной командой множество разных, но функционально идентичных кодов, и модуль выбора, выполненный с возможностью произвольного выбора подлежащего исполнению кода для рассматриваемой команды.
2. Устройство по п.1, в котором различные коды, связанные с командой, различаются по времени их исполнения устройством.
3. Устройство по п.1, в котором различные коды, связанные с указанной командой, различаются по энергопотреблению или по электромагнитному излучению, генерируемому при их исполнении устройством.
4. Устройство по п.1, в котором виртуальная машина выполнена с возможностью осуществления случайного выбора подлежащего исполнению кода для каждой команды, связанной с несколькими кодами, на основе измерения физической характеристики устройства.
5. Устройство по п.1, в котором для двух команд, каждая из которых связана с множеством кодов, по меньшей мере один из кодов, связанных с первой командой, имеет по меньшей мере одну общую характеристику с одним из кодов, связанных со второй командой, при этом общие характеристики включают в себя время исполнения устройством, а также энергопотребление и электромагнитное излучение, генерируемое во время исполнения кода устройством.
6. Устройство по п.1, в котором виртуальная машина выполнена с возможностью идентификации наиболее частых команд и использования множества кодов только для указанных наиболее частых команд.
7. Устройство по п.6, в котором наиболее частые команды включают в себя команду сложения, или вычитания, или умножения, или взятия модуля или исключающего ИЛИ.
8. Устройство по п.1, в котором виртуальная машина выполнена с возможностью идентификации наиболее чувствительных команд и использования множества кодов только для указанных наиболее чувствительных команд.
9. Устройство по п.8, в котором наиболее чувствительные команды включают в себя одну из команд, использующих криптографические алгоритмы, или команд управления доступом.
10. Способ защиты электронного устройства от атак через скрытые каналы, характеризующийся тем, что оснащают электронное устройство виртуальной машиной, распознающей команды апплета и исполняющей код, соответствующий каждой команде, отличающийся тем, что связывают команду с множеством разных, но функционально идентичных кодов, при этом случайным образом выбирают при помощи виртуальной машины подлежащий исполнению код для указанной команды, связанной с множеством кодов.
11. Способ по п.10, в котором различные коды, связанные с командой, различаются по времени их исполнения устройством.
12. Способ по п.10, в котором различные коды, связанные с указанной командой, различаются по энергопотреблению или по электромагнитному излучению, генерируемому во время их исполнения устройством.
13. Способ по п.10, в котором выбирают при помощи виртуальной машины подлежащий исполнению код для каждой команды на основе измерения физической характеристики устройства.
14. Способ по п.10, в котором для двух команд, каждая из которых связана с множеством кодов, по меньшей мере один из кодов, связанных с первой командой, имеет по меньшей мере одну общую характеристику с одним из кодов, связанных со второй командой, при этом общие характеристики включают в себя время исполнения устройством, а также энергопотребление и электромагнитное излучение, генерируемое во время исполнения кода устройством.
15. Способ по п.10, в котором идентифицируют при помощи виртуальной машины наиболее частые команды и используют множество кодов только для указанных наиболее частых команд.