Содержание

Как работает SSL-сертификат. Принцип работы шифрования

Зачем нужен SSL-сертификат

В браузере перед адресами одних сайтов отображаются буквы HTTP, а перед другими — HTTPS. Обе аббревиатуры обозначают одно и то же: протокол передачи данных в интернете. Протокол — это набор правил, который определяет, как браузер и сервер обмениваются данными, какие бывают данные и что с ними делать.

Принцип работы SSL-шифрования

В основе любого метода шифрования лежит ключ. Ключ — это способ зашифровать или расшифровать сообщение. В работе SSL-сертификата участвуют три ключа: публичный, приватный и сеансовый.

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

Шифрование с двумя разными ключами называют асимметричным. Использовать такой метод более безопасно, но медленно. Поэтому браузер и сервер используют его один раз: чтобы создать сеансовый ключ.

Шифрование с одним ключом называют симметричным. Этот метод удобен, но не так безопасен. Поэтому браузер и делает уникальный ключ для каждого сеанса вместо того, чтобы хранить его на сервере.

Как браузер и сервер устанавливают безопасное соединение

Браузер и сервер устанавливают SSL-соединение каждый раз, когда пользователь заходит на сайт. Это занимает несколько секунд во время загрузки сайта. По-английски процесс называется handshake. Это означает «рукопожатие».

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

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

Рассмотрим, как работает HTTPS-соединение на схеме:

Разновидности сертификатов

Если планируете покупку, но не знаете, какой сертификат выбрать

Для физических лиц и малого бизнеса:

Выбрать DV SSL

Для среднего бизнеса:

Выбрать OV SSL

Для крупного бизнеса:

Выбрать EV SSL

Для сайтов с большим количеством поддоменов:

Выбрать Wildcard SSL-сертификат

Для защиты нескольких доменов:

Выбрать Multi-Domain SSL-сертификат

Цифровые SSL сертификаты.

Разновидности, как выбрать? / Хабр

Существует достаточно много цифровых сертификатов, каждый из которых служит для своих целей. Самые распространенный тип сертификатов это естественно SSL сертификаты, которые также имеют несколько подвидов. Также существуют Code Signing сертификаты, Website Anti Malware Scanner сертификаты и Unified Communications сертификаты.

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

Так что если у вас стоит задача поднять защищенное https соединение для вашего сайта, то в этом посте я постараюсь раскрыть все тонкости и особенности SSL сертификатов, чтобы сделать правильный выбор было проще.

Начнем с самых распространенных SSL сертификатов.

SSL сертификаты самый распространенный на данный момент тип сертификатов в Интернет.

Чаще всего они используются в интернет-магазинах, то есть на сайтах, где есть функция заказа и где клиент вводит свои персональные данные. Для того, чтобы эти данные в момент передачи из браузера на сервер невозможно было перехватить используется специальный протокол HTTPS, который шифрует все передаваемые данные.

Для того, чтобы активировать возможность работы протокола HTTPS как раз и нужны цифровые SSL сертификаты (также потребуется выделенный IP для конкретного сайта).

Что такое SSL сертификат?

SSL — это сокращение от Secure Socket Layer — это стандартная интернет технология безопасности, которая используется, чтобы обеспечить зашифрованное соединение между веб-сервером (сайтом) и браузером. SSL сертификат позволяет нам использовать https протокол. Это безопасное соединение, которое гарантирует, что информация которая передается от вашего браузера на сервер остается приватной; то есть защищенной от хакеров или любого, кто хочет украсть информацию.

Один из самых распространенных примеров использования SSL — это защита клиента во время онлайн транзакции (покупки товара, оплаты).

Как получить SSL сертификат?

Самый простой и бесплатный способ — это использовать, так называемый, самоподписной сертификат (self-signed), который можно сгенерировать прямо на веб-сервере. К слову во всех самых популярных панелях управления хостингом (Cpanel, ISPmanager, Directadmin) эта возможность доступна по умолчанию, поэтому техническую сторону процесса создания сертификата мы сейчас опустим.

Плюс самоподписного сертификата — это его цена, точнее ее отсутствие, так как вы не платите ни копейки, за такой сертификат. А вот из минусов — это то, что на такой сертификат все браузеры будут выдавать ошибку, с предупреждением, что сайт не проверен.

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

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

Почему же браузеры выдают такое предупреждение для самоподписных сертификатов и как этого избежать? Чтобы ответить на этот вопрос потребуется немного рассказать про сами принципы работы SSL сертификатов.

По какому принципу работает SSL сертификат?

Итак для того, чтобы получить SSL сертификат самое первое, что нужно сделать, это сформировать специальный запрос на выпуск сертификата, так называемый (Certificate Signing Request). При формировании этого запроса вам будет задан ряд вопросов, для уточнения деталей о вашем домене и вашей компании. После завершения ваш веб сервер создаст 2 типа криптографических ключей — приватный ключ и публичный ключ.

Публичный ключ не является секретным и он помещается в запрос CSR.
Вот пример такого запроса:
——BEGIN CERTIFICATE REQUEST——
MIIC3zCCAccCAQAwgZkxCzAJBgNVBAYTAlVBMQ0wCwYDVQQIEwRLaWV2MQ0wCwYD

