В случае возникновения ошибки в процессе работы протокола TLS 1.2 сторона взаимодействия посылает оповещение об ошибке.
Настоящие рекомендации определяют оповещения об ошибке в соответствии с таблицами 4-6.
Таблица 4 - Оповещения об ошибке, которые могут возникнуть в процессе работы протокола Handshake
Наименование оповещения | Условия и порядок использования оповещения |
handshake_failure | Отправитель не смог согласовать необходимые параметры безопасности. Данное оповещение всегда должно иметь уровень fatal |
illegal_parameter | Поле сообщения протокола Handshake некорректно либо не согласуется с другими полями. Данное оповещение всегда должно иметь уровень fatal |
unknown_сa | Сертификат УЦ не был найден или не совпал ни с одним из известных сертификатов доверенных УЦ. Данное оповещение всегда должно иметь уровень fatal |
access_denied | Получен корректный сертификат, однако при применении политики контроля доступа отправитель решил не продолжать согласование соединения. Данное оповещение всегда должно иметь уровень fatal |
decrypt_error | При выполнении криптографической операции (например, при проверке подписи, проверке сообщения завершения Finished) во время работы протокола Handshake возникла ошибка. Данное оповещение всегда должно иметь уровень fatal |
protocol_version | Версия протокола, указанная клиентом, распознана корректно, однако не поддерживается сервером. Данное оповещение всегда должно иметь уровень fatal |
insufficient_security | Посылается вместо оповещения handshake_failure в том случае, если сервер требует криптонаборы, обеспечивающие более высокий уровень стойкости, чем те, которые поддерживает клиент. Данное оповещение всегда должно иметь уровень fatal |
unsupported_extension | Данное оповещение посылается клиентом и сигнализирует о том, что в сообщении ServerHello содержалось расширение, которое не послано клиентом в сообщении ClientHello. Данное оповещение всегда должно иметь уровень fatal |
bad_certificate | Сертификат поврежден, содержит некорректную подпись и т.п. Рекомендуется присваивать данному оповещению уровень fatal |
unsupported_certificate | Получен сертификат неподдерживаемого типа. Рекомендуется присваивать данному оповещению уровень fatal |
certificate_revoked | Сертификат отозван подписывающей стороной. Рекомендуется присваивать данному оповещению уровень fatal |
certificate_expired | Срок действия сертификата истек или сертификат не действует в настоящее время. Рекомендуется присваивать данному оповещению уровень fatal |
certificate_unknown | При обработке сертификата возникла некоторая ошибка, не соответствующая никаким из случаев, перечисленных выше. Рекомендуется присваивать данному оповещению уровень fatal |
user_canceled | Работа протокола Handshake остановлена по некоторым причинам, не связанным с ошибками в работе протокола. Данное оповещение должно сопровождаться оповещением close_notify. Рекомендуется присваивать данному оповещению уровень warning |
no_renegotiation | Данное оповещение посылается клиентом в ответ на сообщение HelloRequest или сервером в ответ на сообщение ClientHello при взаимодействии в рамках ранее установленного соединения с целью оповещения получателя о том, что отправитель данного оповещения не поддерживает пересогласование параметров сессии. При получении данного оповещения вторая сторона должна принять решение о продолжении взаимодействия. Данное оповещение всегда должно иметь уровень warning |
Если оповещения bad_certificate, unsupported_certificate, certificate_revoked, certifcate_expired, certificate_unknown были посланы с уровнем warning, непосредственно после их получения принимающая сторона должна закрыть соединение либо с оповещением close_notify, либо с оповещением об ошибке, имеющим уровень fatal.
Таблица 5 - Оповещения об ошибке, которые могут возникнуть в процессе работы протокола Record
Наименование оповещения | Условия и порядок использования оповещения |
bad_record_mac | Данное оповещение посылается в том случае, если при обработке полученной записи возникла ошибка при проверке значения имитовставки. |
record_overflow | Данное оповещение посылается в том случае, если длина полученной записи превышает максимально допустимое значение. |
Таблица 6 - Общие оповещения об ошибке, которые могут возникать в процессе работы протокола TLS 1.2 в соответствии с криптонаборами, описанными в настоящих рекомендациях
Наименование оповещения | Условия и порядок использования оповещения |
unexpected_message | Получено некорректное сообщение. |
decode_error | Сообщение не может быть обработано, так как содержит одно или несколько некорректных полей. |
internal_error | Произошла внутренняя ошибка, не связанная с работой протокола (например, ошибка выделения памяти), которая делает невозможным продолжение дальнейшей работы протокола. |