ГОСТ Р ИСО/МЭК 7816-8—2011
5.4 Операция ВЫЧИСЛЕНИЕ ЦИФРОВОЙ ПОДПИСИ (COMPUTE DIGITAL SIGNATURE)
Операция COMPUTE DIGITAL SIGNATURE запускает вычисление цифровой подписи (см. табли
цу 8). Алгоритм может представлять собой либо алгоритм цифровой подписи, либо комбинацию
хэш-алгоритма и алгоритма цифровой подписи. В приложении А приведены примеры операций цифро
вой подписи.
Для вычисления цифровой подписи данные, которые должны быть подписаны или интегрирова
ны в процесс подписания, передаются в командное поле данных или отправляются в предыдущую
команду, например PSO: HASH. В Р2 цифровая подпись определяется тегами «9А». «АС» или «ВС» в
соответствии со структурой на входе (см. ИСО/МЭК 7816-4).
Если вспомогательные данные должны быть включены во ввод цифровой подписи, то ссылка
должна бытьпредставлена в шаблоне CRT (см. ИСО/МЭК 7816-4). Если имеется пустая ссылка на объ
ект данных для вспомогательных данных, то тогда вспомогательные данные должны быть вставлены
картой. Вспомогательные данные, которые присутствуют или к которым обращаются в поле данных,
имеют приоритет над любым списком заголовка.
Значение, подлежащее возврату картой, является цифровой подписью (Р1 = «9Е»),
Т а б л и ц е
8 — Параметры и поля данных для операции COMPUTE DIGITAL SIGNATURE
Р1
Р2
«9Е»
«9А», «АС» или «ВС»
Командное
Отсутствует (данные уже в карте) или
поле данных
если Р2 = «9А». данные должны быть подписаны или интегрированы в процесс подписания,
если Р2 = «АС», объекты данных, значения полей которых подписаны или интегрированы в про-
цесс подписания, или
если Р2 ®«ВС», объекты данных должны быть подписаны или интегрированы в процесс подписа-
ния
Ответное
поле данных
Цифровая подпись
П р и м е ч а н и е — Теги «АС» и «ВС» не интегрированы во ввод цифровой подписи.
5.5 Операция ХЭШИРОВАТЬ (HASH)
Операция HASH запускает вычисление хэш-кода двумя способами (см. таблицу 9):
- полное вычисление внутри карты или
- частичное вычисление внутри карты (например, последний цикл хэширования).
Шаблон хэш-кода НТ («АА». «АВ») указывает ссылочный алгоритм для вычисления хэш-кода (см.
ИСО/МЭК 7816-4).
Входные данные должны быть представлены карте в виде последовательных блоков (один или
более одновременно). В зависимости от алгоритма хэширования последние входные данные имеют
длину, равную или меньшую длины блока. Заполняющий алгоритм, если это целесообразно, является
частью определения алгоритма хэширования.
Для последующей обработки вычисленногохэш-кода следует различать следующиедва случая:
- вычисленный хэш-код хранится в карте и доступен для использования в более поздней коман
де; тогда поле Leотсутствует либо
- хэш-код доставляется картой в ответе; тогда поле Lcдолжно быть установлено на соответству
ющую длину.
Т а б л и ц а
9 — Параметры и поле данных для операции HASH
Р1
Р2
«90»
«80» или «АО*
Командное
поле данных
Если Р2 = «80». данные для хэширования
Если Р2 = «АО», объекты данных, имеющие отношение к хэшированию («90» для промежуточно-
го хэш-кода. «80» для последнего блока)
Ответное
поле денных
Хэш-код или отсутствует
6