Интернет магазин китайских планшетных компьютеров



Компьютеры - SPKM - Алгоритмы

06 июня 2011


Оглавление:
1. SPKM
2. Алгоритмы
3. GSS-API



В протоколе SPKM используются следующие алгоритмы:

  • Целостности данных — I-ALG
  • Конфиденциальности — C-ALG
  • Образования ключа — K-ALG
  • Получения подключей — O-ALG

Алгоритмы целостности данных

Используются, чтобы убедится, что данные не были изменены третьей стороной.

В качестве примеров могут использоваться следующие алгоритмы:

md5WithRSAEncryption OBJECT IDENTIFIER ::= { iso member-body US rsadsi pkcs pkcs-1 4}

В данном алгоритме используется цифровая RSA подпись, построенная на md5 хэше. Алгоритм является обязательным для SPKM.

DES-MAC OBJECT IDENTIFIER ::= { iso identified-organization oiw secsig algorithm 10}

Здесь целостность обеспечивается посредством использования DES MAC.

sum64-DES-CBC OBJECT IDENTIFIER ::= { iso identified-organization dod internet security integrity sum64-DES-CBC}

Данный алгоритм обеспечивает целостноcть данных посредством шифрования с помощью DES CBC.

Алгоритмы конфиденциальности

Симметричные алгоритмы шифрования для дополнительной защиты данных. Пример:

DES-CBC OBJECT IDENTIFIER ::= { iso identified-organization oiw secsig algorithm 7 }

Алгоритмы образования ключа

Используются для создания симметричного ключа используемого узлами во время соединения. Далее из этого ключа создаются подключи для алгоритмов целостности и конфиденциальности. Создание ключа проходит во время обмена аутентификациями по стандарту X.509, так что полученный симметричный ключ является аутентифицированным. Примеры:

RSAEncryption OBJECT IDENTIFIER ::= { iso member-body US rsadsi pkcs pkcs-1 1}

Ключ соединения создается его инициатором с помощью открытого RSA ключа цели и посылается ей. Цели, в свою очередь, не обязательно отвечать, чтобы ключ был создан.

dhKeyAgreement OBJECT IDENTIFIER ::= {iso member-body US rsadsi pkcspkcs-3 1}

В этом примере ключ создается обоими узлами с использованием алгоритма Диффи-Хеллмана. Таким образом, цель должна ответить инициатору соединения.

Алгоритмы получения подключей

Создав ключ среды, соединенные узлы должны получить ряд подключей для алгоритмов конфиденциальности и целостности. Для этого используются односторонние функции. Битовая длина ключа соединения должна быть больше чем наибольшая битовая длина подключей и, в то же время, она ограничена сверху входными параметрами алгоритма формирования.

Например, при использовании DES и 3-DES в алгоритмах конфиденциальности и DES-MAC в алгоритме целостности, ключ соединения должен составлять, по крайней мере, 112 битов. А при использовании 512 битного RSA, возможная длина составляет 424 бит. С другой стороны, при использовании алгоритма Диффи-Хеллмана при создании ключа среды его длина будет на 8 битов меньше чем модуль p, что составляет примерно 1000 бит.

Алгоритм получения k-битного подключа определяется следующим образом: rightmost_k_bits), где
— «x» — ASCII символ «C» при создании подключа для алгоритма конфиденциальности, ASCII символ «I» при создании подключа для алгоритма целостности;
— «n» — номер алгоритма в соответствующем разрешенном списке, и так далее);
— «s» — «этап» обработки — всегда равняется ASCII символом «0», пока «k» не превысит размера выхода односторонней функции. В этом случае односторонняя функция считается несколько раз с инкрементированием значения «этапа», до тех пор, пока не будет образовано «k» битов;
— "||" — операция объединения;
— «OWF» — соответствующая односторонняя функция.

SHA OBJECT IDENTIFIER ::= {iso identified-organization oiw secsig algorithm 18}

Считается, что существующие хэш-функции могут не соответствовать всем свойствам односторонних функций. Поэтому в процессе установления соединения и применяются односторонние функции.

Согласование

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

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



Просмотров: 2812


<<< SPICE (протокол)
SPX >>>