Musterbericht

TLS-Abgleich mit BSI TR-02102-2

So sieht der Bericht aus. Geprüft wurde ein eigener Testserver mit einer Konfiguration, wie sie auf vielen Webservern läuft (angelehnt an die Vorlage „Mozilla intermediate“, ECDSA-Zertifikat, zusätzlich die Hybridgruppe X25519MLKEM768). Der Bericht unten ist die unveränderte Ausgabe des aktuellen Prüfkerns, einschließlich der Maßnahmen mit Erfolgskriterium, der Zertifikatsdiagnose und der Rohdaten.

Hinweis zum Muster: Der Testserver nutzt ein selbst signiertes Zertifikat. Deshalb zeigt die Zeile „Vertrauenskette“ eine Abweichung. Bei einem öffentlichen Server mit Zertifikat einer anerkannten Stelle wäre sie in Ordnung.

Zielmusterserver.test:8443
Prüfzeitpunkt2026-10-29 11:49 UTC
MaßstabEmpfehlungen der BSI TR-02102-2, Version 2026-01 vom 27.01.2026, ergänzt um die Hinweise der BSI-Webseite zu TLS 1.3 (abgerufen 26.10.2026)
WerkzeugPrüfkern 0.4.0, Node.js v24.19.0, OpenSSL 3.5.7; 151 Verbindungsversuche, davon 26 erfolgreich

Gesamtergebnis: Messung vollständig

Alle Punkte des Prüfumfangs wurden mit eindeutigem Ergebnis gemessen.

Messvollständigkeit: kein Punkt offen. Dauerhafte Grenzen des Verfahrens: Abschnitt „Grenzen dieser Messung“.

Festgestellte Abweichungen: 1

Nur gemessene Punkte sind bewertet. Zu beheben in 1 Maßnahme. Zusätzliche Hinweise ohne Abweichung: 6.

Wichtigste Maßnahmen

  1. Priorität 1 Zertifikatskette prüfen M-zert_kette

    Betrifft: 1 Befund – Vertrauenskette

    Erfolgskriterium: erneute Messung: Befund „Vertrauenskette“ als „entspricht“ eingestuft (Prüfsystem bildet die Kette bis zu einer vertrauenswürdigen Wurzel)

Weitere 2 Maßnahmen (Hinweise ohne Abweichung) unter „Maßnahmen im Detail“.

Messvollständigkeit

Nicht prüfbar (0)

Keine Aussage möglich, zum Beispiel wegen Zeitüberschreitung oder einer Grenze des Prüfsystems. Daraus folgt weder „entspricht“ noch „Abweichung“.

Keine: Alle Punkte des Prüfumfangs wurden eindeutig gemessen.

Abweichungen und Hinweise

Erfordert Aufmerksamkeit (1)

Abweichungen: von der TR ausdrücklich nicht empfohlen, abgelaufen oder Bedingung nachweislich nicht erfüllt; dazu Fristen, die 2026 enden.

  • Zertifikat: Vertrauenskette – Das Serverzertifikat ist selbst signiert und steht nicht im Vertrauensspeicher des Prüfsystems (DEPTH_ZERO_SELF_SIGNED_CERT).

Zusätzliche Hinweise (6)

„Nicht aufgeführt“ heißt: Das Verfahren steht in keiner Tabelle der TR. Das ist kein Sicherheitsproblem und kein Urteil über seine Sicherheit.

  • Cipher-Suiten TLS 1.3: TLS_CHACHA20_POLY1305_SHA256 – Nicht in Tabelle 13.
  • Cipher-Suiten TLS 1.2: TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 – In den Tabellen 3–5 nicht aufgeführt.
  • Gruppen TLS 1.3: x25519 – Nicht in Tabelle 10 (die TR nennt X25519 nur als Teil von X25519MLKEM768).
  • Gruppen TLS 1.3: X25519MLKEM768 – Hybride Post-Quanten-Gruppe.
  • Gruppen TLS 1.2: x25519 – Nicht in Tabelle 6.
  • Post-Quanten-Vorbereitung: SecP256r1MLKEM768, SecP384r1MLKEM1024 – Wird nachweislich nicht angeboten.

Abweichung 1 · Frist endet 2026 0 · nicht prüfbar 5 · nicht aufgeführt 4 · Einordnung 2 · entspricht 23

Maßnahmen im Detail