VQQHEwRLaWV2MRQwEgYDVQQKEwtIb3N0QXV0b21hdDEQMA4GA1UECxMHaG9zdGlu
ZzEmMCQGCSqGSIb3DQEJARYXc3VwcG9ydEBob3N0YXV0b21hdC5jb20xHDAaBgNV
BAMTE3d3dy5ob3N0YXV0b21hdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQDTg7iUv/iX+SyZl74GcUVFHjFC5IqlTNEzWgLWrsSmxGxlGzXkUKid
NyXWa0O3ayJHOiv1BSX1l672tTqeHxhGuM6F7l5FTRWUyFHUxSU2Kmci6vR6fw5c
cgWOMMNdMg7V5bMOD8tfI74oBkVE7hV95Ds3c594u7kMLvHR+xui2S3z2JJQEwCh
mflIojGnSCO/iv64RL9vjZ5B4jAWJwrruIXO5ILTdis41Z1nNIx3bBqkif0H/G4e
O5WF6fFb7etm8M+d8ebkqEztRAVdhXvTGBZ4Mt2DOV/bV4e/ffmQJxffTYEqWg8w
b465GdAJcLhhiSaHgqRzrprKns7QSGjdAgMBAAGgADANBgkqhkiG9w0BAQUFAAOC
AQEAuCfJKehyjt7N1IDv44dd+V61MIqlDhna0LCXh2uT7R9H8mdlnuk8yevEcCRI
krnWAlA9GT3VkOY3Il4WTGg3wmtq6WAgLkVXQnhIpGDdYAflpAVeMKil8Z46BGIh
KQGngL2PjWdhMVLlRTB/01nVSKSEk2jhO8+7yLOY1MoGIvwAEF4CL1lAjov8U4XG
NfQldSWT1o8z9sDeGsGSf5DAXpcccx0gCyk90HFJxhbm/vTxjJgchUFro/0goVpB
credpKxtkwBMuCzeSyDnkQft0eLtZ9b9Q4+ZNDWsPPKxo/zWHm6Pa/4F4o2QKvPC
Px9x4fm+/xHqkhkR79LxJ+EHzQ==
——END CERTIFICATE REQUEST——

Данные которые содержатся в этом ключе можно легко проверить с помощью сервисов CSR Decoder. Как пример: CSR Decoder 1 или CSR Decoder 2. Второй сервис выдает больше информации о CSR и проверяет ее на валидность, поле Signature в результатах проверки.

Если мы вставим такой запрос в форму для его расшифровки, то увидим, какие данные содержатся в публичном ключе.

CSR Information:
Common Name: tuthost.ua — доменное имя, которое мы защищаем таким сертификатом
Organization: TutHost — название организации, которой принадлежит домен
Organization Unit: Hosting department — подразделение организации
Locality: Kiev — город, где находится офис организации
State: Kiev — область или штат
Country: UA — двухбуквенный код, страны офиса.
Email: [email protected] — контактный email технического администратора или службы поддержки

Важный момент — обратите внимание на поле Country — формат этого поля подразумевает только двухбуквенный код по стандарту ISO 3166-1, если вы не уверены в коде вашей страны, то проверить его можно например тут: Таблица ISO-3166-1. Я обращаю внимание на это поле, потому, что самая частая ошибка у наших клиентов при генерации запроса CSR — это неправильный код страны. И как следствие с такой CSR произвести выпуск сертификата невозможно.

После того как CSR сгенерирован вы можете приступать к оформлению заявки на выпуск сертификата. Во время этого процесса центр сертификации (CA — Certification Authority) произведет проверку введенных вами данных, и после успешной проверки выпустит SSL сертификат с вашими данными и даст возможность вам использовать HTTPS. Ваш сервер автоматически сопоставит выпущенный сертификат, со сгенерированным приватным ключем. Это означает, что вы готовы предоставлять зашифрованное и безопасное соединение между вашим сайтом и браузером клиентов.

Какие данные содержит в себе SSL сертификат?

В сертификате хранится следующая информация:

  • полное (уникальное) имя владельца сертификата
  • открытый ключ владельца
  • дата выдачи ssl сертификата
  • дата окончания сертификата
  • полное (уникальное) имя центра сертификации
  • цифровая подпись издателя
Что такое центры сертификации (CA)?

Это организация, которая обладает правом выдачи цифровых сертификатов. Она производит проверку данных, содержащихся в CSR, перед выдачей сертификата. В самых простых сертификатах проверяется только соотвествие доменного имени, в самых дорогих производится целый ряд проверок самой организации, которая запрашивает сертификат. Об этом мы поговорим ниже.

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

Говоря в общем, SSL сертификаты содержат и отображают (как минимум одно из) ваше доменное имя, ваше название организации, ваш адрес, город и страницу. Также сертификат всегда имеет дату окончания и данные о центре сертификации, ответственного за выпуск сертификата. Браузер подключается к защищенному сайту, получает от него SSL сертификат и делает ряд проверок: он не просрочен ли сертификат, потом он проверяет, выпущен ли сертификат известным ему центром сертификации (CA) используется ли сертификат на сайте, для которого он был выпущен.

