Откройте актуальную версию документа прямо сейчас
Если вы являетесь пользователем интернет-версии системы ГАРАНТ, вы можете открыть этот документ прямо сейчас или запросить по Горячей линии в системе.
Приложение А
(справочное)
Контрольные примеры
Данное приложение носит справочный характер и не является частью настоящего стандарта.
В данном приложении двоичные строки из V*, длина которых кратна 4, записываются в шестнадцатеричном виде, а символ конкатенации ("||") опускается, то есть, строка будет представлена в виде
,
где, , i = 0, 1, ..., . Соответствие между двоичными строками длины 4 и шестнадцатеричными строками длины 1 задается естественным образом (таблица А.1). Преобразование, ставящее в соответствие двоичной строке длины шестнадцатеричную строку длины r, и соответствующее обратное преобразование для простоты записи опускаются.
Таблица А.1 - Соответствие между двоичными и шестнадцатеричными строками
|
|
|
0000 |
0 |
|
|
|
0001 |
1 |
|
|
|
0010 |
2 |
|
|
|
0011 |
3 |
|
|
|
0100 |
4 |
|
|
|
0101 |
5 |
|
|
|
0110 |
6 |
|
|
|
0111 |
7 |
|
|
|
1000 |
8 |
|
|
|
1001 |
9 |
|
|
|
1010 |
а |
|
|
|
1011 |
b |
|
|
|
1100 |
с |
|
|
|
1101 |
d |
|
|
|
1110 |
е |
|
|
|
1111 |
f |
А.1 Алгоритм блочного шифрования с длиной блока n = 128 бит
А.1.1 Преобразование S
S(ffeeddccbbaa99881122334455667700) |
= |
b66cd8887d38e8d77765aeea0c9a7efc, |
S(b66cd8887d38e8d77765aeea0c9a7efc) |
= |
559d8dd7bd06cbfe7e7b262523280d39, |
S(559d8dd7bd06cbfe7e7b262523280d39) |
= |
0c3322fed531e4630d80ef5c5a81c50b, |
S(0c3322fed531e4630d80ef5c5a81c50b) |
= |
23ae65633f842d29c5df529c13f5acda. |
A.1.2 Преобразование R
R(00000000000000000000000000000100) |
= |
94000000000000000000000000000001, |
R(94000000000000000000000000000001) |
= |
a5940000000000000000000000000000, |
R(a5940000000000000000000000000000) |
= |
64a59400000000000000000000000000, |
R(64a59400000000000000000000000000) |
= |
0d64a594000000000000000000000000.
|
A.1.3 Преобразование L
L(64a5940000000000000000000000000) |
= |
d456584dd0e3e84cc3166e4b7fa2890d, |
L(d456584dd0e3e84cc3166e4b7fa2890d) |
= |
79d26221b87b584cd42fbc4ffea5de9a, |
L(79d26221b87d584cd42fbc4ffea5de9a)) |
= |
0e93691a0cfc60408b7b68f66b513c13, |
L(0e93691a0cfc60408b7b68f66b513c13) |
= |
e6a8094fee0aa204fd97bcb0b44b8580. |
А.1.4 Алгоритм развертывания ключа
В настоящем контрольном примере ключ имеет значение:
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
= 8899aabbccddeeff0011223344556677,
= fedcba98765432100123456789abcdef.
= 6ea276726c487ab85d27bd10dd849401,
= e63bdcc9a09594475d369f2399d1f276,
= 0998ca37a7947aabb78f4a5ae81b748a,
= 3d0940999db75d6a9257071d5e6144a6,
=
= (c3d5fa01ebe36f7a9374427ad7ca8949, 8899aabbccddeeff0011223344556677).
= dc87ece4d890f4b3ba4eb92079cbeb02,
=
= (37777748e56453377d5e262d90903f87, c3d5fa01ebe36f7a9374427ad7ca8949).
= b2259a96b4d88e0be7690430a44f7f03,
=
= (f9eae5f29b2815e31f11ac5d9c29fb01, 37777748e56453377d5e262d90903f87).
= 7bcd1b0b73e32ba5b79cb140f2551504,
=
= (e980089683d00d4be37dd3434699b98f, f9eae5f29b2815e31f11ac5d9c29fb01).
= 156f6d791fab511deabb0c502fd18105,
=
= (b7bd70acea4460714f4ebe13835cf004, e980089683d00d4be37dd3434699b98f).
= a74af7efab73df160dd208608b9efe06,
=
= (1a46ea1cf6ccd236467287df93fdf974, b7bd70acea4460714f4ebe13835cf004).
= c9e8819dc73ba5ae50f5b570561a6a07,
=
= (3d4553d8e9cfec6815ebadc40a9ffd04, 1a46ea1cf6ccd236467287df93fdf974).
= f6593616e6055689adfba18027aa2a08,
= =
= (db31485315694343228d6aef8cc78c44, 3d4553d8e9cfec6815ebadc40a9ffd04).
Итерационные ключи , i = 1, 2, ..., 10 принимают следующие значения:
= 8899aabbccddeeff0011223344556677,
= fedcba98765432100123456789abcdef,
= db31485315694343228d6aef8cc78c44,
= 3d4553d8e9cfec6815ebadc40a9ffd04,
= 57646468c44a5e28d3e59246f429f1ac,
= bd079435165c6432b532e82834da581b,
= 51e640757e8745de705727265a0098b1,
= 5a7925017b9fdd3ed72a91a22286f984,
= bb44e25378c73123a5f32f73cdb6e517
= 72e9dd7416bcf45b755dbaa88e4a4043.
А.1.5 Алгоритм зашифрования
В настоящем контрольном примере зашифрование производится при значениях итерационных ключей из А.1.4. Пусть открытый текст, подлежащий зашифрованию, равен
а = 1122334455667700ffeeddccbbaa9988,
тогда
= 99bb99ff99bb99ffffffffffffffffff,
= e87de8b6e87de8b6b6b6b6b6b6b6b6b6,
= e297b686e355b0a1cf4a2f9249140830,
= 285e497a0862d596b36f4258a1c69072,
= 0187a3a429b567841ad50d29207cc34e,
= ec9bdba057d4f4d77c5d70619dcad206,
= 1357fd11de9257290c2a1473eb6bcde1,
= 28ae31e7d4c2354261027ef0b32897df,
= 07e223d56002c013d3f5e6f714b86d2d,
= cd8ef6cd97e0e092a8e4cca61b38bf65,
= 0d8e40e4a800d06b2f1b37ea379ead8e.
Результатом зашифрования является шифртекст
.
A.1.6 Алгоритм расшифрования
В настоящем контрольном примере расшифрование производится при значениях итерационных ключей из А.1.4. Пусть шифртекст, подлежащий расшифрованию, равен шифртексту, полученному в предыдущем пункте:
,
тогда
= 0d8e40e4a800d06b2f1b37ea379ead8e,
= 8a6b930a52211b45c5baa43ff8b91319,
= 76ca149eef27d1b10d17e3d5d68e5a72,
= 5d9b06d41b9d1d2d04df7755363e94a9,
= 79487192aa45709c115559d6e9280f6e,
= ae506924c8ce331bb918fc5bdfb195fa,
= bbffbfc8939eaaffafb8e22769e323aa,
= 3cc2f07cc07a8bec0f3ea0ed2ae33e4a,
= f36f01291d0b96d591e228b72d011c36,
= 1c4b0de950182b1ce696af5c0bfc5df,
= 99bb99ff99bb99ffffffffffffffffff.
Результатом расшифрования является открытый текст
.
А.2 Алгоритм блочного шифрования с длиной блока n = 64 бит
А.2.1 Преобразование t
t(fdb97531) = 2a196f34,
t(2a196f34) = ebd9f03a,
t(ebd9f03a) = b039bb3d,
t(b039bb3d) = 68695433.
A.2.2 Преобразование g
g[87654321](fedcba98) = fdcbc20c,
g[fdcbc20c](87654321) = 7e791a4b,
g[7e791a4b](fdcbc20c) = c76549ec,
g[c76549ec](7e791a4b) = 9791c849.
A.2.3 Алгоритм развертывания ключа
В настоящем контрольном примере ключ имеет значение:
.
Итерационные ключи , i = 1, 2, ..., 32 принимают следующие значения:
= ffeeddcc, |
= ffeeddcc, |
= ffeeddcc, |
= fcfdfeff, |
= bbaa9988, |
= bbaa9988, |
= bbaa9988, |
= f8f9fafb, |
= 77665544, |
= 77665544, |
= 77665544, |
=f4f5f6f7, |
= 33221100, |
= 33221100, |
= 33221100, |
= f0f1f2f3, |
= f0f1f2f3, |
= f0f1f2f3, |
= f0f1f2f3, |
= 33221100, |
= f4f5f6f7, |
= f4f5f6f7, |
= f4f5f6f7, |
= 77665544, |
= f8f9fafb, |
= f8f9fafb, |
= f8f9fafb, |
= bbaa9988, |
= fcfdfeff, |
= fcfdfeff, |
= fcfdfeff, |
= ffeeddcc. |
A.2.4 Алгоритм зашифрования
В настоящем контрольном примере зашифрование производится при значениях итерационных ключей из А.2.3. Пусть открытый текст, подлежащий зашифрованию, равен
,
тогда
= (fedcba98, 76543210),
= (76543210, 28da3b14),
= (28da3b14, b14337а5),
= (b14337а5, 633а7с68),
= (633а7с68, еа89с02с),
= (еа89с02с, 11fe726d),
= (11fe726d, ad0310a4),
= (ad0310a4, 37d97f25),
= (37d97f25, 46324615),
= (46324615, ce995f2a),
= (ce995f2a, 93c1f449),
= (93c1f449, 4811c7ad),
= (4811c7ad, c4b3edca),
= (c4b3edca, 44ca5ce1),
= (44ca5ce1, fef51b68),
= (fef51b68, 2098cd86),
= (2098cd86, 4f15b0bb),
= (4f15b0bb, e32805bc),
= (e32805bc, e7116722),
= (e7116722, 89cadf21),
= (89cadf21, bac8444d),
= (bac8444d, 11263a21),
= (11263a21,625434c3),
= (625434c3, 8025c0a5),
= (8025c0a5, b0d66514),
= (b0d66514, 47b1d5f4),
= (47b1d5f4, c78e6d50),
= (c78e6d50, 80251e99),
= (80251e99, 2b96eca6),
= (2b96eca6, 05ef4401),
= (05ef4401, 239a4577),
= (239a4577, c2d8ca3d).
Результатом зашифрования является шифртекст
.
A.2.5 Алгоритм расшифрования
В настоящем контрольном примере расшифрование производится при значениях итерационных ключей из А.2.3. Пусть шифртекст, подлежащий расшифрованию, равен шифртексту, полученному в предыдущем пункте:
,
тогда
= (4ее901е5, c2d8ca3d),
= (c2d8ca3d, 239а4577),
= (239а4577, 05ef4401),
= (05ef4401, 2b96eca6),
= (2b96eca6, 80251e99),
= (80251e99, c78e6d50),
= (c78e6d50, 47b1d5f4),
= (47b1d5f4, b0d66514),
= (b0d66514, 8025c0a5),
= (8025c0a5, 625434c3),
= (625434c3, 11263a21),
= (11263a21, bac8444d),
= (bac8444d, 89cadf21),
= (89cadf21, e7116722),
= (e7116722, e32805bc),
= (e32805bc, 4f15b0bb),
= (4f15b0bb, 2098cd86),
= (2098cd86, fef51b68),
= (fef51b68, 44ca5ce1),
= (44ca5ce1, c4b3edca),
= (c4b3edca, 4811c7ad),
= (4811c7ad, 93c1f449),
= (93c1f449, ce995f2a),
= (ce995f2a, 46324615),
= (46324615, 37d97f25),
= (37d97f25, ad0310a4),
= (ad0310a4, 11fe726d),
= (11fe726d, ea89c02c),
= (ea89c02c, 633a7c68),
= (633а7с68, b14337a5),
= (b14337a5, 28da3b14)
= (28da3b14, 76543210).
Результатом расшифрования является открытый текст
.
<< Назад |
||
Содержание Национальный стандарт РФ ГОСТ Р 34.12-2015 "Информационная технология. Криптографическая защита информации. Блочные шифры"... |
Если вы являетесь пользователем интернет-версии системы ГАРАНТ, вы можете открыть этот документ прямо сейчас или запросить по Горячей линии в системе.