Nach Dringlichkeit geordnet. Jede Maßnahme nennt die beobachteten Befunde mit Kennung und Messbeleg, die Auswirkung, die vorgeschlagene Maßnahme, Voraussetzungen und ein Erfolgskriterium, das eine erneute Messung prüft. Konfigurationszeilen sind Beispiele mit Quelle; prüfen Sie Änderungen zuerst auf einem Testsystem. Wir ändern nichts an Ihrem Server.

  1. Priorität 1 · Prüfen Zertifikatskette prüfen M-zert_kette

    Beobachtet:

    • B-EAF0C886 Zertifikat: Vertrauenskette – Das Serverzertifikat ist selbst signiert und steht nicht im Vertrauensspeicher des Prüfsystems (DEPTH_ZERO_SELF_SIGNED_CERT).
      Messbeleg: Standard-Handshake; Kette wie vom Prüfsystem gebildet (kann eine Wurzel aus dem Vertrauensspeicher enthalten); Vertrauen nur aus der Kettenprüfung,…

    Auswirkung: Das Prüfsystem konnte die gelieferte Kette nicht als vertrauenswürdig bestätigen (Fehlercode und mögliche Ursachen im Abschnitt „Zertifikat“). Clients mit vergleichbarem Vertrauensspeicher lehnen die Verbindung ab.

    Maßnahme: Die vom Server ausgelieferte Kette mit den Angaben der Zertifizierungsstelle vergleichen (Serverzertifikat zuerst, dann die Zwischenzertifikate); bei einer eigenen oder privaten CA klären, ob die Clients ihr vertrauen.

    Voraussetzungen und Folgen:

    • Keine Änderung allein auf Grund dieses Berichts: Vertrauen hängt auch vom Zertifikatsspeicher der Clients ab.

    Erfolgskriterium (erneute Messung):

    • B-EAF0C886 erneute Messung: Befund „Vertrauenskette“ als „entspricht“ eingestuft (Prüfsystem bildet die Kette bis zu einer vertrauenswürdigen Wurzel)

    Quelle: Herleitung aus dem Befund „Vertrauenskette“; keine Vorgabe der TR; TR: keine Vorgabe in TR-02102-2

  2. Optional Post-Quanten-Hybridgruppen ergänzen M-pqc_hybrid

    Beobachtet:

    • B-00988DEB Post-Quanten-Vorbereitung: SecP256r1MLKEM768, SecP384r1MLKEM1024 – Wird nachweislich nicht angeboten.

    Auswirkung: Ab 2032 sollen klassische Gruppen in TLS 1.3 nur noch hybrid eingesetzt werden; SecP256r1MLKEM768 und SecP384r1MLKEM1024 sind laut BSI-Webseite schon heute einsetzbar. Keine Pflicht aus Sicherheitsgründen.

    Maßnahme: Die hybriden Post-Quanten-Gruppen zusätzlich anbieten.

    Voraussetzungen und Folgen:

    • OpenSSL ab Version 3.5.
    • Die Zeile ersetzt Ihre bisherige Gruppenliste.
    • Welche Serversoftware und Version Sie einsetzen, misst der Bericht nicht. Die Konfigurationszeilen sind Beispiele für nginx bzw. Apache 2.4 mit mod_ssl; bei anderer Software oder einem vorgeschalteten Gerät (Lastverteiler, CDN) gilt die Maßnahme sinngemäß.

    Erfolgskriterium (erneute Messung):

    • B-00988DEB erneute Messung: SecP256r1MLKEM768 angeboten (Handshake nur mit dieser Gruppe gelingt)
    • B-00988DEB erneute Messung: SecP384r1MLKEM1024 angeboten (Handshake nur mit dieser Gruppe gelingt)

    Beispiel nginx (nur Beispiel)

    ssl_ecdh_curve X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:X25519:secp256r1:secp384r1;

    Beispiel Apache (nur Beispiel)

    SSLOpenSSLConfCmd Groups X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:X25519:secp256r1:secp384r1

    Quelle: Musterbericht, Abschnitt „Konfigurationshinweise“, Schritt 1, Post-Quanten-Hybridgruppen ergänzen; TR: Abschn. 3.1.3 und 3.4.2; BSI-Webseite

  3. Optional Nur, wenn streng nach den Tabellen konfiguriert werden muss M-streng_tabellen

    Beobachtet:

    • B-6BF37ACE Cipher-Suiten TLS 1.3: TLS_CHACHA20_POLY1305_SHA256 – Nicht in Tabelle 13.
      Messbeleg: TLS 1.3, nur Suite TLS_CHACHA20_POLY1305_SHA256
    • B-B16A4A27 Cipher-Suiten TLS 1.2: TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 – In den Tabellen 3–5 nicht aufgeführt.
      Messbeleg: TLS 1.2, nur Suite ECDHE-ECDSA-CHACHA20-POLY1305
    • B-89E3E0B6 Gruppen TLS 1.3: x25519 – Nicht in Tabelle 10 (die TR nennt X25519 nur als Teil von X25519MLKEM768).
      Messbeleg: TLS 1.3, nur Gruppe x25519
    • B-D62F6E90 Gruppen TLS 1.2: x25519 – Nicht in Tabelle 6.
      Messbeleg: TLS 1.2 ECDHE, nur Gruppe x25519 und ergänzend x25519 + Zertifikatskurve secp256r1

    Auswirkung: Die betroffenen Verfahren stehen in keiner Tabelle, gelten aber nicht als unsicher. Nur sinnvoll, wenn Ihr Auftraggeber ausdrücklich nur Verfahren aus den Tabellen verlangt.

    Maßnahme: Nur wenn verlangt: die Verfahren abschalten, die in keiner Tabelle stehen.

    Voraussetzungen und Folgen:

    • Geräte ohne AES-Beschleunigung handeln AES-GCM aus und sind etwas langsamer; Clients, die nur X25519 anbieten, können sich nicht mehr verbinden. Vorher mit den wichtigsten Clients testen.
    • OpenSSL ab 3.5 (Hybridgruppen in der Gruppenzeile).
    • Welche Serversoftware und Version Sie einsetzen, misst der Bericht nicht. Die Konfigurationszeilen sind Beispiele für nginx bzw. Apache 2.4 mit mod_ssl; bei anderer Software oder einem vorgeschalteten Gerät (Lastverteiler, CDN) gilt die Maßnahme sinngemäß.

    Erfolgskriterium (erneute Messung):

    • B-6BF37ACE erneute Messung: TLS_CHACHA20_POLY1305_SHA256 abgelehnt (Handshake nur mit diesem Wert scheitert, z. B. Alarm handshake_failure)
    • B-B16A4A27 erneute Messung: TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 abgelehnt (Handshake nur mit diesem Wert scheitert, z. B. Alarm handshake_failure)
    • B-89E3E0B6 erneute Messung: x25519 abgelehnt (Handshake nur mit diesem Wert scheitert, z. B. Alarm handshake_failure)
    • B-D62F6E90 erneute Messung: x25519 abgelehnt (Handshake nur mit diesem Wert scheitert, z. B. Alarm handshake_failure)

    Beispiel nginx (nur Beispiel)

    ssl_ecdh_curve X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:secp256r1:secp384r1;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384;
    ssl_conf_command Ciphersuites TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256;

    Beispiel Apache (nur Beispiel)

    SSLOpenSSLConfCmd Groups X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:secp256r1:secp384r1
    SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384
    SSLCipherSuite TLSv1.3 TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256

    Quelle: Musterbericht, Abschnitt „Konfigurationshinweise“, Schritt 2, „Nur, wenn Sie streng nach den Tabellen konfigurieren müssen“; TR: Abschn. 3.4.4, Tab. 13; Abschn. 3.3.1, Tab. 3–5; Abschn. 3.4.2, Tab. 10

Zertifikat

Name, Gültigkeit, gelieferte Kette und Vertrauen sind getrennt dargestellt. „Unbekannt“ heißt: nicht gemessen; daraus folgt keine Bewertung.

Geprüfter Namemusterserver.test
entspricht „musterserver.test“ steht im Zertifikat (SAN: musterserver.test).
Namen im Zertifikatmusterserver.test
InhaberCN=musterserver.test
AusstellerCN=musterserver.test
Gültigkeitab 2026-10-29 11:49 UTC bis 2027-01-27 11:49 UTC
Restlaufzeit: 89 Tage (am Prüftag)
entspricht Gültig vom 2026-10-29 bis 2027-01-27 (am Prüftag noch 89 Tage, Laufzeit 90 Tage).
SHA-256-Fingerabdruck90:64:4C:E9:D3:4F:83:D7:D2:62:53:E6:5B:9A:E8:A6:56:6B:71:8E:87:FA:3D:A5:9A:68:34:D4:02:70:AF:06
SchlüsselECDSA prime256v1
Gelieferte Kette1 Zertifikat in dieser Reihenfolge:
  1. CN=musterserver.test (selbst signiert)
    ausgestellt von CN=musterserver.test
  • Reihenfolge: Jedes Zertifikat hat das vorhergehende ausgestellt.
  • Das Serverzertifikat ist selbst signiert.
Messverfahren: eigener TLS-1.2-ClientHello; Certificate-Nachricht des Servers, Reihenfolge wie gesendet
Vertrauen aus Sicht des PrüfsystemsAbweichung Das Serverzertifikat ist selbst signiert und steht nicht im Vertrauensspeicher des Prüfsystems (DEPTH_ZERO_SELF_SIGNED_CERT).
Prüfsystem: Node.js v24.19.0, OpenSSL 3.5.7; Vertrauensspeicher: eingebaute Wurzelzertifikate von Node.js (Mozilla-Liste, 120 Einträge). Vertrauen hängt vom Vertrauensspeicher ab; Clients mit anderem Speicher können anders entscheiden.
Kette laut Prüfsystem
  1. CN=musterserver.test, gültig bis 2027-01-27
So hat das Prüfsystem die Kette gebildet; sie kann eine Wurzel aus seinem Vertrauensspeicher enthalten, die der Server nicht geliefert hat.

Fristen

Aus den gemessenen Zertifikatsdaten und den Fristen der TR („empfohlen bis Ende …“) für die angebotenen bzw. verwendeten Verfahren. Betriebliche Vorwarnschwellen von Ciphermeter (Produktentscheidung), keine Vorgabe der TR-02102-2.

Zertifikate

  • Serverzertifikat CN=musterserver.test: Ablauf 2027-01-27 (in 89 Tagen). Vorwarnung von Ciphermeter: 30 Tage vorher ab 2026-12-28, 21 Tage vorher ab 2027-01-06.

Fristen der TR für angebotene Verfahren

  • Empfohlen bis Ende 2031: Protokollversionen: TLS 1.2; Cipher-Suiten TLS 1.2: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256; Gruppen TLS 1.3: secp256r1, secp384r1; Gruppen TLS 1.2: secp256r1, secp384r1
  • Empfohlen bis Ende 2032+ (Frist kann in einer künftigen Fassung verlängert werden): Protokollversionen: TLS 1.3; Cipher-Suiten TLS 1.3: TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384; Signaturverfahren TLS 1.3: ecdsa_secp256r1_sha256; Zertifikat: Signatur

Lesehilfe laut Regelwerk: „Bis Ende JJJJ“: empfohlen bis zum Ende dieses Jahres; „+“: die Frist wird eventuell in einer künftigen Fassung verlängert (TR Abschn. 3.1.1, S. 6).

Einzelbefunde

Jede Zeile nennt Kennung, Messergebnis, Einordnung, zugehörige Maßnahme und die Fundstelle in der TR. Nicht angebotene Verfahren sind nur aufgeführt, wo die TR sie verlangt oder ausschließt.

Protokollversionen

