Share to: share facebook share twitter share wa share telegram print page

TLS

TLS (англ. transport layer security — Протокол защиты транспортного уровня[1]), как и его предшественник SSL (англ. secure sockets layer — слой защищённых сокетов), — криптографические протоколы, обеспечивающие защищённую передачу данных между узлами в сети Интернет[2]. TLS и SSL используют асимметричное шифрование для аутентификации, симметричное шифрование для конфиденциальности и коды аутентичности сообщений для сохранения целостности сообщений.

Данный протокол широко используется в приложениях, работающих с сетью Интернет, таких как веб-браузеры, работа с электронной почтой, обмен мгновенными сообщениями и IP-телефония (VoIP).

TLS-протокол основан на спецификации протокола SSL версии 3.0, разработанной компанией Netscape Communications[3]. Сейчас развитием стандарта TLS занимается IETF. Последнее обновление протокола было в RFC 5246 (август 2008) и RFC 6176 (март 2011).

Описание

TLS даёт возможность клиент-серверным приложениям осуществлять связь в сети таким образом, что при возможном прослушивании пакетов, нельзя осуществить несанкционированный доступ.

Так как большинство протоколов связи может быть использовано как с TLS (или SSL), так и без них, при установке соединения необходимо явно указать серверу, хочет ли клиент устанавливать TLS. Это может быть достигнуто либо с помощью использования унифицированного номера порта, по которому соединение всегда устанавливается с использованием TLS (как, например, порт 443 для HTTPS), либо с использованием произвольного порта и специальной команды серверу со стороны клиента на переключение соединения на TLS с использованием специальных механизмов протокола (как, например, STARTTLS для протоколов электронной почты). Как только клиент и сервер договорились об использовании TLS, им необходимо установить защищённое соединение. Это делается с помощью процедуры подтверждения связи[4][5]. Во время этого процесса клиент и сервер принимают соглашение относительно различных параметров, необходимых для установки безопасного соединения.

Основные шаги процедуры создания защищённого сеанса связи:

  • клиент подключается к серверу, поддерживающему TLS, и запрашивает защищённое соединение;
  • клиент предоставляет список поддерживаемых алгоритмов шифрования и хеш-функций;
  • сервер выбирает из списка, предоставленного клиентом, наиболее надёжные алгоритмы среди тех, которые поддерживаются сервером, и сообщает о своём выборе клиенту;
  • сервер отправляет клиенту цифровой сертификат для собственной аутентификации. Обычно цифровой сертификат содержит имя сервера, имя удостоверяющего центра сертификации и открытый ключ сервера;
  • клиент, до начала передачи данных, проверяет валидность (аутентичность) полученного серверного сертификата относительно имеющихся у клиента корневых сертификатов удостоверяющих центров (центров сертификации). Клиент также может проверить, не отозван ли серверный сертификат, связавшись с сервисом доверенного удостоверяющего центра;
  • для шифрования сессии используется сеансовый ключ. Получение общего секретного сеансового ключа клиентом и сервером проводится по протоколу Диффи-Хеллмана. Существует исторический метод передачи сгенерированного клиентом секрета на сервер при помощи шифрования асимметричной криптосистемой RSA (используется ключ из сертификата сервера). Данный метод не рекомендован, но иногда продолжает встречаться на практике.

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

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

История и версии

Протоколы SSL и TLS
Протокол Дата публикации Состояние
SSL 1.0 не публиковался не публиковался
SSL 2.0 1995 Признан устаревшим в 2011 году (RFC 6176)
SSL 3.0 1996 Признан устаревшим в 2015 году (RFC 7568)
TLS 1.0 1999 Признан устаревшим в 2020 году[6]
TLS 1.1 2006 Признан устаревшим в 2020 году[6]
TLS 1.2 2008
TLS 1.3 2018

Первые попытки реализовать зашифрованные сетевые сокеты предпринимались в 1993 году[7]. Оригинальные протоколы SSL были разработаны Netscape: версия 1.0 в силу ряда недостатков не была опубликована, версия 2.0 представлена в 1995 году и замещена версией 3.0 в 1996 году[8]. Версия SSL 3.0 представляла собой полную переработку протокола, выполненную Paul Kocher и сотрудниками Netscape Phil Karlton и Alan Freier и реализованную при участии компании Consensus Development. Последующие версии SSL и TLS основаны на SSL 3.0. Черновик стандарта 1996 года был опубликован IETF как RFC 6101. Использование SSL 2.0 было прекращено в 2011 году с выпуском документа RFC 6176. В 2014 году против блочных шифров SSL 3.0 была предложена атака POODLE, а единственный поддерживаемый потоковый шифр RC4 имел иные проблемы с безопасностью в том виде, как он использовался[9]. В июне 2015 года SSL 3.0 был признан устаревшим (RFC 7568).

TLS 1.0 появился в 1999 году в виде обновления для SSL 3.0 и описан в RFC 2246. В 2018 году PCI DSS призывала корпорации отказаться от TLS 1.0[10] и в октябре 2018 крупнейшие игроки на рынке браузеров и ОС (Apple, Google, Microsoft, Mozilla) объявили, что прекратят поддержку TLS версий 1.0 и 1.1 в марте 2020 года[6].

