Реферат: Государственный стандарт российской федерации
ВВЕДЕНИЕ
Расширяющееся применение информационных технологий при создании, обработке, передаче и хранении документов требует в определенных случаях сохранения конфиденциальности их содержания, обеспечения полноты и достоверности.
Одним из эффективных направлений защиты информации является криптография (криптографическая защита), широко применяемая в различных сферах деятельности в государственных и. коммерческих структурах.
Криптографические методы защиты информации являются объектом серьезных научных исследований и стандартизации на национальных, региональных и международных уровнях.
Настоящий стандарт определяет процедуру вычисления хэш-функции для любой последовательности двоичных символов.
Функция хэширования заключается в сопоставлении произвольного набора данных в виде последовательности двоичных символов и его образа фиксированной небольшой длины, что 'позволяет использовать эту функцию в процедурах электронной цифровой подписи для сокращения времени подписывания и проверки подписи. Эффект сокращения времени достигается за счет вычисления подписи только под образом подписываемого набора данных.
^ ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология
КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ Функция хэширования
Information technology. Cryptographic Data Security. Hashing function
Дата введения 1995-01-01
^ 1 ОБЛАСТЬ ПРИМЕНЕНИЯ
Настоящий стандарт определяет алгоритм и процедуру вычисления хэш-функции для любой последовательности двоичных символов, которые применяются в криптографических методах обработки и защиты информации, в том числе для реализации процедур электронной цифровой подписи (ЭЦП) при передаче, обработке и хранении информации в автоматизированных, системах.
Определенная в настоящем стандарте функция хэширования используется при реализации систем электронной цифровой подписи на базе асимметричного криптографического алгоритма по ГОСТ Р 34.10.
^ 2 НОРМАТИВНЫЕ ССЫЛКИ
В настоящем стандарте использованы ссылки на следующие стандарты:
ГОСТ 28147—89 Системы обработки информации. Защита криптографическая. Алгоритмы криптографического преобразования.
ГОСТ Р 34.10—94 Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асимметричного криптографического алгоритма.
3 ОБОЗНАЧЕНИЯ
В настоящем стандарте используются следующие обозначения:
В*—множество всех конечных слов в алфавите В={0,1}. Чтение слов и нумерация знаков алфавита (символов) осуществляются справа налево (номер правого символа в слове равен единице, 'второго справа — двум и т. д.).
эрого справа — двум и т. , ]А|—длина слова А 6 В*.
V'k(2) — множество всех бинарных слов длины k. Aji В — конкатенация слов А, В6В*—слово длины |А[+|В|, в котором левые |А| символов образуют слово А, а правые |В| символов образуют слово В. Можно также использовать обозначение А||В=АВ.
A k—конкатенация k экземпляров слова А (А(: В*). ^N>i;—слово длины k, содержащее двоичную запись вычета N(mod-2") неотрицательного целого числа N.
А — неотрицательное целое число, имеющее двоичную запись А (А (-Б*).
ф — побитовое сложение слов одинаковой длины по модулю 2.
€> '—сложение по правилу А ®'В = k, (k=|A[=|B|).
М — последовательность- двоичных символов, подлежащая хэшированию 'сообщение в системах ЭЦП), М 6 В*.
h.—хэш-функция, отображающая последовательность Мб В* в слово h(M)?V25e(2).
Ек(А) —результат зашифрования слова А на ключе К с использованием алгоритма шифрования по ГОСТ 28147 в режиме простой замены (К СУ25б(2), А(-Ve4(2)).
Н — стартовый вектор хэширования.
e:=g — присвоение параметру е значения g.
4 ОБЩИЕ ПОЛОЖЕНИЯ
Под хэш-функцней h понимается зависящее от параметра (стартового вектора хэширования Н, являющегося слово'м из У25б(2)] отображение
i': B^----V^(2).
Для определения ^эш-функции необходимы:
— алгоритм (исчисления 'шаговой функции хэширования х, т. е. отображения;..'"'' ^
1- '';' »: V^(2) xV^(2)-"--\W2); •
— описание итеративной процедуры вычисления значения хэш-функции. h.
S ШАГОВАЯ ФУНКЦИЯ ХЭШИРОВАНИЯ
Алгоритм вычисления шаговой фикции хэширования включает
в себя три части, реализующие последовательно:
— генерацию ключей—слов длины 256 битов;
— шифрующее преобразование—зашифрование 64-битных яодслов слова Н на ключах Ki (i=l, 2, 3, 4) с использованием -алгоритма по ГОСТ 28147 в режиме простой замены;
— перемешивающее преобразование результата шифрования.
5.1 Генерация ключей, РассмотримХ=(Ьгвб, bass, .... bi)eV25e(2). Пусть Х==Х4||Хз||х2||х,=
^(вИ-и...!!'')^ . -^IMl.-.lISi, " • • __
x,=(bix64 ,..., b(i-ux64+i)eV(>t(2), i= 1,4;
'^(b/xie,..., b(j-i)xi6+i)<'Vie(2), 1=1,16;
где
Sk=(bkx8,..., b(k-i)x8±i)eVg(2), k==f,32.. . . Обозначают A(X)=(Xl®X2)l,|x4|]xз||x2.
-.Используют преобразование Р: У25с(2)-——-»-У25б(2)
•слова ^11. •• IKi в слово ^(32)'l. ..11^ »i),
тде (p(i+l+4(k-l))=8i+k, 1=0-3, k=l—8.
Для генерации ключей необходимо использовать следующие
исходные данные:
— слова Н, МеУа5б(2);
— параметры: слова Ci (i=2, 3, 4), имеющие значения
C^Ci^O25» и Cg^W'WM^O8!8)^^8)4^^. При вычислении ключей реализуется следующий алгоритм:
1 Присвоить значения
i:==l, U:=H, V:=M. .
2 Выполнить вычисление W==U^V, K,--=P(W).
3 Присвоить i:-=i+l.
4 Проверить условие i=5.
При положительном исходе перейти к шагу 7. При отрицатель*,-,
иом — перейти к шагу 5. • . .5 Выполнить вычисление _
U:=A(U)^Ci, V:==A(A(V)), W:==Ui®V, Ki=P(W).
6 Перейти к шагу 3.
7 Конец работы алгоритма.
5.2 Шифрующее преобразование
• На данном этапе осуществляется зашифрование 64-битных под-слов слова Н на ключах k| (i=l, 2, 3, 4).
Для шифрующего преобразования необходимо использовать следующие исходные данные:
Н=-МЬзМЬ,, h,(EV,;4(2), i==L4
и набор ключей Кь К2, Кз, К4. Реализуют алгоритм зашифрования и получают слова
s,--EK,(hi), где 1=1, 2, 3, 4. В результате данного этапа образуется последовательность.
S- с. "о 11с- 1|о
==S4iiS^|Sai|S). 5.3 Перемешивающее преобразование
bia данном этапе осуществляется перемешивание полученной последовательности с применением регистра сдвига.
Исходными данными являются:
. слова Н, M(?V25e(2) и слово S 6 Vase (2).
Пусть отображение
ф:У2^(2)----^Уйб(2) преобразует слово
"iJ-.. hi, ^ev,„(2). i=i~i6'
в слово
^Ф^зФ^зФ^Ф^зФ^М- • -ha.
Тогда з качестве значения шаговой функции хэширования принимается слово _ _. '
х(М, ^^'"(Н^МФ^З))), где i|)' — i-я степень преобразования ij).
6 ПРОЦЕДУРА ВЫЧИСЛЕНИЯ ХЭШ-ФУНКЦИИ
Исходными данными для процедуры вычисления значения функции h является подлежащая хэшированию последовательность Мб В*. Параметром является стартовый вектор хэширования Н— произвольное фиксированное слово из Vzse (2).
Процедура вычисления функции h на каждой итерации использует следующие величины:
М(-В*—часть последовательности М, не прошедшая процедуры хэширования на предыдущих итерациях;
НбУ2бб(2) —текущее значение хэш-функции;
26 Уг5б(2) —текущее значение контрольной суммы;
L6 Уг5б(2) — текущее значение дли'ны обработанной на предыдущих итерациях части последовательности М.
Алгоритм вычисления функции h включает в себя этапы:
Этап 1 Присвоить начальные значения текущих величин ;
1.1 М:=М
1.2 Н:=Н
1.3 Е:==0'-1"" • 1.4 L:=026"
1.5 Переход к этапу 2 Этап 2
2.1 Проверить условие |М|>256.
При положительном исходе перейти к этапу 3.
В противном случае выполнить последовательность вычислений:
2.2 L:=256
23 М^^О256-1"' ||М
24 Е:==ЕФ'М'
2.5 Н:=х(М', Н)
2.6 H:=x(L, H) ;
2.7 Н:=1^, Н) -
2.8 Конец работы алгоритма '.
Этап 3
3.1 Вычислить подслово Ms6V256(2) слова М (М==Мр||М,)-Далее выполнить последовательность вычислений:
3.2 Н:=х(М„ Н)
3.3 L:=2ee
3.4 E^E'e'M,
3.5 M:=Mp
3.6 Перейти к этапу 2.
Значение величины Н, полученное на шаге 2.7, является значением функции хэширования h (М).
Проверочные примеры для вышеизложенной процедуры вычисления хэш-функции приведены в приложении А.
^ ПРИЛОЖЕНИЕ А
(справочное)
ПРОВЕРОЧНЫЕ ПРИМЕРЫ
llrVJUI-la ^ - _^
Заполнение узлов замены п\, яа,..., Лв и значение стартового вектора хэширования Н, указанные в данном приложении, рекомендуется использовать только в проверочных примерах для настоящего стандарта.
A.I Использование алгоритма ГОСТ 28147
В качестве шифрующего преобразования в приводимых ниже примерах используется алгоритм ГОСТ 28147 в режиме простой замены. ''
При этом заполнение узлов замены п\, лг,..., Пв блока подстановки я"
<ледующее:
f 8 7 6 5 4 3 '2 • 1
i0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
8
1
Р D 0 5 7 . • A 4 9 2 3 E 6 В 8 С
7
D В 4 1 3 F 5 9 0 А E 7 6 8 2 С
b
4 В А 0 7 2
D
3 6 8 5 9 С .Р F.
0
6
С 7 1
0
F П 8 4 A 9 E 0 3 В 2
'~R~ в ст
7 D A 1 0 8 9 F E 4 6 С В 2 5 3
ооке с
5 8 ' 1 D А 3 4 2 E Р С 7 . 6 0 9 В
номером
E В 4 'С 6 U F A 2 3 ' в I 0 7 S ' 9
>, i-OX"
4 A 9 2 D 8 0 E 6 В 1 С 7 F 5 3
при
r 4
'ii I с с г. ^
В столбце с номером ], )'=1,8, в, строке с номером i, i— 0,15, приведено значение Л)(0 в шестнадцатеричной системе счисления.
А.2 Представление векторов
Последовательности двоичных символов будем записывать как строки шестнадцатиричных цифр, в которых каждая цифра соответствует четырем знакам
<е двоичного представления.
А.З П р и м е р ы вычисления значения хэш-ф^ункции
В качестве стартового вектора хэширования принимают, например, нулевой вектор
н=ооооаооо оооооооо оооаоооо ооюооооо
00000000 ОООООООО ОООООООО ООйООООО А.3.1 Пусть необходимо выполнить хэширование сообщения
М- 73657479 622103233 3D687467 6Е656С20 ix 2С656761 7373696D 20736920 73696854
• Выполняют присвоение начальных значений:
текста , М-73657479 ^">03233 3D687467 6Е656С20
1СеЭ6761 7373656D 20736920 73696854 »
дэш-функции
н=оооаоооо оооооооо
00000000 ОООООООО ОООООООО ООЙООООО
OOOOQOOO ОООООООО ., -суммы блоков текста
Д^ОООООООЮ ОООООООО ОООООООО ЮООООООО
оооооооо оооооооо
00000000 ОООООООО
длины текста L-= ОООООООО ОООООООО
оооооооо оооооооо
ОООООООО 001000000-
00000000 'ОООООООО ОООООООО 00000000-Так как длина сообщения, подлежащего хэшированию, равна 256 битам
ОООООООО 00000000 ОООООООО 00000100
(32 байтам),
L=001000000 OOOQOOOO 00000000 ОООООООО
М'=М= 73657479'62203233 3D687467 6Е656С20
2С696761 7373656D 30736920 73696854, то
нет необходимости дописывать текущий блок нулями,
2=М'= 73657479 62203233 3D687467 6Е656С20 2С656761 7373656D 20736920 73696854
Переходят к вычислению значения шаговой функции хэширования х (М, Н). Вырабатывают ключи
" '»nnr-\Ct/^rhrt ;;[
Kl-
733D2C20 626Е7373
65686573 20657369'"
747467C9 326C6568
79676120 33206D54
к»»
110C733D 1D00626E
OD 166568 161A2065
130E7474 090D326C
061417967 •4D393320
к.-
80B111F3 620C1DFF
730DF216 3ABAE91A
850013F1 3FA109F2
C7E1F941 FB13B239
К4-
АОЕ2804Е EE1D620C
FF1B73F2 ACOCC5BA
ЕСЕ27АЙО A804C05E
E7B8C7E1 A18BOAEC
Осуществляют зашифрование W-битных подслов блока Н с помощью алгоритма по ГОСТ 28147.
Блок hi =00000000 ОООООООО зашифровывают на ключе Ki и получают Si—
-42АВВССЕ 32BGOB1B.
Блок ha=00000000 OOOOOIQOO зашифровывают на ключе Кд и получают за™'
=5203ЕВС8 5D9BCFFD.
Блок ha =00000000 ОООООООО зашифровывают на ключе К» и получают s»—
-8D345899 OOFFOE28.
Блок h4= ОООООООО 000100000 зашифровывают на ключе К« и получают 84—
=Е7860419 OD2A962D. Получают
S- E7860419 OD2A562D 8D345899 &3FFOE28 5203ЕВС8 5D9BCFFD 42АВВССЕ 32ВСОВ1В
с
Выполняют перемешивающее преобразование с применением регистра сдвига и получают •
В-х(М,Н)= CF9A8C65 Э35967А4 68AU3B8C 42DE7624' D99C4124 883DA687 S61C7J3E3 3315С034
;Т Р 34
1.11-М
Полага
ют H=S, вы1
числяют х (L
-, Н):
К,-
CP68D956 50428833
9АА09С1С 59DE3D15
8C3B417D 6776А6С1
658С24ЕЗ А4248734
К,»
8FCF68D9 ВВ504288
в09АА'С9С 2859DE3D
ЗС8СЗВ41 666676А'5
С7658С24 B3Ai42487
Ка°
4E70CF97 CABB50BD
3C8.GS5AO E3D7A6DE
853С8СС4 01936788
57389A8C 6CB35B24
К,"
584E70CF EDCABB50
С53С8065 78E3D7A6
48853С8С EED 19867
1657389A 7F5CB35B
S=
66B70F5E Е5ЕС8А37
F163P461 3FD42279
468А9528 3CD1602D
61D60593 DD763E86
S=
2В6ЕС233 DD3848D1
С7ВС89Е4 С6АС997А
2АВС2692 24F74E2B
5FEA7285 09A3AEF7
Вновь
полагают Н==
Е и вычисляют х (2, Н)':
К,-
5817F104 А531В57А
OBD45D84 9C8FDFCA
B6522F27 BB1EFCC6
4AF5BOOB D7A517A3
Кг-
Е82759ЕО D2C73DA8
C278D950 19А6САС9
15СС523С 3E8440F5
FC72EBB6 CODDB65A
Кз=
77483AD9 FBC3DAAO
F7C29CAA 7CB555FO
EB06D1D7 D4968080
641BCAD3 OA9E56BC
к<°
А 1157965 768 4 AD CB
2D9FBC9C FA4ACA06
С88С7СС2 53EFF7D7
46FB3DD2 C07487081
S"
2AEBFA76 С31Е7435
A85FB57D 4930FD05
6F164DE9 1F18A4942
2951A581 550A582D
5=
FAFF37A6 E09525F3
15А81669 9F811983
1CFF3EF8 2ЕВ81975
B68CA247 D366C4B1
Таким образом, результат хэширования есть
Н= FAFF37A6 15А81669 1CFF3EF8 B68CA247 E0.9525F3 9F811983 2ЕВ81975 D366C4B1
А.3.2 Пусть необходимо выполнить хэширование сообщения ,
М= 7365 7479622Й 3035203D 2С687467 6Е656С20 73616820 65676173 73656D20 6С616Е69 6769726F 20656874 2065736Р 707107553
Tax как длина сообщения, подлежащего хэшированию, равяа 400 битам (50 байтам), то разбивают сообщение на два блока и второй (старший) блок дописывают нулями В процессе вычислений получают:
Ш/ Н=
М= Кг
t
Г 1
000(
ото
ЗДОЮО П0001 00000 ОООС
73616820 6769726Р
73736720 656С2070
30 10(
'00 000000 ЖО ООНЗОС
65676173 20656874
61656965 67616570
00 100
ortcoonoo
00000000
73656D20 2065736F
6S5D7273 616E6875
6С616Е69
710707553
20206F6F 73697453
K,-
14477373 4С50656С
ОСОС6166 lFi01686D 04156761 061D616E
4РООЙ020 1D277369
Кэ-
CBFF114B8 35094CAF
6D04F30C 96051FFE 72F9FB15 7CF006E2
DFFFBO'00 AB1AE227
К4»
ЕВАССВОО ВА1С350.9
F7006DFB E5E 16905 FD118DF9 F)61B830'F
BOBODFFF F8C554E5
s=
FF41797C EDDC2210
EEAADAC2 43C9B1DF 1EE1ADF9 FA67E757
2E114681C DAFE3AD9
. s-
FOCEEA4E A93BEFBD
368B5A60 C63D96C1 2634FOAD CBBB69CE
E5B51CD2 ED2D5D9A
ШАГ
2
H~
FOCEEA4E A93BEFBD
368B5A60 C63D96C1 2634F'OAD CBBB69CE
E5B51CD2 ED2D5D9A
М'=
00000000 001000000 00000000 .00007365 714796220 3035203D 20687467 6Е656С20
Ki=
FOC6DDEB 36Е51683
CE3D42D3 EA968D1D 8BB50148 5A6FD03I
4EC19DA9 80B790BA
Ка-
16А4С6А9 FB68E526
F9DF3D3B E4FC96EF 2CDBB534 FE161C83
5339C1BD 6F7DD2C8
Кз=
C49D846D 9DCB0644
1780482C 9086887F D1E641E5 A02109AF
C48C9186 9D52C7CF
К4=
BDBOC9FO 1CAD9536
7Э6Е9131 E1F290EA F4B4B674 99F31E29
50E4CBB1 70C52AFA
S-
62А07ЕА5 6881ЕВ6В
EF3C3309 2CE1B076 F5C7959F 63FCA1F1
1173D48CC D33C31B8
s=
96ВЕАОВЕ В82в7СВ6
88D6AA02 FE3C9D45 2CBC135B 3E339EFE,
436CE821 P6576CA9
ШАГ
3
Н-
95ВЕАОВЕ В8287СВ6
8&D5AA02 FE3C9D45 2CBC135B 3E339EFE
436CE821 F657CCA9
L-
010000000 00000000 00000000 00000000 00000000 00000000 00000000 00000190
К,-
95FEB83E 88432CF6
BE3C2833 A09D7C9E D56CBC57 AAE8136D
BE45B6FE 02215B39 •'
К.-
869CFEB8 DA88432C
1BBE3C28 E2A09D7C EBD56CBC 7FABE813
48ВБ45В6 F292215B
К»-
В9799ЭС1 6FDA88BC
141B413C 1EE2A062 D0142A6C РА'80ААГ6
SOCB74L45 15F2FDB1
К«-
94В97995 346FDA88
7D141B41 С21ЕЕ2АО 46D0142A BDFA81AA
040CB741 DC1562FD
S-
D42336EO 9FDDFF20
2АОА6998 6С65478А 48С8Е863 94FD9D6D
3D08A1B9 F776A7AD
еще рефераты
Еще работы по разное
Реферат по разное
Звучит песня на слова Окуджавы «До свидания, мальчики»
18 Сентября 2013
Реферат по разное
Aлександр Владимирович, с чего начались ваши разногласия с Борисом Ельциным
18 Сентября 2013
Реферат по разное
Положение о ревизионной комиссии открытого акционерного общества " "
18 Сентября 2013
Реферат по разное
Литературное образование сегодня переживает кризис, связанный с девальвацией в обществе духовных ценностей
18 Сентября 2013