MerkmalErgebnisEinordnungFundstelle
TLS 1.0 B-B309634AentsprichtWird nachweislich nicht angeboten (Server lehnt mit TLS-Alarm protocol_version (70) ab).Abschn. 3.2, S. 6
TLS 1.1 B-205BA4FBentsprichtWird nachweislich nicht angeboten (Server lehnt mit TLS-Alarm protocol_version (70) ab).Abschn. 3.2, S. 6
TLS 1.2 B-4428721AentsprichtWird angeboten; empfohlen bis 2031. Endet 2031, weil für TLS 1.2 keine PQC-Schlüsseleinigung erwartet wird.Abschn. 3.2, Tab. 2, S. 6
TLS 1.3 B-0ED7BB6FentsprichtWird angeboten; empfohlen bis 2032+.Abschn. 3.2, Tab. 2, S. 6

Cipher-Suiten TLS 1.3

MerkmalErgebnisEinordnungFundstelle
TLS_AES_128_GCM_SHA256 B-CAB666C3entsprichtWird angeboten; empfohlen bis 2032+.Abschn. 3.4.4, Tab. 13, S. 14
TLS_AES_256_GCM_SHA384 B-6BBB3245entsprichtWird angeboten; empfohlen bis 2032+.Abschn. 3.4.4, Tab. 13, S. 14
TLS_CHACHA20_POLY1305_SHA256 B-6BF37ACEnicht aufgeführtNicht in Tabelle 13. ChaCha20-Poly1305 gilt in der Fachwelt nicht als unsicher (RFC 8439); die TR führt es nur nicht auf. → M-streng_tabellenAbschn. 3.4.4, Tab. 13

Cipher-Suiten TLS 1.2

MerkmalErgebnisEinordnungFundstelle
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 B-354C4097entsprichtWird angeboten; empfohlen bis 2031.Abschn. 3.3.1.1, Tab. 3, S. 7
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 B-B16A4A27nicht aufgeführtIn den Tabellen 3–5 nicht aufgeführt. ChaCha20-Poly1305 ist kein bekannter Sicherheitsmangel; die TR führt es nur nicht auf. → M-streng_tabellenAbschn. 3.3.1, Tab. 3–5
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 B-C76193AAentsprichtWird angeboten; empfohlen bis 2031.Abschn. 3.3.1.1, Tab. 3, S. 7
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 B-759FAEF9entsprichtWird angeboten; empfohlen bis 2031. CBC-Suite: Encrypt-then-MAC wird ausgehandelt, Bedingung erfüllt.Abschn. 3.3.1.1, Tab. 3, S. 7
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 B-DA9F4DDCentsprichtWird angeboten; empfohlen bis 2031. CBC-Suite: Encrypt-then-MAC wird ausgehandelt, Bedingung erfüllt.Abschn. 3.3.1.1, Tab. 3, S. 7

Gruppen TLS 1.3

MerkmalErgebnisEinordnungFundstelle
secp256r1 B-3C8BB25EentsprichtWird angeboten; empfohlen bis 2031, allein (nicht hybrid) nur bis Ende 2031.Abschn. 3.4.2, Tab. 10, S. 13
secp384r1 B-6A72392AentsprichtWird angeboten; empfohlen bis 2031, allein (nicht hybrid) nur bis Ende 2031.Abschn. 3.4.2, Tab. 10, S. 13
x25519 B-89E3E0B6nicht aufgeführtNicht in Tabelle 10 (die TR nennt X25519 nur als Teil von X25519MLKEM768). X25519 gilt nicht als unsicher. Abschalten nur mit Folgenabschätzung: Clients, die ausschließlich X25519 anbieten, sind selten, aber möglich. → M-streng_tabellenAbschn. 3.4.2, Tab. 10
X25519MLKEM768 B-1784F9DBEinordnungHybride Post-Quanten-Gruppe. Nicht in Tabelle 10; laut BSI-Webseite (abgerufen 2026-10-26) zusätzlich einsetzbar.BSI-Webseite TR-02102, Hinweis zu TLS 1.3

Gruppen TLS 1.2

MerkmalErgebnisEinordnungFundstelle
secp256r1 B-0FA16EECentsprichtWird angeboten; empfohlen bis 2031.Abschn. 3.3.2, Tab. 6, S. 9
secp384r1 B-B58A40D0entsprichtWird angeboten; empfohlen bis 2031.Abschn. 3.3.2, Tab. 6, S. 9
secp521r1 B-C92DD4C7nicht prüfbarNicht prüfbar: Server wählte prime256v1, obwohl secp521r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob secp521r1 unterstützt wird, lässt sich so nicht entscheiden.–
x25519 B-D62F6E90nicht aufgeführtNicht in Tabelle 6. Kein bekannter Sicherheitsmangel. → M-streng_tabellenAbschn. 3.3.2, Tab. 6
x448 B-E68970F6nicht prüfbarNicht prüfbar: Server wählte prime256v1, obwohl x448 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob x448 unterstützt wird, lässt sich so nicht entscheiden.–
brainpoolP256r1 B-DB80A658nicht prüfbarNicht prüfbar: Server wählte prime256v1, obwohl brainpoolP256r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP256r1 unterstützt wird, lässt sich so nicht entscheiden.–
brainpoolP384r1 B-AAF7C283nicht prüfbarNicht prüfbar: Server wählte prime256v1, obwohl brainpoolP384r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP384r1 unterstützt wird, lässt sich so nicht entscheiden.–
brainpoolP512r1 B-982B5807nicht prüfbarNicht prüfbar: Server wählte prime256v1, obwohl brainpoolP512r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP512r1 unterstützt wird, lässt sich so nicht entscheiden.–

Post-Quanten-Vorbereitung

MerkmalErgebnisEinordnungFundstelle
SecP256r1MLKEM768, SecP384r1MLKEM1024 B-00988DEBEinordnungWird nachweislich nicht angeboten. Diese Hybridgruppen will das BSI in der nächsten Fassung empfehlen; ab 2032 gelten klassische Gruppen nur noch im Hybrideinsatz. → M-pqc_hybridAbschn. 3.1.3 und 3.4.2; BSI-Webseite

Signaturverfahren TLS 1.3

MerkmalErgebnisEinordnungFundstelle
ecdsa_secp256r1_sha256 B-67695234entsprichtWird verwendet; empfohlen bis 2032+.Abschn. 3.4.3, Tab. 11, S. 13

Zertifikat

MerkmalErgebnisEinordnungFundstelle
Schlüssel B-16CE4580entsprichtECDSA prime256v1 (256 Bit); Mindestlänge laut Tabelle 14: ECDSA 250 Bit.Abschn. 3.6.1, Tab. 14, S. 15
Signatur B-EFEBAB33entsprichtecdsa-with-SHA256 mit Ausstellerschlüssel prime256v1 entspricht ecdsa_secp256r1_sha256; empfohlen bis 2032+.Abschn. 3.4.3, Tab. 12, S. 14
Gültigkeit B-46ECE807entsprichtGültig vom 2026-10-29 bis 2027-01-27 (am Prüftag noch 89 Tage, Laufzeit 90 Tage).keine Vorgabe in TR-02102-2
Namenspassung B-EC7BCA88entspricht„musterserver.test“ steht im Zertifikat (SAN: musterserver.test).keine Vorgabe in TR-02102-2; RFC 6125
Vertrauenskette B-EAF0C886AbweichungDas Serverzertifikat ist selbst signiert und steht nicht im Vertrauensspeicher des Prüfsystems (DEPTH_ZERO_SELF_SIGNED_CERT). → M-zert_kettekeine Vorgabe in TR-02102-2

Erweiterungen TLS 1.2

MerkmalErgebnisEinordnungFundstelle
Extended Master Secret B-45046403entsprichtWird ausgehandelt.Abschn. 3.3.4.7, S. 12
Sichere Renegotiation (RFC 5746) B-D097B057entsprichtWird unterstützt. Ob der Server vom Client angestoßene Renegotiation ablehnt, prüft diese Version nicht.Abschn. 3.3.4.1, S. 10
Kompression B-3EB24389entsprichtServer wählt keine Kompression, obwohl angeboten.Abschn. 3.3.4.3, S. 11
Encrypt-then-MAC bei CBC B-8B9536F9entsprichtWird bei CBC-Suiten ausgehandelt.Abschn. 3.3.4.5 und Hinweise unter Tabellen 3, 4, 5, Tab. 3, 4, 5, S. 8, 9, 11