TLS 1.1 был описан в RFC 4346 в апреле 2006 года[11]. Он добавил к TLS 1.0 ряд защит от атак на CBC режимы шифрования и на ошибки дополнения данных до размера блока, начал использовать явный вектор инициализации и регистрацию числовых кодов для параметров в IANA[12].

TLS 1.2 появился в августе 2008 года как обновление версии 1.1, описан в RFC 5246. Были запрещены устаревшие криптографические хэш-функции MD5 и SHA-1 (заменены на SHA-256), улучшен механизм согласования сторонами списков поддерживаемых методов, введены методы AEAD (GCM и CCM для AES)[13].

В марте 2011 года документ RFC 6176 запретил реализацию обратной совместимости со старыми версиями SSL во всех протоколах TLS.

Новейшим обновлением стал TLS 1.3, описанный в августе 2018 года в RFC 8446. В этой версии были разделены процессы согласования ключей, аутентификации и наборы шифрования; запрещены слабые и редкие эллиптические кривые, хэши MD5 и SHA-224; введена обязательность цифровой подписи; внедрена HKDF[англ.] и полуэфемерная система DH. Вместо механизма возобновления применён PSK и система мандатов, ускорены процессы соединения (1-RTT и 0-RTT), постулирована обязательность perfect forward secrecy для сессионных ключей через протоколы генерации DH и ECDH. Были запрещены такие устаревшие и небезопасные опции как сжатие данных, пересогласование, шифры без аутентификации сообщений (то есть не AEAD режимы), несекретные методы получения сессионных ключей (RSA, статический DH, группы DHE), вспомогательные сообщения (Change Cipher Spec, HELLO, поле длины AD). Прекращена обратная совместимость с SSL или RC4. Появились поточный шифр ChaCha20 с MAC кодом Poly1305, подписи Ed25519 и Ed448, протоколы обмена ключами x25519 и x448.

Поддержка TLS 1.3 появилась в Mozilla Network Security Services (NSS) в феврале 2017 года (включено в Firefox 60)[14][15]. Google Chrome некоторое время поддерживал TLS 1.3 в 2017, но отключил его ради Blue Coat web proxу[16]. OpenSSL добавил эту версию в выпуск 1.1.1 от сентября 2018 года[17]. Electronic Frontier Foundation разрешил использовать TLS 1.3 и предостерёг от путаницы со сходным клептографическим протокольным гибридом ETS или eTLS (в нём намеренно выключены важные свойства безопасности из TLS 1.3)[18].

Безопасность

TLS имеет множество мер безопасности:

  • защита от понижения версии протокола к предыдущей (менее защищённой) версии или менее надёжному алгоритму шифрования;
  • нумерация последовательных записей приложения и использование порядкового номера в коде аутентификации сообщения (MAC);
  • использование ключа в идентификаторе сообщения (только владелец ключа может сгенерировать код аутентификации сообщения). Алгоритм вычисления кода аутентификации (HMAC), используемый во многих сессиях TLS, определён в RFC 2104;
  • сообщение, которым заканчивается подтверждение связи («Finished»), используется для подтверждения аутентичности ранее переданных сообщений и, таким образом, выбранных параметров TLS-соединения.

Уязвимость протокола TLS 1.0, которая считалась теоретической, была продемонстрирована на конференции Ekoparty в сентябре 2011 года. Демонстрация включала в себя дешифрование cookies, использованных для аутентификации пользователя[19].

Уязвимость в фазе возобновления соединения, обнаруженная в августе 2009 года, позволяла криптоаналитику, способному взломать https-соединение, добавлять собственные запросы в сообщения, отправленные от клиента к серверу[20]. Так как криптоаналитик не может дешифровать переписку сервера и клиента, этот тип атаки отличается от стандартной атаки, типа человек посередине. В случае, если пользователь не обращает внимания на индикацию браузера о том, что сессия является безопасной (обычно значок замка), уязвимость может быть использована для атаки типа человек посередине[21]. Для устранения этой уязвимости было предложено как на стороне клиента, так и на стороне сервера добавлять информацию о предыдущем соединении и осуществлять проверку при возобновлении соединения. Это было представлено в стандарте RFC 5746, а также реализовано в последних версиях OpenSSL[22] и других библиотеках[23][24].

Также существуют варианты атак, основанные непосредственно на программной реализации протокола, а не на его алгоритме[25].

Процедура подтверждения связи в TLS в деталях

Согласно протоколу TLS, приложения обмениваются записями, инкапсулирующими (хранящими внутри себя) информацию, которая должна быть передана. Каждая из записей может быть сжата, дополнена, зашифрована или идентифицирована MAC (код аутентификации сообщения) в зависимости от текущего состояния соединения (состояния протокола). Каждая запись в TLS содержит следующие поля: Content Type (определяет тип содержимого записи), Version (поле, указывающее версию протокола TLS) и Length (поле, указывающее длину пакета).

Когда соединение только устанавливается, взаимодействие идёт по протоколу TLS handshake, content type которого — 22.

