Рутокены не подвержены нашумевшей атаке "Извлечение секретного ключа"
Некоторое время назад ИТ-общественность всколыхнула появившаяся в открытом доступе публикация об «эффективной атаке с оракулом на набивку в криптографическом аппаратном обеспечении» ("Efficient Padding Oracle Attacks on Cryptographic Hardware" http://hal.inria.fr/docs/00/70/47/90/PDF/RR-7944.pdf). В статье идет речь об восстановлении неизвлекаемого симметричного секретного ключа из защищенной памяти usb-токенов и смарт-карт по его зашифрованному отображению при использовании алгоритмов RSA и стандарта PKCS#1 v1.5.
Секретный ключ выявляется путем манипуляции с набивкой шаблона и атака по сути представляет собой модифицированный алгоритм Блейхенбахера, в котором было на несколько порядков уменьшено количество необходимых для восстановления ключа запросов к оборудованию (вместо 215000 запросов – до 9400). Все это позволило небезосновательно заявить о уязвимости указанного в статье списка криптографического аппаратно-программного обеспечения, которое использует извлекаемые в зашифрованном виде секретные симметричные ключи.
Персональные идентификаторы Рутокен в качестве алгоритмов симметричного шифрования используют только алгоритмы ГОСТ 28147-89. Никаких возможностей для извлечения секретных ключей не появилось, так как неизвлекаемые секретные ключи ГОСТ 28147-89, сгенерированные на Рутокенах, физически не могут быть извлечены в подверженном атаке виде .
Считаем важным отметить следующее: помимо российских криптоалгоритмов идентификаторы Рутокен содержат и реализацию алгоритмов RSA, но используемые для данной атаки функции стандарта PKCS#11 в реализации наших библиотек отсутствуют. Т.е. описанная в статье атака в принципе не применима для систем использующих ПО Рутокен и электронные идентификаторы Рутокен.