Grenzen dieser Messung

  • Momentaufnahme zum Prüfzeitpunkt für genau dieses Ziel; hinter Lastverteilern können einzelne Server unterschiedlich konfiguriert sein.
  • Nicht geprüft: Schwachstellen der Software (keine Angriffstests), 0-RTT, Session Resumption, Ablehnung clientseitiger Renegotiation, HTTP-Header, andere Ports, Sperrstatus von Zertifikaten (OCSP, CRL).
  • Vertrauen in die Zertifikatskette gilt aus Sicht des Prüfsystems und seines Vertrauensspeichers (Abschnitt „Zertifikat“); Clients mit anderem Speicher können anders entscheiden. Der vom Server gelieferte Ketteninhalt wird über TLS 1.2 gelesen; bei reinen TLS-1.3-Servern bleibt er unbekannt.
  • Welche Serversoftware und Version eingesetzt wird, misst der Bericht nicht. Konfigurationszeilen sind Beispiele mit Quelle, keine Zusage, dass sie auf Ihrem System so funktionieren.
  • Ein Erfolgskriterium prüft genau die genannte Messgröße bei einer erneuten Messung; nicht prüfbare Punkte gelten dabei nie als behoben.
  • ohne Zugangsdaten (PSK/SRP) nicht messbar; außerhalb des Prüfumfangs: 66 Verfahren, z. B. TLS_RSA_PSK_WITH_AES_256_GCM_SHA384, TLS_DHE_PSK_WITH_AES_256_GCM_SHA384, TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256
  • Server wählte prime256v1, obwohl secp521r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob secp521r1 unterstützt wird, lässt sich so nicht entscheiden: secp521r1
  • Server wählte prime256v1, obwohl x448 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob x448 unterstützt wird, lässt sich so nicht entscheiden: x448
  • Server wählte prime256v1, obwohl brainpoolP256r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP256r1 unterstützt wird, lässt sich so nicht entscheiden: brainpoolP256r1
  • Server wählte prime256v1, obwohl brainpoolP384r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP384r1 unterstützt wird, lässt sich so nicht entscheiden: brainpoolP384r1
  • Server wählte prime256v1, obwohl brainpoolP512r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP512r1 unterstützt wird, lässt sich so nicht entscheiden: brainpoolP512r1
  • statische (EC)DH-Suite, vom Prüfsystem (OpenSSL) nicht unterstützt: 16 Verfahren, z. B. TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256
  • PSK-Suite, ohne Zugangsdaten nicht messbar: TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256, TLS_ECDHE_PSK_WITH_AES_256_GCM_SHA384, TLS_ECDHE_PSK_WITH_AES_128_CCM_SHA256
  • Server wählte prime256v1, obwohl secp521r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob secp521r1 unterstützt wird, lässt sich so nicht entscheiden.: secp521r1
  • Server wählte prime256v1, obwohl x448 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob x448 unterstützt wird, lässt sich so nicht entscheiden.: x448
  • Server wählte prime256v1, obwohl brainpoolP256r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP256r1 unterstützt wird, lässt sich so nicht entscheiden.: brainpoolP256r1
  • Server wählte prime256v1, obwohl brainpoolP384r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP384r1 unterstützt wird, lässt sich so nicht entscheiden.: brainpoolP384r1
  • Server wählte prime256v1, obwohl brainpoolP512r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP512r1 unterstützt wird, lässt sich so nicht entscheiden.: brainpoolP512r1

Legende

  • entspricht Gemessen und in der TR empfohlen (bzw. nachweislich nicht angeboten, wo die TR das verlangt).
  • Abweichung Gemessen; von der TR ausdrücklich nicht empfohlen, abgelaufen oder Bedingung nachweislich nicht erfüllt.
  • Frist endet 2026 Gemessen; die Empfehlung endet am 31.12.2026.
  • nicht aufgeführt Gemessen; steht in keiner Tabelle der TR. Kein Urteil über die Sicherheit.
  • Einordnung Ergänzende Einordnung, zum Beispiel Post-Quanten-Vorbereitung.
  • nicht prüfbar Keine Aussage möglich; Grund in der Zeile.
  • B-… Kennung eines Befunds, gebildet aus Regel und Merkmal; sie bleibt bei jeder Messung gleich. M-… Kennung einer Maßnahme.

Anhang: Rohdaten

Im Bericht stehen die Rohdaten jeder Messung, damit Sie jeden Befund selbst nachprüfen können, z. B. mit openssl s_client. Regelwerk: regelwerk/tr-02102-2-2026-01.json, Version 2026-01, SHA-256 ba467dd6f7bd11c42c7c2b6dbb666b9369565ee4563fd1b402a4b2f50b932821.

