и MACAlgorithm могут быть добавлены.
/p>
Эти параметры определены в языке представления в виде:
enum { server, client } ConnectionEnd;
enum { null, rc4, rc2, des, 3des, des40 } BulkCipherAlgorithm;
enum { stream, block } CipherType;
enum { true, false } IsExportable;
enum { null, md5, sha } MACAlgorithm;
enum { null(0), (255) } CompressionMethod;
/* Алгоритмы, специфицированные в CompressionMethod, BulkCipherAlgorithm и MACAlgorithm могут быть добавлены. */
struct {
|
ConnectionEnd
|
entity;
|
|
BulkCipherAlgorithm
|
bulk_cipher_algorithm;
|
|
CipherType
|
cipher_type;
|
|
uint8
|
key_size;
|
|
uint8
|
key_material_length;
|
|
IsExportable
|
is_exportable;
|
|
MACAlgorithm
|
mac_algorithm;
|
|
uint8
|
hash_size;
|
|
CompressionMethod
|
compression_algorithm;
|
|
Opaque
|
master_secret[48];
|
|
opaque
|
client_random[32];
|
|
opaque
|
server_random[32];} SecurityParameters;
|
Уровень записей будет использовать параметры безопасности для формирования следующих шести объектов:
Секретный код MAC записи клиента
>Секретный код MAC записи сервера
>Ключ записи клиента
Ключ записи сервера
IV записи клиента (только для блочного шифра)
IV записи сервера (только для блочного шифра)
Параметры записи клиента используются сервером при получении и обработке записей и наоборот. Алгоритм, использованный для генерирования этих объектов с помощью параметров безопасности, описан в разделе 6.3. Раз параметры безопасности определены и ключи сформированы, состояния соединения могут быть в любой момент реализованы путем перевода их в текущее состояние. Эти текущие состояния должны актуализоваться после обработки каждой записи. Каждое состояние соединения включает в себя следующие элементы:
Состояние сжатия
|
Текущее состояние алгоритма сжатия.
|
Состояние шифра
|
Текущее состояние алгоритма шифрования. Оно состоит из текущего ключа для данного соединения. Кроме того, для блочного шифра, работающего в режиме CBC (единственный режим, специфицированный в TLS), оно в исходный момент содержит IV для данного состояния соединения и должно актуализоваться, чтобы содержать текст последнего шифрованного или дешифрованного блока. Для поточных шифров, оно содержит всю необходимую информацию для продолжения шифрования или дешифрования данных.
|
Секретный код MAC
|
Секретный код MAC для данного соединения.
|
Номер по порядку
|
Каждое состояние соединения содержит номер по порядку, который поддерживается независимо для состояний чтения и записи. Номер по порядку должен быть установлен равным нулю, как только соединение переведено в активное состояние. Номера по порядку имеют тип uint64 и не может превышать 264-1. Номер по порядку инкрементируется после прихода каждой записи: в частности, первая запись, передаваемая через некоторое соединение, имеет порядковый номер 0.
|
<
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий