Операция HASH запускает вычисление хэш-кода двумя способами (см. таблицу 9):
- полное вычисление внутри карты или
- частичное вычисление внутри карты (например, последний цикл хэширования).
Шаблон хэш-кода НТ ("АА", "АВ") указывает ссылочный алгоритм для вычисления хэш-кода (см. ИСО/МЭК 7816-4).
Входные данные должны быть представлены карте в виде последовательных блоков (один или более одновременно). В зависимости от алгоритма хэширования последние входные данные имеют длину, равную или меньшую длины блока. Заполняющий алгоритм, если это целесообразно, является частью определения алгоритма хэширования.
Для последующей обработки вычисленного хэш-кода следует различать следующие два случая:
- вычисленный хэш-код хранится в карте и доступен для использования в более поздней команде; тогда поле отсутствует либо
- хэш-код доставляется картой в ответе; тогда поле должно быть установлено на соответствующую длину.
Таблица 9 - Параметры и поле данных для операции HASH
P1 | "90" |
P2 | "80" или "A0" |
Командное поле данных | Если P2="80", данные для хэширования Если P2="A0", объекты данных, имеющие отношение к хэшированию ("90" для промежуточного хэш-кода, "80" для последнего блока) |
Ответное поле данных | Хэш-код или отсутствует |