Rohdaten dieses Musterberichts anzeigen
{
  "format": "ciphermeter-rohdaten/3",
  "ziel": {"host":"127.0.0.1","port":8443,"sni":"musterserver.test","adresse":"127.0.0.1"},
  "zeitpunkt": "2026-10-29T11:49:35.071Z",
  "werkzeug": {
    "pruefkern": "0.4.0",
    "node": "v24.19.0",
    "openssl_node": "3.5.7",
    "openssl_cli": "OpenSSL 3.5.7 9 Jun 2026 (Library: OpenSSL 3.5.7 9 Jun 2026)"
  },
  "verfahren": {
    "zeitlimit_ms": 6000,
    "pause_ms": 250,
    "wiederholung_bei_netzfehler": 1,
    "abbruch_nach_netzfehlern": 4,
    "beschreibung": "Node.js tls.connect (OpenSSL der Laufzeit), je Merkmal ein Handshake mit genau einem angebotenen Wert; TLS-1.2-Merkmale über eigenen ClientHello"
  },
  "standard_handshake": {
    "status": "ok",
    "protokoll": "TLSv1.3",
    "suite": {"name":"TLS_AES_256_GCM_SHA384","standardName":"TLS_AES_256_GCM_SHA384","version":"TLSv1.3"},
    "gruppe": {"type":"TLSGroup","name":"X25519MLKEM768"}
  },
  "zertifikat": {
    "status": "ok",
    "kette": [
      {
        "subject": "CN=musterserver.test",
        "issuer": "CN=musterserver.test",
        "san": "DNS:musterserver.test",
        "san_dns": ["musterserver.test"],
        "san_ip": [],
        "cn": "musterserver.test",
        "gueltigAb": "2026-10-29T11:49:32.000Z",
        "gueltigBis": "2027-01-27T11:49:32.000Z",
        "laufzeitTage": 90,
        "restTage": 89,
        "schluessel": "ec",
        "bits": null,
        "kurve": "prime256v1",
        "signatur": "ecdsa-with-SHA256",
        "signatur_oid": "1.2.840.10045.4.3.2",
        "signatur_hash": "sha256",
        "fingerprint256": "90:64:4C:E9:D3:4F:83:D7:D2:62:53:E6:5B:9A:E8:A6:56:6B:71:8E:87:FA:3D:A5:9A:68:34:D4:02:70:AF:06",
        "ca": true,
        "selbst_signiert": true
      }
    ],
    "vertrauenswuerdig": false,
    "fehler": "DEPTH_ZERO_SELF_SIGNED_CERT",
    "verfahren": "Standard-Handshake; Kette wie vom Prüfsystem gebildet (kann eine Wurzel aus dem Vertrauensspeicher enthalten); Vertrauen nur aus der Kettenprüfung, Namensabgleich getrennt",
    "pruefsystem": {
      "node": "v24.19.0",
      "openssl": "3.5.7",
      "vertrauensspeicher": "eingebaute Wurzelzertifikate von Node.js (Mozilla-Liste, 120 Einträge)",
      "namenspruefung": "getrennt (lib/zertifikat.js, RFC 6125)"
    },
    "geliefert": {
      "status": "geprueft",
      "verfahren": "eigener TLS-1.2-ClientHello; Certificate-Nachricht des Servers, Reihenfolge wie gesendet",
      "zertifikate": [
        {
          "subject": "CN=musterserver.test",
          "issuer": "CN=musterserver.test",
          "fingerprint256": "90:64:4C:E9:D3:4F:83:D7:D2:62:53:E6:5B:9A:E8:A6:56:6B:71:8E:87:FA:3D:A5:9A:68:34:D4:02:70:AF:06",
          "ca": true,
          "selbst_signiert": true,
          "gueltigBis": "2027-01-27T11:49:32.000Z"
        }
      ]
    }
  },
  "versionen": {
    "TLSv1": {
      "status": "abgelehnt",
      "grund": "Server lehnt mit TLS-Alarm protocol_version (70) ab",
      "verfahren": "Handshake nur mit TLSv1"
    },
    "TLSv1.1": {
      "status": "abgelehnt",
      "grund": "Server lehnt mit TLS-Alarm protocol_version (70) ab",
      "verfahren": "Handshake nur mit TLSv1.1"
    },
    "TLSv1.2": {"status":"angeboten","verfahren":"Handshake nur mit TLSv1.2"},
    "TLSv1.3": {"status":"angeboten","verfahren":"Handshake nur mit TLSv1.3"}
  },
  "tls12_suiten": {
    "status": "geprueft",
    "ausserhalb_pruefumfang": [
      "TLS_RSA_PSK_WITH_AES_256_GCM_SHA384",
      "TLS_DHE_PSK_WITH_AES_256_GCM_SHA384",
      "TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256",
      "TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256",
      "TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256",
      "TLS_DHE_PSK_WITH_AES_256_CCM",
      "TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384",
      "TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384",
      "TLS_PSK_WITH_AES_256_GCM_SHA384",
      "TLS_PSK_WITH_CHACHA20_POLY1305_SHA256",
      "TLS_PSK_WITH_AES_256_CCM",
      "TLS_PSK_WITH_ARIA_256_GCM_SHA384",
      "TLS_RSA_PSK_WITH_AES_128_GCM_SHA256",
      "TLS_DHE_PSK_WITH_AES_128_GCM_SHA256",
      "TLS_DHE_PSK_WITH_AES_128_CCM",
      "TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256",
      "TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256",
      "TLS_PSK_WITH_AES_128_GCM_SHA256",
      "TLS_PSK_WITH_AES_128_CCM",
      "TLS_PSK_WITH_ARIA_128_GCM_SHA256",
      "TLS_PSK_DHE_WITH_AES_256_CCM_8",
      "TLS_PSK_DHE_WITH_AES_128_CCM_8",
      "TLS_PSK_WITH_AES_256_CCM_8",
      "TLS_PSK_WITH_AES_128_CCM_8",
      "TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384",
      "TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA",
      "TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA",
      "TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA",
      "TLS_SRP_SHA_WITH_AES_256_CBC_SHA",
      "TLS_RSA_PSK_WITH_AES_256_CBC_SHA384",
      "TLS_DHE_PSK_WITH_AES_256_CBC_SHA384",
      "TLS_RSA_PSK_WITH_AES_256_CBC_SHA",
      "TLS_DHE_PSK_WITH_AES_256_CBC_SHA",
      "TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384",
      "TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384",
      "TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384",
      "TLS_PSK_WITH_AES_256_CBC_SHA384",
      "TLS_PSK_WITH_AES_256_CBC_SHA",
      "TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384",
      "TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA",
      "TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA",
      "TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA",
      "TLS_SRP_SHA_WITH_AES_128_CBC_SHA",
      "TLS_RSA_PSK_WITH_AES_128_CBC_SHA256",
      "TLS_DHE_PSK_WITH_AES_128_CBC_SHA256",
      "TLS_RSA_PSK_WITH_AES_128_CBC_SHA",
      "TLS_DHE_PSK_WITH_AES_128_CBC_SHA",
      "TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256",
      "TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256",
      "TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256",
      "TLS_PSK_WITH_AES_128_CBC_SHA256",
      "TLS_PSK_WITH_AES_128_CBC_SHA",
      "TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256",
      "TLS_ECDHE_PSK_WITH_NULL_SHA384",
      "TLS_ECDHE_PSK_WITH_NULL_SHA256",
      "TLS_ECDHE_PSK_WITH_NULL_SHA",
      "TLS_RSA_PSK_WITH_NULL_SHA384",
      "TLS_RSA_PSK_WITH_NULL_SHA256",
      "TLS_DHE_PSK_WITH_NULL_SHA384",
      "TLS_DHE_PSK_WITH_NULL_SHA256",
      "TLS_RSA_PSK_WITH_NULL_SHA",
      "TLS_DHE_PSK_WITH_NULL_SHA",
      "TLS_PSK_WITH_NULL_SHA384",
      "TLS_PSK_WITH_NULL_SHA256",
      "TLS_PSK_WITH_NULL_SHA"
    ],
    "eintraege": [
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
        "iana_code": "0xC0,0x2C",
        "openssl": "ECDHE-ECDSA-AES256-GCM-SHA384",
        "status": "angeboten",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES256-GCM-SHA384",
        "schluesselaustausch": {"type":"ECDH","name":"X25519","size":253}
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
        "iana_code": "0xC0,0x30",
        "openssl": "ECDHE-RSA-AES256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-AES256-GCM-SHA384"
      },
      {
        "name": "TLS_DHE_DSS_WITH_AES_256_GCM_SHA384",
        "iana_code": "0x00,0xA3",
        "openssl": "DHE-DSS-AES256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-AES256-GCM-SHA384"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384",
        "iana_code": "0x00,0x9F",
        "openssl": "DHE-RSA-AES256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES256-GCM-SHA384"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256",
        "iana_code": "0xCC,0xA9",
        "openssl": "ECDHE-ECDSA-CHACHA20-POLY1305",
        "status": "angeboten",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-CHACHA20-POLY1305",
        "schluesselaustausch": {"type":"ECDH","name":"X25519","size":253}
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256",
        "iana_code": "0xCC,0xA8",
        "openssl": "ECDHE-RSA-CHACHA20-POLY1305",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-CHACHA20-POLY1305"
      },
      {
        "name": "TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256",
        "iana_code": "0xCC,0xAA",
        "openssl": "DHE-RSA-CHACHA20-POLY1305",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-CHACHA20-POLY1305"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_256_CCM",
        "iana_code": "0xC0,0xAD",
        "openssl": "ECDHE-ECDSA-AES256-CCM",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES256-CCM"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_256_CCM",
        "iana_code": "0xC0,0x9F",
        "openssl": "DHE-RSA-AES256-CCM",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES256-CCM"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384",
        "iana_code": "0xC0,0x5D",
        "openssl": "ECDHE-ECDSA-ARIA256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-ARIA256-GCM-SHA384"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384",
        "iana_code": "0xC0,0x61",
        "openssl": "ECDHE-ARIA256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ARIA256-GCM-SHA384"
      },
      {
        "name": "TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384",
        "iana_code": "0xC0,0x57",
        "openssl": "DHE-DSS-ARIA256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-ARIA256-GCM-SHA384"
      },
      {
        "name": "TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384",
        "iana_code": "0xC0,0x53",
        "openssl": "DHE-RSA-ARIA256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-ARIA256-GCM-SHA384"
      },
      {
        "name": "TLS_DH_anon_WITH_AES_256_GCM_SHA384",
        "iana_code": "0x00,0xA7",
        "openssl": "ADH-AES256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-AES256-GCM-SHA384"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
        "iana_code": "0xC0,0x2B",
        "openssl": "ECDHE-ECDSA-AES128-GCM-SHA256",
        "status": "angeboten",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES128-GCM-SHA256",
        "schluesselaustausch": {"type":"ECDH","name":"X25519","size":253}
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "iana_code": "0xC0,0x2F",
        "openssl": "ECDHE-RSA-AES128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-AES128-GCM-SHA256"
      },
      {
        "name": "TLS_DHE_DSS_WITH_AES_128_GCM_SHA256",
        "iana_code": "0x00,0xA2",
        "openssl": "DHE-DSS-AES128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-AES128-GCM-SHA256"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256",
        "iana_code": "0x00,0x9E",
        "openssl": "DHE-RSA-AES128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES128-GCM-SHA256"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_128_CCM",
        "iana_code": "0xC0,0xAC",
        "openssl": "ECDHE-ECDSA-AES128-CCM",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES128-CCM"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_128_CCM",
        "iana_code": "0xC0,0x9E",
        "openssl": "DHE-RSA-AES128-CCM",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES128-CCM"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256",
        "iana_code": "0xC0,0x5C",
        "openssl": "ECDHE-ECDSA-ARIA128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-ARIA128-GCM-SHA256"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256",
        "iana_code": "0xC0,0x60",
        "openssl": "ECDHE-ARIA128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ARIA128-GCM-SHA256"
      },
      {
        "name": "TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256",
        "iana_code": "0xC0,0x56",
        "openssl": "DHE-DSS-ARIA128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-ARIA128-GCM-SHA256"
      },
      {
        "name": "TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256",
        "iana_code": "0xC0,0x52",
        "openssl": "DHE-RSA-ARIA128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-ARIA128-GCM-SHA256"
      },
      {
        "name": "TLS_DH_anon_WITH_AES_128_GCM_SHA256",
        "iana_code": "0x00,0xA6",
        "openssl": "ADH-AES128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-AES128-GCM-SHA256"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8",
        "iana_code": "0xC0,0xAF",
        "openssl": "ECDHE-ECDSA-AES256-CCM8",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES256-CCM8"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8",
        "iana_code": "0xC0,0xAE",
        "openssl": "ECDHE-ECDSA-AES128-CCM8",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES128-CCM8"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_256_CCM_8",
        "iana_code": "0xC0,0xA3",
        "openssl": "DHE-RSA-AES256-CCM8",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES256-CCM8"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_128_CCM_8",
        "iana_code": "0xC0,0xA2",
        "openssl": "DHE-RSA-AES128-CCM8",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES128-CCM8"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
        "iana_code": "0xC0,0x24",
        "openssl": "ECDHE-ECDSA-AES256-SHA384",
        "status": "angeboten",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES256-SHA384",
        "schluesselaustausch": {"type":"ECDH","name":"X25519","size":253}
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384",
        "iana_code": "0xC0,0x28",
        "openssl": "ECDHE-RSA-AES256-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-AES256-SHA384"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_256_CBC_SHA256",
        "iana_code": "0x00,0x6B",
        "openssl": "DHE-RSA-AES256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES256-SHA256"
      },
      {
        "name": "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256",
        "iana_code": "0x00,0x6A",
        "openssl": "DHE-DSS-AES256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-AES256-SHA256"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384",
        "iana_code": "0xC0,0x73",
        "openssl": "ECDHE-ECDSA-CAMELLIA256-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-CAMELLIA256-SHA384"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384",
        "iana_code": "0xC0,0x77",
        "openssl": "ECDHE-RSA-CAMELLIA256-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-CAMELLIA256-SHA384"
      },
      {
        "name": "TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256",
        "iana_code": "0x00,0xC4",
        "openssl": "DHE-RSA-CAMELLIA256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-CAMELLIA256-SHA256"
      },
      {
        "name": "TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256",
        "iana_code": "0x00,0xC3",
        "openssl": "DHE-DSS-CAMELLIA256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-CAMELLIA256-SHA256"
      },
      {
        "name": "TLS_DH_anon_WITH_AES_256_CBC_SHA256",
        "iana_code": "0x00,0x6D",
        "openssl": "ADH-AES256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-AES256-SHA256"
      },
      {
        "name": "TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256",
        "iana_code": "0x00,0xC5",
        "openssl": "ADH-CAMELLIA256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-CAMELLIA256-SHA256"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
        "iana_code": "0xC0,0x23",
        "openssl": "ECDHE-ECDSA-AES128-SHA256",
        "status": "angeboten",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES128-SHA256",
        "schluesselaustausch": {"type":"ECDH","name":"X25519","size":253}
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
        "iana_code": "0xC0,0x27",
        "openssl": "ECDHE-RSA-AES128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-AES128-SHA256"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_128_CBC_SHA256",
        "iana_code": "0x00,0x67",
        "openssl": "DHE-RSA-AES128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES128-SHA256"
      },
      {
        "name": "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256",
        "iana_code": "0x00,0x40",
        "openssl": "DHE-DSS-AES128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-AES128-SHA256"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256",
        "iana_code": "0xC0,0x72",
        "openssl": "ECDHE-ECDSA-CAMELLIA128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-CAMELLIA128-SHA256"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256",
        "iana_code": "0xC0,0x76",
        "openssl": "ECDHE-RSA-CAMELLIA128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-CAMELLIA128-SHA256"
      },
      {
        "name": "TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256",
        "iana_code": "0x00,0xBE",
        "openssl": "DHE-RSA-CAMELLIA128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-CAMELLIA128-SHA256"
      },
      {
        "name": "TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256",
        "iana_code": "0x00,0xBD",
        "openssl": "DHE-DSS-CAMELLIA128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-CAMELLIA128-SHA256"
      },
      {
        "name": "TLS_DH_anon_WITH_AES_128_CBC_SHA256",
        "iana_code": "0x00,0x6C",
        "openssl": "ADH-AES128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-AES128-SHA256"
      },
      {
        "name": "TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256",
        "iana_code": "0x00,0xBF",
        "openssl": "ADH-CAMELLIA128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-CAMELLIA128-SHA256"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA",
        "iana_code": "0xC0,0x0A",
        "openssl": "ECDHE-ECDSA-AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES256-SHA"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA",
        "iana_code": "0xC0,0x14",
        "openssl": "ECDHE-RSA-AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-AES256-SHA"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_256_CBC_SHA",
        "iana_code": "0x00,0x39",
        "openssl": "DHE-RSA-AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES256-SHA"
      },
      {
        "name": "TLS_DHE_DSS_WITH_AES_256_CBC_SHA",
        "iana_code": "0x00,0x38",
        "openssl": "DHE-DSS-AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-AES256-SHA"
      },
      {
        "name": "TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA",
        "iana_code": "0x00,0x88",
        "openssl": "DHE-RSA-CAMELLIA256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-CAMELLIA256-SHA"
      },
      {
        "name": "TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA",
        "iana_code": "0x00,0x87",
        "openssl": "DHE-DSS-CAMELLIA256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-CAMELLIA256-SHA"
      },
      {
        "name": "TLS_ECDH_anon_WITH_AES_256_CBC_SHA",
        "iana_code": "0xC0,0x19",
        "openssl": "AECDH-AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AECDH-AES256-SHA"
      },
      {
        "name": "TLS_DH_anon_WITH_AES_256_CBC_SHA",
        "iana_code": "0x00,0x3A",
        "openssl": "ADH-AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-AES256-SHA"
      },
      {
        "name": "TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA",
        "iana_code": "0x00,0x89",
        "openssl": "ADH-CAMELLIA256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-CAMELLIA256-SHA"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA",
        "iana_code": "0xC0,0x09",
        "openssl": "ECDHE-ECDSA-AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-AES128-SHA"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA",
        "iana_code": "0xC0,0x13",
        "openssl": "ECDHE-RSA-AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-AES128-SHA"
      },
      {
        "name": "TLS_DHE_RSA_WITH_AES_128_CBC_SHA",
        "iana_code": "0x00,0x33",
        "openssl": "DHE-RSA-AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-AES128-SHA"
      },
      {
        "name": "TLS_DHE_DSS_WITH_AES_128_CBC_SHA",
        "iana_code": "0x00,0x32",
        "openssl": "DHE-DSS-AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-AES128-SHA"
      },
      {
        "name": "TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA",
        "iana_code": "0x00,0x45",
        "openssl": "DHE-RSA-CAMELLIA128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-RSA-CAMELLIA128-SHA"
      },
      {
        "name": "TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA",
        "iana_code": "0x00,0x44",
        "openssl": "DHE-DSS-CAMELLIA128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite DHE-DSS-CAMELLIA128-SHA"
      },
      {
        "name": "TLS_ECDH_anon_WITH_AES_128_CBC_SHA",
        "iana_code": "0xC0,0x18",
        "openssl": "AECDH-AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AECDH-AES128-SHA"
      },
      {
        "name": "TLS_DH_anon_WITH_AES_128_CBC_SHA",
        "iana_code": "0x00,0x34",
        "openssl": "ADH-AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-AES128-SHA"
      },
      {
        "name": "TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA",
        "iana_code": "0x00,0x46",
        "openssl": "ADH-CAMELLIA128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ADH-CAMELLIA128-SHA"
      },
      {
        "name": "TLS_RSA_WITH_AES_256_GCM_SHA384",
        "iana_code": "0x00,0x9D",
        "openssl": "AES256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES256-GCM-SHA384"
      },
      {
        "name": "TLS_RSA_WITH_AES_256_CCM",
        "iana_code": "0xC0,0x9D",
        "openssl": "AES256-CCM",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES256-CCM"
      },
      {
        "name": "TLS_RSA_WITH_ARIA_256_GCM_SHA384",
        "iana_code": "0xC0,0x51",
        "openssl": "ARIA256-GCM-SHA384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ARIA256-GCM-SHA384"
      },
      {
        "name": "TLS_RSA_WITH_AES_128_GCM_SHA256",
        "iana_code": "0x00,0x9C",
        "openssl": "AES128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES128-GCM-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_AES_128_CCM",
        "iana_code": "0xC0,0x9C",
        "openssl": "AES128-CCM",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES128-CCM"
      },
      {
        "name": "TLS_RSA_WITH_ARIA_128_GCM_SHA256",
        "iana_code": "0xC0,0x50",
        "openssl": "ARIA128-GCM-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ARIA128-GCM-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_AES_256_CCM_8",
        "iana_code": "0xC0,0xA1",
        "openssl": "AES256-CCM8",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES256-CCM8"
      },
      {
        "name": "TLS_RSA_WITH_AES_128_CCM_8",
        "iana_code": "0xC0,0xA0",
        "openssl": "AES128-CCM8",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES128-CCM8"
      },
      {
        "name": "TLS_RSA_WITH_AES_256_CBC_SHA256",
        "iana_code": "0x00,0x3D",
        "openssl": "AES256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES256-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256",
        "iana_code": "0x00,0xC0",
        "openssl": "CAMELLIA256-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite CAMELLIA256-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_AES_128_CBC_SHA256",
        "iana_code": "0x00,0x3C",
        "openssl": "AES128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES128-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256",
        "iana_code": "0x00,0xBA",
        "openssl": "CAMELLIA128-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite CAMELLIA128-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_AES_256_CBC_SHA",
        "iana_code": "0x00,0x35",
        "openssl": "AES256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES256-SHA"
      },
      {
        "name": "TLS_RSA_WITH_CAMELLIA_256_CBC_SHA",
        "iana_code": "0x00,0x84",
        "openssl": "CAMELLIA256-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite CAMELLIA256-SHA"
      },
      {
        "name": "TLS_RSA_WITH_AES_128_CBC_SHA",
        "iana_code": "0x00,0x2F",
        "openssl": "AES128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AES128-SHA"
      },
      {
        "name": "TLS_RSA_WITH_CAMELLIA_128_CBC_SHA",
        "iana_code": "0x00,0x41",
        "openssl": "CAMELLIA128-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite CAMELLIA128-SHA"
      },
      {
        "name": "TLS_ECDHE_ECDSA_WITH_NULL_SHA",
        "iana_code": "0xC0,0x06",
        "openssl": "ECDHE-ECDSA-NULL-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-ECDSA-NULL-SHA"
      },
      {
        "name": "TLS_ECDHE_RSA_WITH_NULL_SHA",
        "iana_code": "0xC0,0x10",
        "openssl": "ECDHE-RSA-NULL-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite ECDHE-RSA-NULL-SHA"
      },
      {
        "name": "TLS_ECDH_anon_WITH_NULL_SHA",
        "iana_code": "0xC0,0x15",
        "openssl": "AECDH-NULL-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite AECDH-NULL-SHA"
      },
      {
        "name": "TLS_RSA_WITH_NULL_SHA256",
        "iana_code": "0x00,0x3B",
        "openssl": "NULL-SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite NULL-SHA256"
      },
      {
        "name": "TLS_RSA_WITH_NULL_SHA",
        "iana_code": "0x00,0x02",
        "openssl": "NULL-SHA",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite NULL-SHA"
      },
      {
        "name": "TLS_RSA_WITH_NULL_MD5",
        "iana_code": "0x00,0x01",
        "openssl": "NULL-MD5",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.2, nur Suite NULL-MD5"
      }
    ]
  },
  "tls13_suiten": {
    "status": "geprueft",
    "eintraege": [
      {"name":"TLS_AES_128_GCM_SHA256","status":"angeboten","verfahren":"TLS 1.3, nur Suite TLS_AES_128_GCM_SHA256"},
      {"name":"TLS_AES_256_GCM_SHA384","status":"angeboten","verfahren":"TLS 1.3, nur Suite TLS_AES_256_GCM_SHA384"},
      {
        "name": "TLS_CHACHA20_POLY1305_SHA256",
        "status": "angeboten",
        "verfahren": "TLS 1.3, nur Suite TLS_CHACHA20_POLY1305_SHA256"
      },
      {
        "name": "TLS_AES_128_CCM_SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Suite TLS_AES_128_CCM_SHA256"
      },
      {
        "name": "TLS_AES_128_CCM_8_SHA256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Suite TLS_AES_128_CCM_8_SHA256"
      }
    ]
  },
  "gruppen_tls13": {
    "status": "geprueft",
    "eintraege": [
      {"name":"secp256r1","status":"angeboten","verfahren":"TLS 1.3, nur Gruppe secp256r1"},
      {"name":"secp384r1","status":"angeboten","verfahren":"TLS 1.3, nur Gruppe secp384r1"},
      {
        "name": "secp521r1",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe secp521r1"
      },
      {"name":"x25519","status":"angeboten","verfahren":"TLS 1.3, nur Gruppe x25519"},
      {
        "name": "x448",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe x448"
      },
      {
        "name": "brainpoolP256r1tls13",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe brainpoolP256r1tls13"
      },
      {
        "name": "brainpoolP384r1tls13",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe brainpoolP384r1tls13"
      },
      {
        "name": "brainpoolP512r1tls13",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe brainpoolP512r1tls13"
      },
      {
        "name": "ffdhe2048",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe ffdhe2048"
      },
      {
        "name": "ffdhe3072",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe ffdhe3072"
      },
      {
        "name": "ffdhe4096",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe ffdhe4096"
      },
      {
        "name": "ffdhe6144",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe ffdhe6144"
      },
      {
        "name": "ffdhe8192",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe ffdhe8192"
      },
      {"name":"X25519MLKEM768","status":"angeboten","verfahren":"TLS 1.3, nur Gruppe X25519MLKEM768"},
      {
        "name": "SecP256r1MLKEM768",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe SecP256r1MLKEM768"
      },
      {
        "name": "SecP384r1MLKEM1024",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe SecP384r1MLKEM1024"
      },
      {
        "name": "MLKEM768",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe MLKEM768"
      },
      {
        "name": "MLKEM1024",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur Gruppe MLKEM1024"
      }
    ]
  },
  "gruppen_tls12": {
    "status": "geprueft",
    "eintraege": [
      {"name":"secp256r1","status":"angeboten","verfahren":"TLS 1.2 ECDHE, nur Gruppe secp256r1"},
      {
        "name": "secp384r1",
        "status": "angeboten",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe secp384r1 und ergänzend secp384r1 + Zertifikatskurve secp256r1"
      },
      {
        "name": "secp521r1",
        "status": "nicht_pruefbar",
        "art": "methode",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe secp521r1 und ergänzend secp521r1 + Zertifikatskurve secp256r1",
        "grund": "Server wählte prime256v1, obwohl secp521r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob secp521r1 unterstützt wird, lässt sich so nicht entscheiden"
      },
      {
        "name": "x25519",
        "status": "angeboten",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe x25519 und ergänzend x25519 + Zertifikatskurve secp256r1"
      },
      {
        "name": "x448",
        "status": "nicht_pruefbar",
        "art": "methode",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe x448 und ergänzend x448 + Zertifikatskurve secp256r1",
        "grund": "Server wählte prime256v1, obwohl x448 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob x448 unterstützt wird, lässt sich so nicht entscheiden"
      },
      {
        "name": "brainpoolP256r1",
        "status": "nicht_pruefbar",
        "art": "methode",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe brainpoolP256r1 und ergänzend brainpoolP256r1 + Zertifikatskurve secp256r1",
        "grund": "Server wählte prime256v1, obwohl brainpoolP256r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP256r1 unterstützt wird, lässt sich so nicht entscheiden"
      },
      {
        "name": "brainpoolP384r1",
        "status": "nicht_pruefbar",
        "art": "methode",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe brainpoolP384r1 und ergänzend brainpoolP384r1 + Zertifikatskurve secp256r1",
        "grund": "Server wählte prime256v1, obwohl brainpoolP384r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP384r1 unterstützt wird, lässt sich so nicht entscheiden"
      },
      {
        "name": "brainpoolP512r1",
        "status": "nicht_pruefbar",
        "art": "methode",
        "verfahren": "TLS 1.2 ECDHE, nur Gruppe brainpoolP512r1 und ergänzend brainpoolP512r1 + Zertifikatskurve secp256r1",
        "grund": "Server wählte prime256v1, obwohl brainpoolP512r1 zuerst angeboten war. Mit diesem Zertifikat müssen TLS-1.2-Clients die Zertifikatskurve mitanbieten; ob brainpoolP512r1 unterstützt wird, lässt sich so nicht entscheiden"
      }
    ]
  },
  "signaturen_tls13": {
    "status": "geprueft",
    "eintraege": [
      {
        "name": "ecdsa_secp256r1_sha256",
        "status": "angeboten",
        "verfahren": "TLS 1.3, nur signature_algorithms ecdsa_secp256r1_sha256"
      },
      {
        "name": "ecdsa_secp384r1_sha384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ecdsa_secp384r1_sha384"
      },
      {
        "name": "ecdsa_secp521r1_sha512",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ecdsa_secp521r1_sha512"
      },
      {
        "name": "ecdsa_brainpoolP256r1tls13_sha256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ecdsa_brainpoolP256r1tls13_sha256"
      },
      {
        "name": "ecdsa_brainpoolP384r1tls13_sha384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ecdsa_brainpoolP384r1tls13_sha384"
      },
      {
        "name": "ecdsa_brainpoolP512r1tls13_sha512",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ecdsa_brainpoolP512r1tls13_sha512"
      },
      {
        "name": "rsa_pss_rsae_sha256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms rsa_pss_rsae_sha256"
      },
      {
        "name": "rsa_pss_rsae_sha384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms rsa_pss_rsae_sha384"
      },
      {
        "name": "rsa_pss_rsae_sha512",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms rsa_pss_rsae_sha512"
      },
      {
        "name": "rsa_pss_pss_sha256",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms rsa_pss_pss_sha256"
      },
      {
        "name": "rsa_pss_pss_sha384",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms rsa_pss_pss_sha384"
      },
      {
        "name": "rsa_pss_pss_sha512",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms rsa_pss_pss_sha512"
      },
      {
        "name": "ed25519",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ed25519"
      },
      {
        "name": "ed448",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms ed448"
      },
      {
        "name": "mldsa44",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms mldsa44"
      },
      {
        "name": "mldsa65",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms mldsa65"
      },
      {
        "name": "mldsa87",
        "status": "abgelehnt",
        "grund": "Server lehnt mit TLS-Alarm handshake_failure (40) ab",
        "verfahren": "TLS 1.3, nur signature_algorithms mldsa87"
      }
    ]
  },
  "tls12_merkmale": {
    "status": "geprueft",
    "extended_master_secret": {
      "wert": "ja",
      "verfahren": "eigener TLS-1.2-ClientHello, bietet DEFLATE-Kompression, extended_master_secret, encrypt_then_mac und renegotiation_info an; ausgewertet: ServerHello"
    },
    "sichere_renegotiation": {
      "wert": "ja",
      "verfahren": "eigener TLS-1.2-ClientHello, bietet DEFLATE-Kompression, extended_master_secret, encrypt_then_mac und renegotiation_info an; ausgewertet: ServerHello"
    },
    "kompression": {
      "wert": "nein",
      "verfahren": "eigener TLS-1.2-ClientHello, bietet DEFLATE-Kompression, extended_master_secret, encrypt_then_mac und renegotiation_info an; ausgewertet: ServerHello"
    },
    "encrypt_then_mac_bei_cbc": {
      "wert": "ja",
      "verfahren": "eigener TLS-1.2-ClientHello, bietet DEFLATE-Kompression, extended_master_secret, encrypt_then_mac und renegotiation_info an; ausgewertet: ServerHello (nur CBC-Suiten)"
    }
  },
  "handshakes": 151,
  "erfolgreiche_handshakes": 26,
  "messstatus": "vollstaendig",
  "nicht_pruefbar": 0
}