Если один из этих параметров не проходит проверку, браузер отображает предупреждение посетителю, чтобы уведомить, что этот сайт не использует безопастное соединение SSL. Он предлагает покинуть сайт или продолжить просмотр, но с большой осторожностью. Это последнее, что вы должны увидеть ваши потенциальные клиенты.

Центров сертификации существует достаточно много, вот перечень самых популярных:
Comodo — работает с 1998 штабквартира в Jersey City, New Jersey, США.
Geotrust — основан в 2001, в 2006 продан Verisign, штабквартира Mountain View, California, США
Symantec — бывший Verisign в состав которого входит и Geotrust. Купил всех в 2010 году.
Thawte — основан в 1995, продан Verisign в 1999.
Trustwave — работает с 1995, штабквартира Chicago, Illinois, США.

Как видим самый крупный игрок на рынке SSL сертификатов это Symantec, который владеет тремя крупнейшими центрами сертификации — Thawte, Verisgin и Geotrust.

Есть ли разница в каком центре сертификации заказывать сертификат?

Основное отличие между разными центрами сертификации — в цене сертификатов и в том, в каком количестве браузеров установлен их корневой сертификат. Ведь если в браузере нет корневного сертификата этого центра сертификации, то посетитель с таким браузером все равно получит ошибку при входе на сайт с сертификатом от такого центра.
Что касается перечисленных выше центров сертификации, то их корневые сертификаты установлены в, пожалуй, 99,99% всех существующих браузеров.

Чтобы проверить, корневые сертификаты каких центров сертификации установлены в вашем браузере, достаточно в настройках вашего браузера найти такую опцию. (В Chrome Настройки -> показать дополнительные настройки -> управление сертификатами -> Доверенные корневые центры сертификации). В Chrome установлено более 50 таких корневых сертификатов.

Важный момент — частенько у клиентов возникала ситуация, когда SSL сертификат на серверe установлен, но при заходе на сайт браузер все равно выдает ошибку. Такая ситуация может возникнуть или из-за отсутствия в файле ca-bundle.crt корневого сертификата центра выдавшего сертификат или из-за того, что корневой сертификат устарел. Корневые сертификаты также имеют свой срок действия (в браузерах они обновляются при обновлении браузера).

С июля 2010 года сертификационные центры перешли на использование ключей 2048bit RSA Keys, поэтому для корректной работы всех новых сертификатов необходимо устанавливать новые корневые сертификаты.
Если новые корневые сертификаты не установлены — это может вызвать проблемы с корректной установкой сертификата и распознаванием его некоторыми из браузеров.
Ссылки на странички центров сертификации, где можно скачать новые корневые сертификаты даны ниже.

RapidSSL Certificate

  • Installation Instructions
  • Root CA Certificates

GeoTrust SSL Certificates

  • Installation Instructions
  • Root CA Certificates

Thawte SSL Certificates

  • Installation Instructions
  • Root CA Certificates

VeriSign SSL Certificates

  • Installation Instructions
  • Root CA Certificates

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

Итак мы вплотную подошли к видам SSL сертификатов.

Какие виды SSL сертификатов существуют?

Между собой сертификаты отличаются свойствами и уровнем валидации.

Типы сертификатов по типу валидации

  • Сертификаты, которые подтверждают только доменное имя (Domain Validation — DV).
  • Сертификаты, которые подтверждают домен и организацию (Organization Validation — OV).
  • Сертификаты, с расширенной проверкой (Extendet Validation — EV).

Разберемся с ними по порядку:

Сертификаты, подтверждающие только домен

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

Важный момент, что это письмо может быть отправлено только на так называемый approver email, который вы указываете при заказе сертификата. И к адресу approver email есть определенные требования, он должен быть либо в том же домене для которого вы заказываете сертификат, либо он должен быть указан в whois домена.
Если вы указываете email в том же домене, что и сертификат, то указывать любой emal тоже нельзя, он должен соответствовать одному из шаблонов:
admin@
administrator@
hostmaster@
postmaster@
webmaster@

Еще один Важный момент: иногда сертификаты с моментальным выпуском попадают на дополнительную ручную проверку Центром сертификации, сертификаты для проверки выбираются случайным образом. Так что всегда стоит помнить, что есть небольшой шанс, что ваш сертификат будет выпущен не моментально.

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

Сертификаты с валидацией организации.

В таком сертификате уже будет указано название организации. Такой сертификат частное лицо получить не может. Срок выдачи таких сертификатов как правило от 3 до 10 рабочих дней, зависит от центра сертификации.

Процесс выдачи сертификатов OV

После получения запроса на выпуск сертификата с проверкой организации центр сертификации производит проверку, реально ли существует такая организация, как указано в CSR и принадлежит ли ей указанный домен.

Что проверяется в таких случаях?

У разных центров сертификации проверка несколько отличается, поэтому приведу общий список пунктов, которые могут быть проверены или запрошены:

  1. Наличие организации в международных желтых страницах — проверяется не всеми центрами сертифации
  2. Наличие в whois домена названия вашей организации — а вот это уже проверят обязательно, и если такое название там не указано от вас скорей всего затребуют гарантийное письмо, в котором нужно указать, что домен действительно принадлежит организации, иногда могут затребовать подтверждение от регистратора
  3. Свидетельство о государственной регистрации — требуют все реже, чаще сейчас производится проверка через специальные компании, которые производят проверку существования организации по своим каналам. Например для Украины вас могут проверить по базе ЕДРПОУ
  4. Счет от телефонной компании, в которой содержится название вашей организации и ваш номер телефона, указанный в заказе — таким образом проверяется валидность вашего телефона. Требуют все реже.
  5. Проверочный звонок — все чаще правильность телефона проверяют осуществляя звонок, на номер телефона, указанный вами в заказе. При звонке спросят сотрудника, указанного в административном контакте. Не у всех центров сертификации есть русскоговорящие сотрудники, поэтому предупредите человека, который отвечает на телефон, что возможен звонок от англоязычной компании.