Простое подтверждение связи в TLS

Далее показан простой пример установления соединения, при котором сервер (но не клиент) проходит аутентификацию по его сертификату.

  1. Фаза переговоров:
    • Клиент посылает сообщение ClientHello, указывая последнюю версию поддерживаемого TLS-протокола, случайное число и список поддерживаемых шифронаборов (методов шифрования, англ. cipher suites), подходящих для работы с TLS;
    • Сервер отвечает сообщением ServerHello, содержащим: выбранную сервером версию протокола, случайное число, сгенерированное сервером, выбранный шифронабор из списка, предоставленного клиентом;
    • Сервер посылает сообщение Certificate, которое содержит цифровой сертификат сервера (в зависимости от алгоритма шифрования этот этап может быть пропущен);
    • Если переданных сервером данных недостаточно для выработки общего симметричного секретного ключа в рамках выбранного шифронабора, сервер передаёт сообщение ServerKeyExchange, в котором передаются необходимые данные. Например, в ServerKeyExchange передаётся серверная часть обмена для протокола Диффи-Хеллмана;
    • Сервер отсылает сообщение ServerHelloDone, идентифицирующее окончание первого раунда установления соединения;
    • Клиент отвечает сообщением ClientKeyExchange, которое содержит клиентскую часть протокола Диффи-Хеллмана или зашифрованный открытым ключом из сертификата сервера секрет (PreMasterSecret);
    • Клиент и сервер, используя ключ PreMasterSecret и случайно сгенерированные числа, вычисляют общий секрет. Вся остальная информация о сеансовом ключе будет получена из общего секрета;
  2. Клиент посылает сообщение ChangeCipherSpec, которое указывает на то, что вся последующая информация будет зашифрована установленным в процессе подтверждения связи алгоритмом, используя общий секретный ключ. Это сообщение уровня записей и поэтому имеет тип 20, а не 22;
    • Клиент посылает сообщение Finished, которое содержит хеш и MAC, сгенерированные на основе предыдущих сообщений процедуры подтверждения связи;
    • Сервер пытается расшифровать Finished-сообщение клиента и проверить хеш и МАС. Если процесс расшифровки или проверки не удаётся, подтверждение связи считается неудавшимся, и соединение должно быть оборвано;
  3. Сервер посылает ChangeCipherSpec и зашифрованное сообщение Finished, и в свою очередь клиент тоже выполняет расшифровку и проверку.

С этого момента подтверждение связи считается завершённым, протокол — установленным. Всё последующее содержимое пакетов идёт с типом 23, а все данные будут зашифрованы.

Подтверждение связи с аутентификацией клиента

В данном примере показана полная аутентификация клиента (в дополнение к аутентификации сервера, как в предыдущем примере) с помощью обмена сертификатами между сервером и клиентом.

  1. Фаза переговоров:
    • Клиент посылает сообщение ClientHello, указывая последнюю версию поддерживаемого TLS-протокола, случайное число и список поддерживаемых методов шифрования и сжатия, подходящих для работы с TLS;
    • Сервер отвечает сообщением ServerHello, содержащим: выбранную сервером версию протокола, случайное число, посланное клиентом, подходящий алгоритм шифрования и сжатия из списка предоставленного клиентом;
    • Сервер посылает сообщение Certificate, которое содержит цифровой сертификат сервера (в зависимости от алгоритма шифрования этот этап может быть пропущен);
    • Сервер посылает сообщение CertificateRequest, которое содержит запрос сертификата клиента для взаимной проверки подлинности;
    • Клиент посылает сообщение Certificate, которое содержит цифровой сертификат клиента;
    • Сервер отсылает сообщение ServerHelloDone, идентифицирующее окончание подтверждения связи;
    • Клиент отвечает сообщением ClientKeyExchange, которое содержит открытый ключ PreMasterSecret или ничего (опять же зависит от алгоритма шифрования);
    • Клиент и сервер, используя ключ PreMasterSecret и случайно сгенерированные числа, вычисляют общий секретный ключ. Вся остальная информация о ключе будет получена из общего секретного ключа (и сгенерированных клиентом и сервером случайных значений);
  2. Клиент посылает сообщение ChangeCipherSpec, которое указывает на то, что вся последующая информация будет зашифрована установленным в процессе подтверждения связи алгоритмом, используя общий секретный ключ. Это сообщения уровня записей и поэтому имеет тип 20, а не 22;
    • Клиент посылает сообщение Finished, которое содержит хеш и MAC, сгенерированные на основе предыдущих сообщений процедуры подтверждения связи;
    • Сервер пытается расшифровать Finished-сообщение клиента и проверить хеш и МАС. Если процесс расшифровки или проверки не удаётся, подтверждение связи считается неудавшимся, и соединение должно быть оборвано.
  3. Сервер посылает ChangeCipherSpec и зашифрованное сообщение Finished, и в свою очередь клиент тоже выполняет расшифровку и проверку.

С этого момента подтверждение связи считается завершённым, протокол установленным. Всё последующее содержимое пакетов идёт с типом 23, а все данные будут зашифрованы.