Konfigurationshinweise

Für diesen Server ergeben sich zwei optionale Schritte. Beide sind keine Pflicht aus Sicherheitsgründen, sondern betreffen den Abgleich mit den Tabellen und die Vorbereitung auf 2032.

1. Post-Quanten-Hybridgruppen ergänzen

Ab 2032 sollen klassische Gruppen in TLS 1.3 nur noch hybrid eingesetzt werden. SecP256r1MLKEM768 und SecP384r1MLKEM1024 sind laut BSI-Webseite schon heute einsetzbar. Voraussetzung: OpenSSL ab Version 3.5.

nginx (mit OpenSSL ab 3.5):

ssl_ecdh_curve X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:X25519:secp256r1:secp384r1;

Apache (2.4 mit OpenSSL ab 3.5):

SSLOpenSSLConfCmd Groups X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:X25519:secp256r1:secp384r1

2. Nur, wenn Sie streng nach den Tabellen konfigurieren müssen

Verlangt Ihr Auftraggeber ausdrücklich nur Verfahren aus den Tabellen, nehmen Sie X25519 (als alleinige Gruppe) und ChaCha20-Poly1305 heraus. Folgen: Geräte ohne AES-Beschleunigung handeln AES-GCM aus und sind etwas langsamer; Clients, die nur X25519 anbieten, können sich nicht mehr verbinden. Beides ist selten. Testen Sie vorher mit Ihren wichtigsten Clients.