Сертификаты с расширенной проверкой.

Это самые дорогие сертификаты и получить их сложнее всего. В таких сертификатах есть так называемый «green bar» — то есть при входе не сайт, где установлен такой сертификат в адресной строке браузера посетителя появится зеленая строка, в которой будет указано название организации, получившей сертификат.

Вот как это выглядит на сайте у Thawte.

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

SSL cертификаты с расширенной проверкой (EV) выпускаются только когда центр сертификации (CA) выполняет две проверки, чтобы убедиться, что организация имеет право использовать определенный домен плюс центр сертификации выполняет тщательную проверку самой организации. Процесс выпуска сертификатов EV стандартизирован и должен строго соотвествовать правилам EV, которые были созданы на специализированном форуме CA/Browser Forum в 2007 году. Там указаны необходимые шаги, которые центр сертификации должен выполнить перед выпуском EV сертификата:

  1. Должен проверить правовую, физическую и операционную деятельности субъекта.
  2. Должен убедиться, что организация соответствует официальным документам.
  3. Необходимо убедиться, что организация имеет исключительное право на использование домена, указанного в сертификате EV.
  4. Необходимо убедиться, что организация полностью авторизована для выпуска EV сертификата.

Список того, что конкретно будут проверять такой же как и для сертификатов с проверкой организации.

EV сертификаты используются для всех типов бизнеса, в том числе для государственных и некоммерческих организаций. Для выпуска необходимо 10-14 дней.

Вторая часть правил актуальная для центра сертификации и описывает критерии, которым центр сертификации должен соответствовать перед тем, как получить разрешение на выпуск EV сертификата. Она называется, EV правила аудита, и каждый год происходит проверка на соответствие этим правилам.

Типы SSL сертификатов по своим свойствам.

Обычные SSL сертификаты

Тут все понятно, это сертификаты, которые выпускаются автоматически и подтверждают только домен. Подходят для всех сайтов.
Цена: от 20$ в год

SGC сертификаты

Сертификаты с поддержкой повышения уровня шифрования. Актуально для очень старых браузеров, которые поддерживали только 40 или 56 бит шифрование. При использовании этого сертификата уровень шифрования принудительно повышается до 128 бит.
За все время у нас не купили не одного такого сертификата. Мое мнение, что они уже не нужны, разве что для внутреннего использования в больших корпорациях, где сохранилось очень старое железо.
Цена: от 300 $ в год.

Wildcard сертификаты

Нужны в том случае, когда вам кроме основного домена нужно обеспечить шифрование также на всех поддоменах одного домена. Например: есть домен domain.com и вам нужно установить такой же сертификат на support.domain.com, forum.domain.com и billing.domain.com

Совет: посчитайте количество поддоменов, на которые нужен сертификат, иногда бывает выгодней купить отдельно несколько обычных сертификатов.
Цена: от 180$ в год. Как видите, если у вас меньше 9 поддоменов, то дешевле купить обычный сертификат, хотя в использовании будет удобней один wildcard.

SAN сертификаты

Пригодится, если вы хотите использовать один сертификат для нескольких разных доменов, размещенных на одном сервере. Обычно в такой сертификат входит 5 доменов и их количество можно увеличивать с шагом в 5.
Цена: от 395 $ в год

EV сертификаты

Это те самые сертификаты с расширенной проверки и зеленой строкой в браузере, о которых мы говорили выше. Получить их может только юридическое лицо, коммерческая, некоммерческая или государственная организация.
Цена: от 250 $ в год.

Сертификаты c поддержкой IDN

Как правило, не у всех центров сертификации указана эта опция в описании сертификата, но не все сертификаты поддерживаются работу с IDN доменами. Поэтому я просто приведу здесь список сертификатов, у которых есть такая поддержка:

  • Thawte SSL123 Certificate
  • Thawte SSL Web Server
  • Symantec Secure Site
  • Thawte SGC SuperCerts
  • Thawte SSL Web Server Wildcard
  • Thawte SSL Web Server with EV
  • Symantec Secure Site Pro
  • Symantec Secure Site with EV
  • Symantec Secure Site Pro with EV

Как выбрать самый дешевый сертификат?

У Geotrust самые дешевые SAN сертификаты. Сертификаты с валидацией только сайта, а также wildcard выгоднее всего у RapidSSL. EV сертификаты самые дешевые также у Geotrust. SGC сертификаты есть только у Thawte и Verisign, но у Thawte дешевле.

Чем еще отличаются сертификаты между собой

  • Скоростью выпуска. Быстрее всего выпускаются сертификаты с валидацией только домена, дольше всего с EV валидацией, от 7 рабочих дней.
  • Количество перевыпусков сертификата — у большинства центров сертификации неограниченно. Требуется, если допустили ошибку в данных об организации.
  • Гарантия — для некоторых сертификатов есть гарантия от 10.000 $. Это гарантия скорее не для покупателя сертификата, а для посетителя сайта, где установлен сертификат. В случае если посетитель сайта с таким сертификатом пострадает от фрауда и потеряет деньги, то центр сертификации обязуется их ему компенсировать до суммы указанной в гарантии. То есть центр сертификации как бы дает гарантию на свои сертификаты и что их невозможно установить на «левый» домен. На практике такие случае мне не известны поэтому на этот параметр можно не обращать внимание.
  • Бесплатный тестовый период — из платных сертификатов есть у symantec secure site, geotrust rapidssl, comodo positive ssl, thawte ssl web server. Также можете для тестов использовать бесплатные сертификаты: StartSSL™ Free
  • Возврат средств — есть почти у всех сертификатов в течении 30 дней, хотя бывают и сертификаты без периода moneyback
Полезные утилиты:

  1. OpenSSL — самая распространенная утилита для генерации открытого ключа (запроса на сертификат) и закрытого ключа.
    http://www.openssl.org/
  2. CSR Decoder — утилита для проверки CSR и данных, которые в нем содержаться, рекомендую использовать перед заказом сертификата.
    CSR Decoder 1 или CSR Decoder 2
  3. DigiCert Certificate Tester — утилита для проверки корректно самого сертификата
    http://www.digicert.com/help/?rid=011592
    http://www.sslshopper.com/ssl-checker.html

В следующих частях постараюсь рассказать про остальные виды сертификатов.

P.S. с удовольствием отвечу на любые вопросы связанные с выбором SSL сертификата в комментариях.
P.P.S. Желающие получить 30% скидку на ssl сертификаты — пишите в личку.

Update: Важный момент — некоторые сертификаты умеют работать на доменах с www и без www, то есть для защиты www.domain.com и domain.com достаточно одного сертификата, но заказывать его нужно на www.domain.com
Актуально для сертификатов:
• RapidSSL
• QuickSSL Premium
• True BusinessID
• True BusinessID with EV

Стандарт только для HTTPS — Сертификаты

Часто задаваемые вопросы и ответы о сертификатах HTTPS и центрах сертификации.

  • Что такое сертификаты и центры сертификации?
  • Какой сертификат я должен получить для своего домена?
  • Каким правилам и надзору подлежат центры сертификации?
  • Имеет ли правительство США общедоступный доверенный центр сертификации?
  • Существуют ли федеральные ограничения на использование допустимых центров сертификации?
  • Тогда как я могу ограничить, какие ЦС могут выдавать сертификаты для домена?
  • Как узнать, когда выдан какой-либо сертификат для домена?

Что такое сертификаты и центры сертификации?

Веб-сайты используют сертификаты для создания соединения HTTPS. Подписанные доверенным центром сертификации (CA), сертификаты дают браузерам уверенность в том, что они посещают «настоящий» веб-сайт.

Технически сертификат представляет собой файл, который содержит:

  • Домен(ы), которые он уполномочен представлять.
  • Числовой «открытый ключ», который математически соответствует «закрытому ключу», принадлежащему владельцу веб-сайта.
  • Криптографическая подпись центра сертификации (ЦС), подтверждающая связь между парой ключей и авторизованным доменом (доменами).
  • Другая техническая информация, например, когда истекает срок действия сертификата, какой алгоритм ЦС использовал для его подписи и насколько широко был проверен домен.
  • Необязательно, информация о человеке или организации, владеющей доменом(ами).

Веб-браузеры обычно настроены так, чтобы доверять предварительно выбранному списку центров сертификации (ЦС), и браузер может проверить, что любая подпись, которую он видит, исходит от ЦС из этого списка. Список доверенных центров сертификации устанавливается либо базовой операционной системой, либо самим браузером.

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

Какой сертификат я должен получить для своего домена?

В настоящее время в федеральном правительстве используется множество видов сертификатов, и правильный выбор может зависеть от технической архитектуры системы или бизнес-политики агентства.

В целом:

  • Сертификаты «проверки домена» (DV) обычно менее дороги и более поддаются автоматизации, чем сертификаты «расширенной проверки» (EV). Обычные сертификаты DV полностью приемлемы для государственного использования.

  • Сертификаты могут быть действительны от нескольких лет до нескольких дней. В целом, сертификаты с более коротким сроком действия обеспечивают более высокий уровень безопасности , поскольку влияние компрометации ключа менее серьезно. Автоматизация выпуска и продления сертификатов является общепринятой передовой практикой и может сделать более практичным принятие сертификатов с более коротким сроком действия.

  • Агентства должны немедленно заменить сертификаты, подписанные с помощью SHA-1 , поскольку браузеры быстро отказываются от поддержки алгоритма SHA-1. С 1 января 2016 г. коммерческим ЦС запрещается выпускать их полностью.

Как правило, сертификаты любого коммерческого ЦС будут соответствовать нескольким техническим требованиям NIST, относящимся к сертификатам.

Каким правилам и надзору подлежат центры сертификации?

