Протоколы Internet


Протокол TLS версия 0 - часть 12


Должно использоваться сжатие без потерь, а длина содержимого не может стать больше чем 1024 байт. Если функция восстановления встречает фрагмент TLSCompressed.fragment, длина которого окажется больше 214 байт, она должна выдать уведомление о фатальной ошибке преобразования.

Struct

{ ContentType type;

/* то же самое, что и TLSPlaintext.type */

ProtocolVersion version;

/* то же самое, что и TLSPlaintext.version */

uint16 length;

opaque fragment[TLSCompressed.length];

} TLSCompressed;

length

Длина (в байтах) следующего TLSCompressed.fragment. Длина не должна превосходить 214 + 1024.

Fragment

Сжатая форма TLSPlaintext.fragment.

Операция CompressionMethod.null является идентификационной; ни одно из полей не изменено.

Функции декомпрессии (восстановления) отвечают за то, что внутренний буфер не будет переполнен при обработке сообщения.

6.2.3. Защита поля данных записи

Функции шифрования и MAC преобразуют структуру TLSCompressed в TLSCiphertext. Функции дешифрования выполняют обратную процедуру. MAC записи включает также номер по порядку, чтобы было можно детектировать лишние или повторные сообщения.

Struct

{ ContentType type;

ProtocolVersion version;

uint16 length;

select (CipherSpec.cipher_type) {

case stream: GenericStreamCipher;

case block: GenericBlockCipher; } fragment;

} TLSCiphertext;

type

Поле тип идентично TLSCompressed.type.

Version

Поле версия идентично TLSCompressed.version.

length

Длина (в байтах) последующего TLSCiphertext.fragment. Длина не может превосходить 214 + 2048.

Fragment

Зашифрованная форма TLSCompressed.fragment, с MAC.

6.2.3.1. Нуль или стандартный поточный шифр

Поточные шифры (включая BulkCipherAlgorithm.null - смотри приложение A.6) преобразуют структуры TLSCompressed.fragment в (или из) структуры TLSCiphertext.fragment.

stream-ciphered struct { opaque content[TLSCompressed.length];

opaque MAC[CipherSpec.hash_size];} GenericStreamCipher;




Начало  Назад  Вперед



Книжный магазин