nginx:

ssl_ecdh_curve X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:secp256r1:secp384r1;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384;
ssl_conf_command Ciphersuites TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256;

Apache:

SSLOpenSSLConfCmd Groups X25519MLKEM768:SecP256r1MLKEM768:SecP384r1MLKEM1024:secp256r1:secp384r1
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384
SSLCipherSuite TLSv1.3 TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256

Prüfen Sie Änderungen zuerst auf einem Testsystem. Wir ändern nichts an Ihrem Server.

Was dieser Bericht nicht prüft

  • Schwachstellen der Software (keine Angriffstests, zum Beispiel kein Heartbleed- oder ROBOT-Test)
  • 0-RTT, Session Resumption und ob der Server vom Client angestoßene Renegotiation ablehnt
  • Die Anwendung hinter dem Server, HTTP-Header und andere Ports
  • Vorgaben aus anderen Richtlinien (z. B. TR-03116-4, Mindeststandard des Bundes)

Maßstab ist die BSI TR-02102-2 in der Version 2026-01. Der Bericht ist eine Momentaufnahme, keine Zertifizierung und kein Siegel; er ist nicht vom BSI geprüft oder anerkannt.

Ihr Bericht

35 € inkl. 19 % MwSt. je Host und Port. Sie erhalten den Bericht als PDF mit demselben Aufbau wie oben (Gesamtergebnis, Befunde je Verfahren mit Fundstelle, nächste Schritte, Rohdaten im Anhang) und eine Rechnung. Die ausführlichen Konfigurationshinweise oben sind ein Zusatz dieser Musterseite; in Ihrem Bericht stehen die passenden Zeilen unter „Maßnahmen im Detail“. Lieferung binnen eines Werktags nach Zahlungseingang per E-Mail als persönlicher Link, 30 Tage abrufbar.