Читать «Безопасность информационных систем. Учебное пособие» онлайн - страница 91

Дина Алексеевна Погонышева

В российском стандарте цифровой подписи используются следующие параметры: p – большое простое число длиной от 509 до 512 бит либо от 1020 до 1024 бит; q – простой сомножитель числа (p − 1), имеющий длину 254…256 бит; α – любое целое число, меньшее (p − 1), причем такое, что αqmod p = 1; δ – некоторое целое число, меньшее q;

β =αδ mod p.

Кроме того, этот алгоритм использует однонаправленную хэш-функцию H(·). Соответствующий российский стандарт ГОСТ Р 34.11–94 определяет хэш-функцию, основанную на использовании стандартного симметричного алгоритма ГОСТ 28147-89.

Первые три параметра p, q, α являются открытыми и могут быть общими для всех пользователей компьютерной сети. Число δ является секретным ключом, а число β – открытым ключом.

Чтобы подписать некоторое сообщение М, а затем проверить подпись, выполняются следующие шаги.

1. Абонент А генерирует случайное число r, причем r < q.

2. Абонент А вычисляет значения:

k = (αr mod p) mod q;

s = (δk + r (H (M))) mod q.

Если (H (M)) mod q = 0, то значение (H (M)) mod q принимают равным единице. Если k = 0, то выбирают другое значение r, и алгоритм начинают снова.

Цифровая подпись представляет собой два числа:

r mod 2256 и s mod 2256.

3. Абонент А отправляет эти числа, а также открытый текст M абоненту Б.

4. Абонент Б проверяет полученную подпись, вычисляя:

v = (H (M)) q − 2 mod q;

z1 = (s × v) mod q;

z2 = ((qk) v) mod q;

u =((αz1 × βz2) mod p) mod q.

Если u = r, то подпись считается подлинной. Различие между этим алгоритмом и алгоритмом DSA заключается в том, что в DSA

s = (r − 1(δ × k + (H (M)))) mod q,

что приводит к другому уравнению проверки подлинности цифровой подписи.

В американском стандарте цифровой подписи параметр q имеет длину 160 бит, в отечественном – 256 бит, что обеспечивает более безопасную подпись.

В 2001 г. в России принят еще один стандарт цифровой подписи – ГОСТ Р 34.10-2001, который базируется на математическом аппарате эллиптических кривых, использует хэш-функцию длиной 256 бит и обладает более высокой криптостойкостью, чем предыдущий стандартный алгоритм цифровой подписи ГОСТ Р 34.11–94.

В США с 2001 г. начал действовать новый стандарт на симметричные блочные криптосистемы – AES (Advanced Encryption Standard), заменивший DES. Алгоритм допускает размеры ключей в 128, 192 и 256 бит.

Управление криптографическими ключами

Любая криптографическая система основана на использовании криптографических ключей. Под ключевой информацией понимают совокупность всех действующих в автоматизированной системе обработки информации ключей. Если не обеспечено достаточно надежное управление ключевой информацией, то, завладев ею, злоумышленник получает неограниченный доступ ко всей информации.

Управление ключами – информационный процесс, сопровождающий жизненный цикл ключей в криптосистеме и включающий реализацию следующих основных функций:

• генерация ключей;

• хранение ключей;

• распределение ключей;

• уничтожение ключей.

Безопасность любого криптографического алгоритма определяется используемым криптографическим ключом. Надежные криптографические ключи должны иметь достаточную длину и случайные значения битов.