Возобновление TLS-соединения

Алгоритмы асимметричного шифрования, использующиеся при генерации сеансового ключа, обычно являются дорогими с точки зрения вычислительных мощностей. Для того чтобы избежать их повторения при возобновлении соединения, TLS создаёт специальный ярлык при подтверждении связи, использующийся для возобновления соединения. При этом при обычном подтверждении связи клиент добавляет в сообщение ClientHello идентификатор предыдущей сессии session id. Клиент связывает идентификатор session id с IP-адресом сервера и TCP-портом так, чтобы при соединении к серверу можно было использовать все параметры предыдущего соединения. Сервер сопоставляет идентификатор предыдущей сессии session id c параметрами соединения, такими как использованный алгоритм шифрования и master secret. Обе стороны должны иметь одинаковый master secret, иначе соединение не будет установлено. Это предотвращает использование session id криптоаналитиком для получения несанкционированного доступа. Случайные цифровые последовательности в сообщениях ClientHello и ServerHello позволяют гарантировать, что сгенерированный сеансовый ключ будет отличаться от сеансового ключа при предыдущем соединении. В RFC такой тип подтверждения связи называется сокращённым.

  1. Фаза переговоров:[26]
    • Клиент посылает сообщение ClientHello, указывая последнюю версию поддерживаемого TLS-протокола, случайное число и список поддерживаемых методов шифрования и сжатия, подходящих для работы с TLS; Также в сообщение добавляется идентификатор предыдущего соединения session id.
    • Сервер отвечает сообщением ServerHello, содержащим: выбранную сервером версию протокола, случайное число, посланное клиентом, подходящий алгоритм шифрования и сжатия из списка предоставленного клиентом. Если сервер узнал идентификатор сессии session id, то он добавляет в сообщение ServerHello тот же самый идентификатор session id. Это является сигналом для клиента о том, что можно использовать возобновление предыдущей сессии. Если сервер не узнал идентификатор сессии session id, то он добавляет в сообщение ServerHello другое значение вместо session id. Для клиента это означает, что использовать возобновлённое соединение нельзя. Таким образом, сервер и клиент должны иметь одинаковый master secret и случайные числа для генерации сеансового ключа;
  2. Сервер посылает сообщение ChangeCipherSpec, которое указывает на то, что вся последующая информация будет зашифрована установленным в процессе подтверждения связи алгоритмом, используя общий секретный ключ. Это сообщения уровня записей и поэтому имеет тип 20, а не 22;
    • Сервер посылает зашифрованное сообщение Finished, которое содержит хеш и MAC, сгенерированные на основе предыдущих сообщений процедуры подтверждения связи;
    • Клиент пытается расшифровать Finished сообщение сервера и проверить хеш и МАС. Если процесс расшифровки или проверки не удаётся, подтверждение связи считается неудавшимся, и соединение должно быть оборвано;
  3. Клиент посылает сообщение ChangeCipherSpec, которое указывает на то, что вся последующая информация будет зашифрована установленным в процессе подтверждения связи алгоритмом, используя общий секретный ключ.
    • Клиент посылает своё зашифрованное сообщение Finished;
    • Сервер схожим образом пытается расшифровать Finished-сообщение клиента и проверить хеш и MAC;
  4. С этого момента подтверждение связи считается завершённым, протокол — установленным. Всё последующее содержимое пакетов идёт с типом 23, а все данные будут зашифрованы.

Кроме преимуществ с точки зрения производительности[27], алгоритм возобновления соединения может быть использован для реализации единого входа, поскольку гарантируется, что исходная сессия, как и любая возобновлённая сессия, инициирована тем же самым клиентом (RFC 5077). Это имеет особенно важное значение для реализации FTPS-протокола, который в противном случае был бы уязвим для атаки типа «человек посередине», при которой злоумышленник мог бы перехватить содержание данных при установлении повторного соединения[28].

Мандаты сессий

RFC 5077 расширяет TLS через использование мандатов сессий (англ. session tickets) вместо идентификаторов соединений (session id). Он определяет способ возобновления сеанса TLS, не требуя session id предыдущей сессии, состояние которой хранится на TLS-сервере.

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

Одна из слабостей этого метода — для шифрования и аутентификации передаваемых сессионных мандатов всегда используется только метод AES128-CBC-SHA256, независимо от того, какие параметры TLS выбраны и используются для самого TLS-соединения[29]. Это означает, что информация о TLS-сессии (сохраняемая в сессионном мандате) не так хорошо защищена, как в рамках самой TLS-сессии. Особую озабоченность вызывает хранение OpenSSL-ключей в контексте приложения (SSL_CTX) в течение времени жизни приложения, не допуская их повторного ввода из AES128-CBC-SHA256 сессионных мандатов без сброса OpenSSL-контекста всего приложения (что редкость, подвержено ошибкам и часто требует ручного вмешательства администратора)[30][31].

Атаки CRIME и BREACH

