Перейти к содержимому

Справочник SSL/TLS

Версии SSL/TLS и наборы шифров с указанием уровня безопасности.

SSL 2.0

1995Нарушено

Broken — multiple critical vulnerabilities. RFC 6176 prohibits use.

SSL 3.0

1996Нарушено

Broken — POODLE attack. RFC 7568 prohibits use.

TLS 1.0

1999Устарело

Deprecated — BEAST attack. PCI DSS disallows after 2018.

TLS 1.1

2006Устарело

Deprecated — no significant improvements over 1.0. Browsers dropped in 2020.

TLS 1.2

2008Безопасно

Current — widely supported. Use with AEAD cipher suites only.

TLS 1.3

2018Безопасно

Latest — faster handshake, forward secrecy mandatory, removed legacy ciphers.

Об этом инструменте

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

Используйте этот инструмент для поиска конкретных версий SSL/TLS (от старого SSLv3 до современного TLS 1.3) и просмотра их оценок безопасности, поддерживаемых наборов шифров и ключевых алгоритмов. Вы можете быстро проверить, безопасен ли набор шифров для использования в production, валидировать какие алгоритмы присутствуют в конкретной версии TLS или понять различия между симметричными и асимметричными методами шифрования. Это неоценимо при устранении проблем совместимости, обновлении конфигураций серверов или подготовке к проверкам соответствия требованиям безопасности.

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

Часто задаваемые вопросы

Реализация кода

import ssl
import socket

# Check server's TLS version and cipher
def check_tls(hostname, port=443):
    context = ssl.create_default_context()
    with socket.create_connection((hostname, port)) as sock:
        with context.wrap_socket(sock, server_hostname=hostname) as ssock:
            cipher = ssock.cipher()
            version = ssock.version()
            cert = ssock.getpeercert()
            return {
                'version': version,
                'cipher': cipher[0],
                'bits': cipher[2],
                'subject': dict(x[0] for x in cert['subject']),
                'expires': cert['notAfter']
            }

# Configure minimum TLS version
def create_secure_context(min_version=ssl.TLSVersion.TLSv1_2):
    ctx = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
    ctx.minimum_version = min_version
    ctx.maximum_version = ssl.TLSVersion.TLSv1_3
    ctx.load_default_certs()
    return ctx

# Example
try:
    info = check_tls('example.com')
    print(f"TLS Version: {info['version']}")
    print(f"Cipher: {info['cipher']} ({info['bits']} bits)")
    print(f"Certificate expires: {info['expires']}")
except Exception as e:
    print(f"Error: {e}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.