Читайте также:
|
|
Пока диапазон параметра «производительность кода» может варьироваться от 1RTT до 12RTT, причем с дробными величинами, отражающими неравномерность загрузки исполнительных устройств ядра процессора в период выполнения кода.
Не нужно считать что, показатель загрузки процессора, который можно увидеть в диспетчере задач ОС, может служить объективным критерием эффективности кода. Загрузка ядра процессора может быть 100%, но при этом программный код будет использовать одно исполнительное устройство в нем (производительность 1RTT). В этом случае при 100% загрузке процессорное ядро будет работать в 1/12 своей максимальной производительности.
Другими словами при максимальной загрузке процессора, показываемого например в диспетчере задач ОС Windows, его реальная производительность может варьироваться от 1RTT до 12RTT. Увидев в окне производительности 100% загрузку на каком либо процессорном ядре, неправильно считать, что в этом ядре работают все исполнительные устройства, отнюдь!
Единственным критерием косвенной оценки работы процессорного ядра с максимальной производительностью может служить его энергопотребление, и как следствие шум кулера. Вот если кулер зашумел, тогда, да,- загрузка пошла по максимуму.
Но хватит общих понятий, как говорится, «короче, Склифасовский».
Традиционная реализация ГОСТ 28147-89
Не являясь профессионалом в области информационной безопасности, всё же знаком с темой шифрования. Для меня эта тема близка с точки зрения программиста, который, как и самый первый программист, когда было только слово (информация), после дня (ночи) тяжелого труда, усталый, смотрит на результат своего труда и думает: «это хорошо»….
Заняться конкретной темой симметричного поточного шифрования меня сподвигли разговоры, с лично мной, глубоко уважаемым, профессиональным криптографом. И занявшись ей, постарался сделать именно «хорошо», а в этой теме «хорошо»,- значит быстро, а быстро значит выполнять за единицу времени максимальное число операций. Другими словами встала задача написания программного кода с максимальным значением RTT.
Криптографическое преобразование по ГОСТ 28147-89 используется для поточного шифрования информации в каналах связи и на дисковых накопителях.
В настоящее время повсеместно применяется программная реализация данного ГОСТ на РОН центрального процессора. В известных методах реализации ГОСТ вся секретная информация (ключи шифрования, блоки замен) размещаются в оперативной памяти.
Это снижает надежность шифрования, поскольку, имея дамп оперативной памяти, можно полностью выявить все секретные элементы криптопреобразования.
Кроме этого, метод имеет ограничения по быстродействию, обусловленные расположением основных объектов криптопреобразования в ОП и неполной загрузкой исполнительных устройств ALU. Современные процессоры, реализуя криптопроцедуру по известному методу могут обеспечить скорость шифрования на уровне 40-60 мегабайт в секунду.
Если уж разбираться до конца, то причиной низкого быстродействия и слабой защищенности криптопреобразования является программная реализация блока подстановок.
Вот как он описан в официальном документе ГОСТ 28147-89:
По п. 1.2. ГОСТ этот блок реализует тетрадные (по четыре бита) перестановки в 32битном слове, но архитектура процессора х86/64 и его система команд не способна эффективно манипулировать тетрадами.
Для программной реализации блока подстановок используют специальные таблицы в оперативной памяти подготавливаемые на этапе инициализации криптофункции. Эти таблицы объединяют узлы замен смежных тетрад в байтовые таблицы размером 8х8 бит, таким образом в оперативной памяти размещается четыре 256 байтных таблицы.
В более продвинутых реализациях эти таблицы имеют размер 1024 байта (256 слов по четыре байта). Это сделано для того, чтобы реализовать в этих таблицах дополнительно циклический сдвиг на 11 позиций полученного в результате подстановки 32 битного слова (следующая операция алгоритма преобразования по ГОСТ).
Пример реализации ГОСТ 28147-89 по данному методу показан в приложении №1.
Информация блока подстановок является секретным компонентом криптофункции, вот как это сформулировано в официальном документе ГОСТ 28147-89:
Размещение этих таблиц с ключами блока подстановок в ОП противоречит требованиям ГОСТ 28147-89 п.1.7., поскольку секретная информация становится доступной для сторонних программ, работающих на вычислительной установке. ФСБ, сертифицирующая в том числе и программные реализации шифрования по ГОСТ 28147-89 на данное нарушение смотрит мягко говоря снисходительно. Если для размещения ключей в ОП ФСБ еще требует наличия «фигового листочка», в виде маскирования ключей операцией XOR, то для блоков замен в ОП ничего не требуется, они хранятся в открытом виде.
Дата добавления: 2015-07-08; просмотров: 152 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Асимметричные криптосистемы шифрования | | | Многопоточная реализация ГОСТ 28147-89 |