Авторы атаки BEAST также являются создателями более поздней атаки CRIME, которая может позволить злоумышленнику восстановить содержимое веб-куки при использовании сжатия данных вместе с TLS.[32][33] При использовании для восстановления содержимого секретных файлов cookie аутентификации злоумышленник может перехватить сеанс в аутентифицированном веб-сеансе.

Алгоритмы, использующиеся в TLS

В текущей версии протокола доступны следующие алгоритмы:

  • для обмена ключами и проверки их подлинности применяются комбинации алгоритмов: RSA (асимметричный шифр), Diffie-Hellman (безопасный обмен ключами), DSA (алгоритм цифровой подписи), ECDSA;
  • для симметричного шифрования: RC4, IDEA, Triple DES, SEED, Camellia или AES;
  • для хеш-функций: MD5, SHA, SHA-256/384.

Алгоритмы могут дополняться в зависимости от версии протокола. До версии протокола TLS 1.2 были доступны также следующие алгоритмы симметричного шифрования, но они были убраны как небезопасные: RC2, IDEA, DES[34].

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

Одной из областей применения TLS-соединения является соединение узлов в виртуальной частной сети. Кроме TLS, также может использоваться набор протоколов IPSec и SSH-соединение. Каждый из этих подходов к реализации виртуальной частной сети имеет свои преимущества и недостатки[35].

  1. TLS/SSL
    • Преимущества:
      • Невидим для протоколов более высокого уровня;
      • Популярность использования в Интернет-соединениях и приложениях электронной коммерции;
      • Отсутствие постоянного соединения между сервером и клиентом;
      • Позволяет создать туннель для приложений, использующих TCP, таких как электронная почта, инструменты программирования и т. д.
    • Недостатки:
      • Невозможность использования с протоколами UDP и ICMP;
      • Необходимость отслеживания состояния соединения;
      • Наличие дополнительных требований к программному обеспечению о поддержке TLS.
  2. IPsec
    • Преимущества:
      • Безопасность и надёжность защиты данных протокола проверена и доказана, так как протокол был принят как Интернет-стандарт;
      • Работа в верхнем слое сетевого протокола и шифрование данных над уровнем сетевого протокола.
    • Недостатки:
      • Сложность реализации, создающая потенциал для уязвимостей;
      • Дополнительные требования к оборудованию сети (маршрутизаторы и т. п.);
      • Существует много различных реализаций, не всегда корректно взаимодействующих друг с другом.
  3. SSH
    • Преимущества:
      • Позволяет создать туннель для приложений, использующих TCP/IP, таких как электронная почта, инструменты программирования и т. д.;
      • Слой безопасности невидим для пользователя.
    • Недостатки:
      • Трудность использования в сетях с большим числом шлюзов, таких как маршрутизаторы или брандмауэры;
      • Большая нагрузка на внутрисетевой трафик;
      • Невозможность использования с протоколами UDP и ICMP.
      • Не имеет PKI (PKI, основанная на DNSSEC, малораспространена).

Удостоверяющие центры

Выдачей TLS-сертификатов занимаются удостоверяющие центры. Функция удостоверяющих центров — осуществить проверку пользователя и заверить подлинность ресурса. Существуют тысячи УЦ, некоторые из которых имеют бесплатные предложения.

См. также