С 2012 года все основные браузеры и центры сертификации участвуют в CA/Browser Forum . Несмотря на саморегулирование, CA/Browser Forum фактически является руководящим органом для общедоступных доверенных центров сертификации.

Форум CA/B производит Базовые требования (BRs), набор технических и процедурных политик, которых должны придерживаться все центры сертификации. Эти политики определяются посредством формального процесса голосования браузеров и ЦС. BR обеспечиваются с помощью сочетания технических мер, стандартных сторонних аудитов и внимания всего сообщества к общедоступным сертификатам.

Базовые требования ограничивают только центры сертификации, но не ограничивают поведение браузера. Поскольку поставщики браузеров в конечном итоге решают, каким сертификатам будет доверять их браузер, они являются правоприменителями и арбитрами нарушений BR. Если будет установлено, что ЦС нарушает Базовые требования, браузер может оштрафовать или ограничить способность этого ЦС выдавать сертификаты, которым этот браузер будет доверять, вплоть до исключения из хранилища доверенных сертификатов этого браузера.

CA / Ресурсы браузера
  • Текущие базовые требования
  • Запись голосования форума CA/B
  • Mozilla отзывает промежуточный сертификат ANSSI после того, как было обнаружено, что ANSSI нарушил базовые требования, неправомерно выпустив промежуточный сертификат для использования в мониторинге сети.
  • Google требует от Symantec использования прозрачности сертификатов после того, как было обнаружено, что Symantec нарушила базовые требования, выпустив сертификаты неправильно.

Имеет ли правительство США общедоступный доверенный центр сертификации?

Нет, не по состоянию на начало 2016 года, и вряд ли это изменится в ближайшем будущем.

Корень Federal PKI является доверенным для некоторых браузеров и операционных систем, но не входит в программу Mozilla Trusted Root. Программа Mozilla Trusted Root используется Firefox, многими устройствами Android и рядом других устройств и операционных систем. Это означает, что федеральная PKI не может выдавать сертификаты для использования в TLS/HTTPS, которым доверяют достаточно широко, чтобы защитить веб-службу, используемую широкой публикой.

Федеральная инфраструктура открытых ключей перекрестно сертифицирует другие коммерческие центры сертификации, что означает, что их сертификатам будут доверять клиенты, доверяющие федеральной инфраструктуре открытых ключей. Тем не менее, даже если общедоступный коммерческий центр сертификации проходит перекрестную сертификацию с федеральной PKI, ожидается, что они сохранят полное разделение между своими общедоступными доверенными сертификатами и перекрестно сертифицированными федеральными сертификатами PKI.

В результате в настоящее время не существует жизнеспособного способа получить сертификат для использования в TLS/HTTPS, который выдан или которому доверяет федеральная PKI, а также которому доверяет широкая публика.

Существуют ли федеральные ограничения на использование допустимых центров сертификации?

Общегосударственных правил, ограничивающих, какие центры сертификации могут использовать федеральные домены, не существует.

Важно понимать, что, хотя у агентства могут быть технические или деловые причины для ограничения используемых ЦС, ограничение ЦС с помощью только внутренних политик не дает никаких преимуществ с точки зрения безопасности. Браузеры будут доверять сертификатам, полученным от любого общедоступного доверенного центра сертификации, поэтому внутреннее ограничение использования центра сертификации не приведет к ограничению числа центров сертификации, из которых злоумышленник может получить поддельный сертификат.

На практике федеральные агентства используют широкий спектр общедоступных коммерческих ЦС и частных корпоративных ЦС для защиты своих веб-сервисов.

Тогда как я могу ограничить, какие ЦС могут выдавать сертификаты для домена?

Не существует простого и на 100% эффективного способа заставить все браузеры доверять только сертификатам для вашего домена, выпущенным определенным ЦС. В целом сила HTTPS в современном Интернете зависит от общих стандартов, компетентности и подотчетности всей системы CA.

Однако владельцы доменов могут использовать Авторизацию центра сертификации DNS для публикации списка утвержденных ЦС.

Кроме того, владельцы доменов могут использовать Прозрачность сертификатов (см. вопрос ниже) для отслеживания и обнаружения сертификатов, выпущенных любым ЦС.

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

Все основные центры сертификации участвуют в CAA и обещают проверять записи DNS CAA перед выдачей сертификатов. Каждый CA должен отказать в выдаче сертификатов для доменного имени, которое публикует запись CAA, исключающую CA.

Это только обещание, поэтому несоответствующий или скомпрометированный ЦС может по-прежнему выдавать сертификаты для любого доменного имени даже в нарушение CAA. Но такая неправильная выдача с большей вероятностью будет обнаружена при наличии CAA.

Стандартный DNS не является безопасным, поэтому записи CAA могут быть скрыты или подделаны злоумышленником, находящимся в привилегированном положении в сети, за исключением случаев, когда DNSSEC используется владельцем домена и проверяется каждым издателем CA.

CAA можно объединить с мониторингом журнала прозрачности сертификатов для обнаружения случаев неправильной выдачи.

Ресурсы CAA
  • Запись в Википедии для CAA
  • RFC 6844, стандарт для CAA
  • Генератор записей CAA

Как узнать, когда выдан какой-либо сертификат для домена?

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

Прозрачность сертификатов (CT) позволяет владельцам доменов обнаруживать ошибочную выдачу сертификатов постфактум .

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

