Реализация схем подписи на интеллектуальных карточках
В процессе реализации схем электронной подписи на интеллектуальных карточках приходится учитывать, с одной стороны, алгоритмические проблемы реализации криптографических алгоритмов, а с другой -- необходимость обеспечения их криптографической стойкости. Все попытки удовлетворить этим противоречивым требованиям можно условно разделить на две категории. К первой относятся поиски все более и более эффективных методов реализации известных схем электронной подписи. Ко второй категории относятся попытки создания эффективных схем электронной подписи за счет некоторого (предположительно, незначительного) снижения безопасности. Рассмотрим одну из таких схем . 

Схема подписи ESIGN. Секретный ключ схемы представляет собой пару простых чисел и (), открытый ключ -- целые числа и . Подписываемое сообщение и подпись считаются целыми числами и 
Генерация подписи выполняется следующим образом: 
    1. Выбирается случайное число . 
    2. Вычисляется такое, что 

где  -- односторонняя хэш-функция ( для любого положительного целого ),  -- целое число ( ). Сообщение и подпись отсылаются проверяющему. 
Верификация подписи заключается в проверке неравенств 

Здесь обозначает длину  в битах. 

Безопасность схемы ESIGN. Авторы данной схемы подписи признаются, что некоторые ее версии являются нестойкими. Так, в частности, говорится о том, что квадратичная версия () схемы была раскрыта Брикеллом и Де Лаурентисом в 1985 г. В то же время авторы утверждают, что при раскрытие схемы предположительно эквивалентно факторизации, к чему можно отнестись достаточно скептически. 
Достоинством схемы является ее достаточно высокая эффективность: быстродействие алгоритмов примерно в 20 раз выше, чем у схемы RSA. 

Реализация схемы ESIGN в интеллектуальных карточках. Параметр выбирается как степень двойки, выбирается длиной 16, 24, 32 или 40 байтов. В интеллектуальной карточке должны быть реализованы следующие операции: 

Микропрограммная реализация схемы подписи разработан для 8-битового процессора с частотой 5 МГц. Размер требуемой памяти равен 384 байтам памяти с произвольным доступом (RAM), 10 Кбайтам ПЗУ (ROM) и 8 Кбайтам перепрограммируемого ПЗУ (EEPROM). Схема использует этап предварительных вычислений с составлением таблицы констант для уменьшения времени на деление и редукцию. Операции 1, 2, 4 и операция могут выполняться предварительно, так как они не зависят от конкретного значения . С точки зрения эффективности алгоритма подписи это выгодно, так как на предварительном этапе выполняются такие трудоемкие операции, как дискретное возведение в степень и модулярная инверсия, в то время оперативно (т. е., после поступления сообщения ) выполняются только операции сложения, умножения и деления. 
В этой же работе  также утверждается, что соответствующая данной схеме подписи схема интерактивной идентификации не менее эффективна, чем схема интерактивной идентификации Фиата -- Шамира . Время генерации подписи в разработанной для схемы ESIGN интеллектуальной карточке составляет не более  сек., размер памяти для программ и данных не превышает 3 Кбайтов. 
Существует еще несколько схем электронной подписи, разработанных для реализации в интеллектуальных карточках.Предложена модификация CORSAIR схемы RSA, которая позволяет достичь высокого быстродействия при работе с 512-битовыми операндами: генерация подписи требует не более  сек., а ее проверка --  сек.