Примечания

  1. ГОСУДАРСТВЕННЫЙ СТАНДАРТ СТБ 34.101.65-2014
  2. T. Dierks, E. Rescorla. The Transport Layer Security (TLS) Protocol, Version 1.2 (август 2008). Архивировано 9 февраля 2012 года.; ГОСУДАРСТВЕННЫЙ СТАНДАРТ СТБ 34.101.65-2014
  3. The SSL Protocol: Version 3.0 Архивная копия от 28 ноября 2011 на Wayback Machine Netscape’s final SSL 3.0 draft (November 18, 1996)
  4. Overview of SSL/TLS Encryption Microsoft TechNet. Updated July 31, 2003.
  5. SSL/TLS in Detail Microsoft TechNet. Updated July 31, 2003.
  6. 1 2 3 Bright, Peter Apple, Google, Microsoft, and Mozilla come together to end TLS 1.0 (17 октября 2018). Дата обращения: 17 октября 2018. Архивировано 17 октября 2018 года.
  7. Thomas Y. C. Woo, Raghuram Bindignavle, Shaowen Su and Simon S. Lam, SNP: An interface for secure network programming Proceedings USENIX Summer Technical Conference, June 1994
  8. Oppliger, Rolf. Introduction // SSL and TLS: Theory and Practice (неопр.). — 2nd. — Artech House[англ.], 2016. — С. 13. — ISBN 978-1-60807-999-5.
  9. POODLE: SSLv3 vulnerability (CVE-2014-3566). Дата обращения: 21 октября 2014. Архивировано 5 декабря 2014 года.
  10. Laura K. Gray. Date Change for Migrating from SSL and Early TLS. Payment Card Industry Security Standards Council blog (18 декабря 2015). Дата обращения: 5 апреля 2018. Архивировано 20 декабря 2015 года.
  11. The Transport Layer Security (TLS) Protocol Version 1.1 (апрель 2006). Архивировано 24 декабря 2017 года.
  12. Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations 67. National Institute of Standards and Technology (апрель 2014). Дата обращения: 7 мая 2014. Архивировано 8 мая 2014 года.
  13. T. Dierks, E. Rescorla (August 2008). "Finished". The Transport Layer Security (TLS) Protocol Version 1.2. sec. 7.4.9. doi:10.17487/RFC5246. RFC 5246.
  14. NSS 3.29 release notes. Mozilla Developer Network (февраль 2017). Архивировано 22 февраля 2017 года.
  15. Firefox — Notes (60.0) (англ.). Mozilla. Дата обращения: 10 мая 2018. Архивировано 9 мая 2018 года.
  16. ProxySG, ASG and WSS will interrupt SSL connections when clients using TLS 1.3 access sites also using TLS 1.3. BlueTouch Online (16 мая 2017). Дата обращения: 11 сентября 2017. Архивировано 12 сентября 2017 года.
  17. OpenSSL 1.1.1 Is Released. Matt Caswell (11 сентября 2018). Дата обращения: 19 декабря 2018. Архивировано 15 сентября 2018 года.
  18. Hoffman-Andrews, Jacob ETS Isn't TLS and You Shouldn't Use It (англ.). Electronic Frontier Foundation (26 февраля 2019). Дата обращения: 27 февраля 2019. Архивировано 26 февраля 2019 года.
  19. Dan Goodin. Hackers break SSL encryption used by millions of sites. The Register (19 сентября 2011). Дата обращения: 7 декабря 2011. Архивировано 9 февраля 2012 года.
  20. Eric Rescorla. Understanding the TLS Renegotiation Attack. Educated Guesswork (5 ноября 2009). Дата обращения: 7 декабря 2011. Архивировано 9 февраля 2012 года.
  21. McMillan, Robert (2009-11-20). "Security Pro Says New SSL Attack Can Hit Many Sites". PC World. Архивировано 19 января 2012. Дата обращения: 7 декабря 2011.
  22. SSL_CTX_set_options SECURE_RENEGOTIATION. OpenSSL Docs (25 февраля 2010). Дата обращения: 7 декабря 2010. Архивировано из оригинала 9 февраля 2012 года.
  23. GnuTLS 2.10.0 released. GnuTLS release notes (25 июня 2010). Дата обращения: 7 декабря 2011. Архивировано 9 февраля 2012 года.
  24. NSS 3.12.6 release notes. NSS release notes (3 марта 2010). Дата обращения: 24 июля 2011. Архивировано 6 марта 2012 года.
  25. Various. IE SSL Vulnerability. Educated Guesswork (10 августа 2002). Дата обращения: 7 декабря 2010. Архивировано из оригинала 9 февраля 2012 года.
  26. http://www.ict.kth.se/courses/IK1550/Sample-papers/2G1305_Assignment_Asa_Pehrsson_050908.pdf Архивная копия от 15 декабря 2011 на Wayback Machine figure 3
  27. A. Pehhrson. TLS session resumption impact on HTTP performance (март 2008). Архивировано 9 февраля 2012 года.
  28. vsftpd-2.1.0 released Архивная копия от 7 июля 2012 на Wayback Machine Using TLS session resume for FTPS data connection authentication. Retrieved on 2009-04-28.
  29. Daignière, Florent TLS "Secrets": Whitepaper presenting the security implications of the deployment of session tickets (RFC 5077) as implemented in OpenSSL. Matta Consulting Limited. Дата обращения: 7 августа 2013. Архивировано из оригинала 6 августа 2013 года.
  30. Daignière, Florent TLS "Secrets": What everyone forgot to tell you... Matta Consulting Limited. Дата обращения: 7 августа 2013. Архивировано из оригинала 5 августа 2013 года.
  31. Langley, Adam How to botch TLS forward secrecy. imperialviolet.org (27 июня 2013). Дата обращения: 31 января 2014. Архивировано 8 августа 2013 года.
  32. Dan Goodin. Crack in Internet's foundation of trust allows HTTPS session hijacking. Ars Technica (13 сентября 2012). Дата обращения: 31 июля 2013. Архивировано 1 августа 2013 года.
  33. CRIME Attack Uses Compression Ratio of TLS Requests as Side Channel to Hijack Secure Sessions (13 сентября 2012). Дата обращения: 13 сентября 2012. Архивировано 10 июня 2022 года.
  34. Eric Rescorla. TLS 1.2 Update (англ.). 70 proceedings IETF. — «Other changes ... Removed RC2, DES, and IDEA». Дата обращения: 3 января 2018. Архивировано 28 марта 2016 года.
  35. O. M. Dahl. Limitations and Differencies of using IPsec, TLS/SSL or SSH as VPN-solution (октябрь 2004). Архивировано 9 февраля 2012 года.

Ссылки

Read other articles:

Datuk Hakim ThantawiLahir(1947-01-18)18 Januari 1947 Bukittinggi, Sumatera BaratMeninggal21 Juli 2004(2004-07-21) (umur 57) JakartaKebangsaan IndonesiaPekerjaanPengusahaDikenal atasPendiri dan pemilik Grup Thaha Datuk Hakim Thantawi (18 Januari 1947 – 21 Juli 2004) adalah seorang pengusaha yang mendirikan dan sekaligus pemilik Grup Thaha, suatu konglomerasi yang bergerak di berbagai bidang usaha. Dengan bendera Grup Thaha, Datuk Hakim menjalankan aneka bisnisnya, di antarany…