Comodo выпустила средство просмотра журнала Certificate Transparency с открытым исходным кодом, которое они используют на crt.sh. Например, можно просмотреть все последние сертификаты для whitehouse.gov и сведения о конкретных сертификатах.

Степень прозрачности сертификатов увеличивается по мере того, как все больше ЦС публикуют больше сертификатов в общедоступных журналах CT. Google Chrome требует прозрачности сертификата для всех новых сертификатов, выпущенных после 30 апреля 2018 года. Платформы Apple, включая Safari, требуют прозрачности сертификата для всех новых сертификатов, выпущенных после 15 октября 2018 года. В результате большинство ЦС теперь по умолчанию отправляют новые сертификаты в журналы CT.

Однако центр сертификации может по-прежнему выпускать новые сертификаты, не раскрывая их в журнале CT. Этим сертификатам не будут доверять Chrome или Safari, но им могут доверять другие браузеры.

Chrome также освобождает частные центры сертификации от этих правил прозрачности, поэтому частные центры сертификации, которые не связаны с каким-либо общедоступным корнем, могут по-прежнему выдавать сертификаты, не отправляя их в журналы CT.

Ресурсы прозрачности сертификатов
  • Google CT FAQ
  • RFC 6962, экспериментальный стандарт для CT
  • .
  • Запись в Википедии для CT
  • Cert Spotter, монитор журнала компьютерной томографии с открытым исходным кодом
  • Федеральная страница PKI США о принудительном применении Chrome CT

Стандарт только для HTTPS — Сертификаты

Часто задаваемые вопросы и ответы о сертификатах HTTPS и центрах сертификации.

  • Что такое сертификаты и центры сертификации?
  • Какой сертификат я должен получить для своего домена?
  • Каким правилам и надзору подлежат центры сертификации?
  • Имеет ли правительство США общедоступный доверенный центр сертификации?
  • Существуют ли федеральные ограничения на использование допустимых центров сертификации?
  • Тогда как я могу ограничить, какие ЦС могут выдавать сертификаты для домена?
  • Как узнать, когда выдан какой-либо сертификат для домена?

Что такое сертификаты и центры сертификации?

Веб-сайты используют сертификаты для создания соединения HTTPS. Подписанные доверенным центром сертификации (CA), сертификаты дают браузерам уверенность в том, что они посещают «настоящий» веб-сайт.

Технически сертификат представляет собой файл, который содержит:

  • Домен(ы), которые он уполномочен представлять.
  • Числовой «открытый ключ», который математически соответствует «закрытому ключу», принадлежащему владельцу веб-сайта.
  • Криптографическая подпись центра сертификации (ЦС), подтверждающая связь между парой ключей и авторизованным доменом (доменами).
  • Другая техническая информация, например, когда истекает срок действия сертификата, какой алгоритм ЦС использовал для его подписи и насколько широко был проверен домен.
  • Необязательно, информация о человеке или организации, владеющей доменом(ами).

Веб-браузеры обычно настроены так, чтобы доверять предварительно выбранному списку центров сертификации (ЦС), и браузер может проверить, что любая подпись, которую он видит, исходит от ЦС из этого списка. Список доверенных центров сертификации устанавливается либо базовой операционной системой, либо самим браузером.

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

Какой сертификат я должен получить для своего домена?

В настоящее время в федеральном правительстве используется множество видов сертификатов, и правильный выбор может зависеть от технической архитектуры системы или бизнес-политики агентства.

В целом:

  • Сертификаты «проверки домена» (DV) обычно менее дороги и более поддаются автоматизации, чем сертификаты «расширенной проверки» (EV). Обычные сертификаты DV полностью приемлемы для государственного использования.

  • Сертификаты могут быть действительны от нескольких лет до нескольких дней. В целом, сертификаты с более коротким сроком действия обеспечивают более высокий уровень безопасности , поскольку влияние компрометации ключа менее серьезно. Автоматизация выпуска и продления сертификатов является общепринятой передовой практикой и может сделать более практичным принятие сертификатов с более коротким сроком действия.

  • Агентства должны немедленно заменить сертификаты, подписанные с помощью SHA-1 , поскольку браузеры быстро отказываются от поддержки алгоритма SHA-1. С 1 января 2016 г. коммерческим ЦС запрещается выпускать их полностью.

Как правило, сертификаты любого коммерческого ЦС будут соответствовать нескольким техническим требованиям NIST, относящимся к сертификатам.

Каким правилам и надзору подлежат центры сертификации?

С 2012 года все основные браузеры и центры сертификации участвуют в CA/Browser Forum . Несмотря на саморегулирование, CA/Browser Forum фактически является руководящим органом для общедоступных доверенных центров сертификации.

Форум CA/B производит Базовые требования (BRs), набор технических и процедурных политик, которых должны придерживаться все центры сертификации. Эти политики определяются посредством формального процесса голосования браузеров и ЦС. BR обеспечиваются с помощью сочетания технических мер, стандартных сторонних аудитов и внимания всего сообщества к общедоступным сертификатам.

