Всем привет!
А мы вот запустили тихой сапой один из самых необычных для нас курсов — «Цифровая подпись в информационной безопасности». Несмотря на всё мы вроде справились и людей привлекли, посмотрим, что получится. А сегодня мы разберём оставшийся интересный материал и посмотрим вкратце, как работает TLS, а также в чем разница между недоверенным и доверенным веб-сертификатами.
Перевод — dzone.com/articles/a-look-at-tls-transport-layer-security
Автор — Arun Pandey
TLS — сокращение от Transport Layer Security (протокол защиты транспортного уровня), основан на SSL. Как следует из названия, это протокол, работающий на транспортном уровне.
Как известно, безопасность связи — очень распространенная головная боль, но корректная реализация TLS может перенести веб-безопасность на новый уровень. В среде с внедренным TLS злоумышленник может получить информацию о хосте, к которому вы пытаетесь подключиться, узнать какое шифрование используется, прервать соединение, но сделать что-то кроме этого — не получится.
Почти во всех протоколах связи есть три основных части: шифрование данных, аутентификация и целостность данных.
В этом протоколе шифровать данные можно двумя способами: используя Криптосистему с Открытым Ключом или Симметричные Криптосистемы. Криптосистема с открытым ключом, как реализация, совершенней симметричных криптосистем.
![](https://habrastorage.org/r/w1560/webt/62/y3/te/62y3tesbjtxvyimvpmgdijiu-fs.png)
Краткий обзор Криптосистемы с Открытым Ключом и Симметричных Криптосистем
Криптосистема с открытым ключом, являющаяся разновидностью Асимметричного Шифрования, использует открытый-закрытый ключ. Так открытый ключ B используется для шифрования данных A (B поделился открытым ключом с A), а после получения зашифрованных данных B расшифровывает их, используя собственный закрытый ключ.
В Симметричных Криптосистемах используется один и тот же ключ и для расшифровки, и для шифрования, поэтому секретный ключ у A и B будет один и тот же. И это является большим недостатком.
А теперь посмотрим, как работает аутентификация в TLS. Чтобы убедиться в подлинности отправителя сообщения и обеспечить получателя средствами для шифрования ответа, аутентификация может быть достигнута с помощью цифровых сертификатов. Операционные системы и браузеры хранят списки доверенных сертификатов, которые они могут подтвердить.
Доверенные vs. Недоверенные Сертификаты
Цифровые сертификаты бывают двух категорий. Доверенные сертификаты подписываются Центром Сертификации (Certificate Authority, кратко — CA), в то время как недоверенные сертификаты — самоподписанные.
Доверенные Сертификаты
Доверенные сертификаты находятся в веб-браузере и подписываются CA. Это необходимо для обеспечения наивысшего уровня надежности. Предположим, сайт “xyz.com” хочет получить доверенный цифровой сертификат от известного сертификационного центра “Comodo”.
Шаги будут следующими:
Недоверенные Сертификаты
Недоверенный сертификат подписывается самим владельцем сайта. Такой метод подходит, если проблемы надежности не актуальны.
Заметим, что в реализации TLS не принято использовать недоверенный сертификат.
Как работает замена сертификата TLS
THE END
Как обычно ждём вопросы и комментарии.
А мы вот запустили тихой сапой один из самых необычных для нас курсов — «Цифровая подпись в информационной безопасности». Несмотря на всё мы вроде справились и людей привлекли, посмотрим, что получится. А сегодня мы разберём оставшийся интересный материал и посмотрим вкратце, как работает TLS, а также в чем разница между недоверенным и доверенным веб-сертификатами.
Перевод — dzone.com/articles/a-look-at-tls-transport-layer-security
Автор — Arun Pandey
TLS — сокращение от Transport Layer Security (протокол защиты транспортного уровня), основан на SSL. Как следует из названия, это протокол, работающий на транспортном уровне.
Как известно, безопасность связи — очень распространенная головная боль, но корректная реализация TLS может перенести веб-безопасность на новый уровень. В среде с внедренным TLS злоумышленник может получить информацию о хосте, к которому вы пытаетесь подключиться, узнать какое шифрование используется, прервать соединение, но сделать что-то кроме этого — не получится.
Почти во всех протоколах связи есть три основных части: шифрование данных, аутентификация и целостность данных.
В этом протоколе шифровать данные можно двумя способами: используя Криптосистему с Открытым Ключом или Симметричные Криптосистемы. Криптосистема с открытым ключом, как реализация, совершенней симметричных криптосистем.
![](https://habrastorage.org/webt/62/y3/te/62y3tesbjtxvyimvpmgdijiu-fs.png)
Краткий обзор Криптосистемы с Открытым Ключом и Симметричных Криптосистем
Криптосистема с открытым ключом, являющаяся разновидностью Асимметричного Шифрования, использует открытый-закрытый ключ. Так открытый ключ B используется для шифрования данных A (B поделился открытым ключом с A), а после получения зашифрованных данных B расшифровывает их, используя собственный закрытый ключ.
В Симметричных Криптосистемах используется один и тот же ключ и для расшифровки, и для шифрования, поэтому секретный ключ у A и B будет один и тот же. И это является большим недостатком.
А теперь посмотрим, как работает аутентификация в TLS. Чтобы убедиться в подлинности отправителя сообщения и обеспечить получателя средствами для шифрования ответа, аутентификация может быть достигнута с помощью цифровых сертификатов. Операционные системы и браузеры хранят списки доверенных сертификатов, которые они могут подтвердить.
Доверенные vs. Недоверенные Сертификаты
Цифровые сертификаты бывают двух категорий. Доверенные сертификаты подписываются Центром Сертификации (Certificate Authority, кратко — CA), в то время как недоверенные сертификаты — самоподписанные.
Доверенные Сертификаты
Доверенные сертификаты находятся в веб-браузере и подписываются CA. Это необходимо для обеспечения наивысшего уровня надежности. Предположим, сайт “xyz.com” хочет получить доверенный цифровой сертификат от известного сертификационного центра “Comodo”.
Шаги будут следующими:
- Создать веб-сервер для приложения: xyz.com;
- Создать пару секретных ключей (открытый-закрытый ключ), используя шифрование с открытым ключом (в силу его надежности);
- Сгенерировать Запрос на Получение Сертификата (Certificate Signing Request, кратко — CSR) для сертификационного центра, в моем случае — Comodo. На диске файл может называться “certreq.txt”;
- Подать заявку в сертификационный центр, включить в нее CSR;
- Сертификационный центр (Comodo в моем случае) проверит ваш запрос, в том числе и открытый-закрытый ключ;
- Если все в порядке, сертификационный центр подпишет запрос, используя свой собственный закрытый ключ;
- Центр отправит сертификат, который нужно установить на веб-сервер;
- Все готово!
Недоверенные Сертификаты
Недоверенный сертификат подписывается самим владельцем сайта. Такой метод подходит, если проблемы надежности не актуальны.
Заметим, что в реализации TLS не принято использовать недоверенный сертификат.
Как работает замена сертификата TLS
- Открыть адрес “xyz.com” в браузере;
- Веб-сервер получает запрос;
- Веб-сервер в ответ на запрос отправляет сертификат;
- Веб-браузер оценивает ответ и проверяет сертификат;
- В процессе валидации веб-браузер узнает, что сертификат подписан центром Comodo;
- Веб-браузер проверяет базу данных сертификатов (например, IE -> Internet Options -> content -> certificate) на наличие сертификата Comodo;
- Как только он находится, веб-браузер использует открытый ключ Comodo для проверки сертификата, отправленного веб-сервером;
- Если валидация проходит успешно, браузер считает эту связь безопасной.
THE END
Как обычно ждём вопросы и комментарии.