Jimmy Lin Chih-Ying林志穎Jimmy Lin (2006)LahirLin Chih Ying (林志穎)Nama lainJimmy Lin Jimmy Lin Chih-Ying (Hanzi tradisional: 林志穎; pinyin: lin2 zhi4 ying3; Jyutping: lam4 zi3 wing6; lahir 15 Oktober 1974) adalah penyanyi dan aktor asal taiwan dan juga seorang pembalap profesional. Karier Jimmy lahir di Taipei, Taiwan pada tanggal 15 Oktober 1974 dan merupakan anak kedua dari lima bersaudara. Jimmy merupakan tamatan dari sekolah Huai Sheng, Taiwan. Pada umur 16, Jimmy belajar fo…

Koto LawehNagariMasjid Tuanku Pamansiangan Koto LawehNegara IndonesiaProvinsiSumatera BaratKabupatenTanah DatarKecamatanX KotoKode Kemendagri13.04.01.2006 Luas-Jumlah penduduk-Situs webkotolaweh.desa.id Koto Laweh merupakan salah satu nagari yang termasuk ke dalam wilayah kecamatan X Koto, Kabupaten Tanah Datar, Provinsi Sumatera Barat, Indonesia. Nagari ini terletak di dekat Batusangkar, ibu kota dari kabupaten Tanah Datar. lbsKecamatan X Koto, Kabupaten Tanah Datar, Sumatera BaratNagari A…

العلاقات التنزانية الرواندية تنزانيا رواندا   تنزانيا   رواندا تعديل مصدري - تعديل   العلاقات التنزانية الرواندية هي العلاقات الثنائية التي تجمع بين تنزانيا ورواندا.[1][2][3][4][5] مقارنة بين البلدين هذه مقارنة عامة ومرجعية للدولتين: وجه المقارن…

Non-profit organization in Nepal Maiti NepalFormationApril 1993 (April 1993)TypeNon-profit organizationHeadquartersKathmanduLocationNepalFounder/DirectorAnuradha KoiralaWebsitemaitinepal.org Maiti Nepal (Nepali: माइती नेपाल) is a non-profit organization in Nepal dedicated to helping the victims of human trafficking. Currently, it operates a rehabilitation home in Kathmandu, transit homes at the Indo-Nepal border towns, preventive homes in the countryside, and an academy …