Базовые требования ограничивают только центры сертификации, но не ограничивают поведение браузера. Поскольку поставщики браузеров в конечном итоге решают, каким сертификатам будет доверять их браузер, они являются правоприменителями и арбитрами нарушений BR. Если будет установлено, что ЦС нарушает Базовые требования, браузер может оштрафовать или ограничить способность этого ЦС выдавать сертификаты, которым этот браузер будет доверять, вплоть до исключения из хранилища доверенных сертификатов этого браузера.

CA / Ресурсы браузера
  • Текущие базовые требования
  • Запись голосования форума CA/B
  • Mozilla отзывает промежуточный сертификат ANSSI после того, как было обнаружено, что ANSSI нарушил базовые требования, неправомерно выпустив промежуточный сертификат для использования в мониторинге сети.
  • Google требует от Symantec использования прозрачности сертификатов после того, как было обнаружено, что Symantec нарушила базовые требования, выпустив сертификаты неправильно.

Имеет ли правительство США общедоступный доверенный центр сертификации?

Нет, не по состоянию на начало 2016 года, и вряд ли это изменится в ближайшем будущем.

Корень Federal PKI является доверенным для некоторых браузеров и операционных систем, но не входит в программу Mozilla Trusted Root. Программа Mozilla Trusted Root используется Firefox, многими устройствами Android и рядом других устройств и операционных систем. Это означает, что федеральная PKI не может выдавать сертификаты для использования в TLS/HTTPS, которым доверяют достаточно широко, чтобы защитить веб-службу, используемую широкой публикой.

Федеральная инфраструктура открытых ключей перекрестно сертифицирует другие коммерческие центры сертификации, что означает, что их сертификатам будут доверять клиенты, доверяющие федеральной инфраструктуре открытых ключей. Тем не менее, даже если общедоступный коммерческий центр сертификации проходит перекрестную сертификацию с федеральной PKI, ожидается, что они сохранят полное разделение между своими общедоступными доверенными сертификатами и перекрестно сертифицированными федеральными сертификатами PKI.

В результате в настоящее время не существует жизнеспособного способа получить сертификат для использования в TLS/HTTPS, который выдан или которому доверяет федеральная PKI, а также которому доверяет широкая публика.

Существуют ли федеральные ограничения на использование допустимых центров сертификации?

Общегосударственных правил, ограничивающих, какие центры сертификации могут использовать федеральные домены, не существует.

Важно понимать, что, хотя у агентства могут быть технические или деловые причины для ограничения используемых ЦС, ограничение ЦС с помощью только внутренних политик не дает никаких преимуществ с точки зрения безопасности. Браузеры будут доверять сертификатам, полученным от любого общедоступного доверенного центра сертификации, поэтому внутреннее ограничение использования центра сертификации не приведет к ограничению числа центров сертификации, из которых злоумышленник может получить поддельный сертификат.

На практике федеральные агентства используют широкий спектр общедоступных коммерческих ЦС и частных корпоративных ЦС для защиты своих веб-сервисов.

Тогда как я могу ограничить, какие ЦС могут выдавать сертификаты для домена?

Не существует простого и на 100% эффективного способа заставить все браузеры доверять только сертификатам для вашего домена, выпущенным определенным ЦС. В целом сила HTTPS в современном Интернете зависит от общих стандартов, компетентности и подотчетности всей системы CA.

Однако владельцы доменов могут использовать Авторизацию центра сертификации DNS для публикации списка утвержденных ЦС.

Кроме того, владельцы доменов могут использовать Прозрачность сертификатов (см. вопрос ниже) для отслеживания и обнаружения сертификатов, выпущенных любым ЦС.

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

Все основные центры сертификации участвуют в CAA и обещают проверять записи DNS CAA перед выдачей сертификатов. Каждый CA должен отказать в выдаче сертификатов для доменного имени, которое публикует запись CAA, исключающую CA.

Это только обещание, поэтому несоответствующий или скомпрометированный ЦС может по-прежнему выдавать сертификаты для любого доменного имени даже в нарушение CAA. Но такая неправильная выдача с большей вероятностью будет обнаружена при наличии CAA.

Стандартный DNS не является безопасным, поэтому записи CAA могут быть скрыты или подделаны злоумышленником, находящимся в привилегированном положении в сети, за исключением случаев, когда DNSSEC используется владельцем домена и проверяется каждым издателем CA.

CAA можно объединить с мониторингом журнала прозрачности сертификатов для обнаружения случаев неправильной выдачи.

Ресурсы CAA
  • Запись в Википедии для CAA
  • RFC 6844, стандарт для CAA
  • Генератор записей CAA

Как узнать, когда выдан какой-либо сертификат для домена?

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

Прозрачность сертификатов (CT) позволяет владельцам доменов обнаруживать ошибочную выдачу сертификатов постфактум .

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

Comodo выпустила средство просмотра журнала Certificate Transparency с открытым исходным кодом, которое они используют на crt.sh. Например, можно просмотреть все последние сертификаты для whitehouse.gov и сведения о конкретных сертификатах.

Степень прозрачности сертификатов увеличивается по мере того, как все больше ЦС публикуют больше сертификатов в общедоступных журналах CT. Google Chrome требует прозрачности сертификата для всех новых сертификатов, выпущенных после 30 апреля 2018 года. Платформы Apple, включая Safari, требуют прозрачности сертификата для всех новых сертификатов, выпущенных после 15 октября 2018 года.