Éphémérides Carte de la région de Chicoutimi en 1748.Chronologie du Canada 1745 1746 1747  1748  1749 1750 1751Décennies au Canada :1710 1720 1730  1740  1750 1760 1770 Chronologie dans le monde 1745 1746 1747  1748  1749 1750 1751Décennies :1710 1720 1730  1740  1750 1760 1770Siècles :XVIe XVIIe  XVIIIe  XIXe XXeMillénaires :-Ier Ier  IIe  IIIe Chronologies thématiques Art Architecture, Arts plastiques (Des…

Jakartasentrisme atau Jakartasentris adalah istilah untuk menyebut dominasi budaya, ekonomi dan politik Jakarta terhadap wilayah-wilayah lain di Indonesia. Gagasan Jakartasentrisme mulanya muncul sebagai salah satu permasalahan jurnalisme di Indonesia. Media massa cenderung memberitakan dan menampilkan apa yang terjadi di Jakarta dan karakteristik demografi Jakarta sehingga permasalahan-permasalahan dan masyarakat dari luar kelompok itu tidak mendapatkan perhatian. Kawasan sosial dan budaya Jaka…

Elizabeth Arden, Inc.JenisAnak perusahaanDidirikan1910; 114 tahun lalu (1910) (dengan nama Red Door)PendiriElizabeth ArdenKantorpusatMiramar, Florida, Amerika SerikatTokohkunciDebra Perelman (Presiden dan CEO)ProdukKosmetik, perawatan kulit, dan parfumPendapatanUS$966,7 juta[1] (2016)Laba operasiUS$−40,9 juta[1] (2016)Laba bersihUS$−73,5 juta[1] (2016)Karyawan~1.900 (purna waktu)~500 (paruh waktu)[1] (2016)IndukRevlon, Inc.Situs webeli…

Chemical compound of DNA For the B vitamin whose name sounds and looks similar, see Thiamine. Not to be confused with thymidine. Thymine Names Preferred IUPAC name 5-Methylpyrimidine-2,4(1H,3H)-dione Other names 5-Methyluracil Identifiers CAS Number 65-71-4 Y 3D model (JSmol) Interactive image ChEBI CHEBI:17821 Y ChEMBL ChEMBL993 Y ChemSpider 1103 Y ECHA InfoCard 100.000.560 IUPHAR/BPS 4581 MeSH Thymine PubChem CID 1135 UNII QR26YLT7LT Y CompTox Dashboard (EPA) DTXSID405…

Swimmers at Gooram Falls Reserve on Seven Creeks, Victoria Seven Creeks is a creek in Victoria, Australia that is a part of the Murray-Darling Basin. The confluence of this river is located in Kialla, flowing into the Goulburn River. The creek passes through Euroa.[1] In 1836 during his Australia Felix expedition, Major Mitchell camped on the banks of Seven Creeks at Euroa. See also Goulburn River Broken River (Victoria) References ^ Department of Environment and Primary Industries vteWa…

Эта статья или раздел нуждается в переработке.Пожалуйста, улучшите статью в соответствии с правилами написания статей. Мой шумный домангл. The Loud House Жанры комедийныйМультсериал Техники анимации компьютерная рисованная анимация (1—3 сезоны)flash-анимация (с 4 сезона) Создат…

Questa voce o sezione sull'argomento imprenditori è priva o carente di note e riferimenti bibliografici puntuali. Sebbene vi siano una bibliografia e/o dei collegamenti esterni, manca la contestualizzazione delle fonti con note a piè di pagina o altri riferimenti precisi che indichino puntualmente la provenienza delle informazioni. Puoi migliorare questa voce citando le fonti più precisamente. Segui i suggerimenti del progetto di riferimento. André-Gustave Citroën André-Gustave Citro…

Micro-electronic component Not to be confused with Central processing unit. Apple M1 system on a chip A system on a chip from Broadcom in a Raspberry Pi A system on a chip or system-on-chip (SoC /ˌˈɛsoʊsiː/; pl. SoCs /ˌˈɛsoʊsiːz/) is an integrated circuit that integrates most or all components of a computer or other electronic system. These components almost always include on-chip central processing unit (CPU), memory interfaces, input/output devices and interfaces, and secondary stora…

Cet article est une ébauche concernant l’art et une chronologie ou une date. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Chronologies Données clés 1652 1653 1654  1655  1656 1657 1658Décennies :1620 1630 1640  1650  1660 1670 1680Siècles :XVe XVIe  XVIIe  XVIIIe XIXeMillénaires :-Ier Ier  IIe  IIIe Chronologies thématiques Art Architecture, Arts pla…

Nicaraguan percussionist (born 1946) José “Chepito” AreasBackground informationBirth nameJosé Octavio Areas DávilaAlso known asChepito AreasBorn (1946-07-25) 25 July 1946 (age 77)León, NicaraguaOriginLeón, NicaraguaGenres Latin rock funk rock jazz fusion Occupation(s)MusicianInstrument(s) Timbales percussion congas trumpet drums Years active1969-presentLabelsColumbia World Rock RecordsMusical artist José Octavio Chepito Areas Dávila (born 25 July 1946) is a Nicaraguan percussioni…

Questa voce o sezione sugli argomenti scultori italiani e pittori italiani non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti dei progetti di riferimento 1, 2. Gino Terreni Gino Terreni (Martignana, 13 settembre 1925 – Empoli, 28 novembre 2015) è stato un pittore, scultore e xilografo italiano, uno dei più significativi rappresentanti d…

密西西比州 哥伦布城市綽號:Possum Town哥伦布位于密西西比州的位置坐标:33°30′06″N 88°24′54″W / 33.501666666667°N 88.415°W / 33.501666666667; -88.415国家 美國州密西西比州县朗兹县始建于1821年政府 • 市长罗伯特·史密斯 (民主党)面积 • 总计22.3 平方英里(57.8 平方公里) • 陸地21.4 平方英里(55.5 平方公里) • …

غبريال السابع معلومات شخصية الميلاد القرن 15  مصر  الوفاة سنة 1570   مصر  مكان الدفن كنيسة أبو سيفين  الإقامة كنيسة القديسة مريم (حارة زويلة)  الجنسية مصري الحياة العملية الكنيسة الكنيسة القبطية الأرثوذكسية معلومات شخصية الاسم عند الولادة روفائيل الوفاة 10 أبيب 128…

Seiko Noda野田 聖子 Menteri Urusan Dalam Negeri dan KomunikasiMasa jabatan3 Agustus 2017 – 2 Oktober 2018Perdana MenteriShinzō AbePendahuluSanae TakaichiPenggantiMasatoshi IshidaAnggota DPRuntuk dapil Gifu IPetahanaMulai menjabat 19 Juli 1993 Informasi pribadiLahir3 September 1960 (umur 63)Kitakyushu, JepangPartai politikPartai Demokrat LiberalSuami/istriYōsuke Tsuruho ​(m. 2001)​PendidikanUniversitas SophiaSitus webSitus web resmiSunting ko…

Statistical entity in Indiana, United StatesIndianapolis (balance)Statistical entityIndianapolis (balance)Location within the state of IndianaCoordinates: 39°47′27″N 86°8′52″W / 39.79083°N 86.14778°W / 39.79083; -86.14778CountryUnited StatesStateIndianaCountyMarionArea • Total368.1 sq mi (953.5 km2) • Land361.5 sq mi (936.2 km2) • Water6.7 sq mi (17.3 km2)Population (2020)…

Kembali kehalaman sebelumnya