MINT lernen

Zertifikate

Zwei Aufgaben zur Vertrauenskette – vom Schloss-Symbol im Browser bis zum eigenen Prüfalgorithmus.

Dein Fortschritt:
0 / 0 Aufgaben
1

Das Zertifikat der Lernplattform

AFB I–II

Die Schülerinnen und Schüler eines Gymnasiums melden sich über das Schul-WLAN bei der Lernplattform https://lernen.bildungsportal-nds.example an. Lea klickt im Browser auf das Schloss-Symbol und lässt sich das Zertifikat anzeigen (Material M1). Heute ist der 25.09.2026.

M1Zertifikatsanzeige im Browser (Auszug)
FeldServerzertifikatZwischenzertifikat
InhaberCN = lernen.bildungsportal-nds.exampleCN = Weserland TLS CA 3
AusstellerCN = Weserland TLS CA 3CN = Weserland Root CA
gültig von04.08.202615.01.2024
gültig bis02.11.202614.01.2030
öffentlicher SchlüsselRSA, 2048 Bit: 30 82 01 0a 02 82 …RSA, 4096 Bit: 30 82 02 0a 02 82 …
SignaturalgorithmusSHA-256 mit RSASHA-384 mit RSA
Signatur5f 3a 9c 07 … (256 Byte)a1 04 e8 72 … (512 Byte)
Das Zertifikat „Weserland Root CA“ ist im Betriebssystem vorinstalliert.
  1. Geben Sie an, wem das Serverzertifikat gehört, wer es ausgestellt hat und in welchem Zeitraum es gültig ist.
  2. Erstellen Sie für den Aufruf der Lernplattform eine Prüftabelle, aus der hervorgeht, welche Signatur mit welchem öffentlichen Schlüssel geprüft wird und welche weiteren Prüfungen der Browser vornimmt. Tragen Sie für heute jeweils das Ergebnis ein.
  3. Erläutern Sie am Beispiel eines Angreifers im Schul-WLAN, der sich als Lernplattform ausgibt, wie das Zertifikat verhindert, dass er Lea seinen eigenen öffentlichen Schlüssel unterschiebt.

Hinweise

Hinweis zu Aufgabe a)
Inhaber und Aussteller stehen in eigenen Feldern; achten Sie darauf, nicht das Zwischenzertifikat zu beschreiben.
Hinweis zu Aufgabe b)
Jede Stufe wird mit dem öffentlichen Schlüssel der Stufe darüber geprüft. Denken Sie außerdem an Zeitraum, Domainname und Widerruf.Erstellen: bekanntes Verfahren auf die neue Kette anwenden und als Tabelle festhalten.
Hinweis zu Aufgabe c)
Was müsste der Angreifer vorlegen, damit Leas Browser seinen Schlüssel akzeptiert? Welche Stelle müsste er dafür täuschen oder welchen Schlüssel besitzen?

Erwartungshorizont

Erwartungshorizont zu Aufgabe a)
  • Inhaber: lernen.bildungsportal-nds.example (die Lernplattform)
  • Aussteller: Weserland TLS CA 3 (eine Zwischen-CA)
  • Gültigkeit: 04.08.2026 bis 02.11.2026
Erwartungshorizont zu Aufgabe b)
Prüfungwomit?Ergebnis
Signatur des Serverzertifikatsöffentlicher Schlüssel der Weserland TLS CA 3 (aus dem Zwischenzertifikat)korrekt, sofern Hashwerte übereinstimmen
Signatur des Zwischenzertifikatsöffentlicher Schlüssel der Weserland Root CA (vorinstalliert)korrekt, sofern Hashwerte übereinstimmen
VertrauensankerListe der vorinstallierten WurzelzertifikateWeserland Root CA ist enthalten ✓
Zeitraum ServerDatum 25.09.2026liegt in 04.08.–02.11.2026 ✓
Zeitraum Zwischen-CADatum 25.09.2026liegt in 15.01.2024–14.01.2030 ✓
Domainnameaufgerufene Adressestimmt mit dem Inhaber überein ✓
WiderrufSperrinformation der CA (Sperrliste bzw. Online-Abfrage)nicht gesperrt (Annahme) ✓

Erst wenn alle Prüfungen bestanden sind, nutzt der Browser den öffentlichen Schlüssel aus dem Serverzertifikat beim Verbindungsaufbau.

Erwartungshorizont zu Aufgabe c)

Ohne Zertifikat könnte der Angreifer die Verbindung abfangen und Lea seinen eigenen öffentlichen Schlüssel schicken; Lea würde für ihn verschlüsseln bzw. ihm vertrauen (Man-in-the-Middle).

Mit Zertifikaten verlangt der Browser ein Zertifikat für lernen.bildungsportal-nds.example, das über eine Kette zu einer vorinstallierten Wurzel-CA führt. Der Angreifer hat zwei Möglichkeiten, die beide scheitern:

  • Er legt das echte Zertifikat vor: Darin steht der Schlüssel der Lernplattform; den passenden privaten Schlüssel hat er nicht, er kann den Verbindungsaufbau also nicht korrekt signieren bzw. entschlüsseln.
  • Er legt ein eigenes Zertifikat mit seinem Schlüssel vor: Ändert er ein echtes Zertifikat, passt die Signatur der CA nicht mehr; ein selbst erstelltes Zertifikat ist von keiner vertrauenswürdigen CA signiert. Eine seriöse CA stellt ihm keines für diese Domain aus, weil er deren Kontrolle nicht nachweisen kann.

Der Browser zeigt deshalb eine Warnung. Voraussetzung ist, dass Lea diese nicht wegklickt und die CAs sorgfältig arbeiten.

2

Zertifikatsketten automatisch prüfen

AFB II–III

Die Informatik-AG des Gymnasiums „Am See“ betreibt mehrere Webdienste. Um zu verstehen, was ein Browser beim Verbindungsaufbau prüft, soll ein vereinfachter Prüfalgorithmus für Zertifikatsketten in Python entstehen (Material M2). Getestet wird mit vier Verbindungen (Material M3).

M2Datenmodell des Prototyps (Python)
# Ein Zertifikat als Dictionary, Datumsangaben als Zahl JJJJMMTT, z. B.
# {"inhaber": "cloud.schule-am-see.example", "aussteller": "Seeblick TLS CA",
#  "von": 20260715, "bis": 20261013, "seriennr": 4714, "schluessel": ...}
#
# kette      Liste: kette[0] = Serverzertifikat, danach die Zwischenzertifikate
# wurzeln    Dictionary: Name der Wurzel-CA -> öffentlicher Schlüssel (vorinstalliert)
# sperrliste Liste der Seriennummern gesperrter Zertifikate
#
# vorhanden: signatur_ok(zert, oeff_schluessel) liefert True, wenn die
#            Signatur von zert mit oeff_schluessel erfolgreich geprüft wurde
M3Testverbindungen am 25.09.2026
aufgerufene DomainServerzertifikat: Inhaber / AusstellergültigSeriennr.
portal.schule-am-see.exampleportal.schule-am-see.example / Seeblick TLS CA01.08.2026–30.10.20264711
mensa.schule-am-see.examplemensa.schule-am-see.example / Seeblick TLS CA 201.08.2026–30.10.20264712
bibliothek.schule-am-see.examplebibliothek.schule-am-see.example / Seeblick TLS CA01.10.2026–29.12.20264713
cloud.schule-am-see.examplecloud.schule-am-see.example / Seeblick TLS CA15.07.2026–13.10.20264714
Jeder Server schickt dasselbe Zwischenzertifikat mit: Inhaber „Seeblick TLS CA“, Aussteller „Seeblick Root CA“ (vorinstalliert), gültig 2025–2029, nicht gesperrt. Sperrliste: [4711]. Alle Signaturen sind mathematisch korrekt.
  1. Ermitteln Sie für jede Verbindung in M3, ob der Browser das Serverzertifikat akzeptiert, und nennen Sie gegebenenfalls die fehlgeschlagene Prüfung.
  2. Implementieren Sie eine Funktion kette_pruefen(kette, wurzeln, domain, heute, sperrliste), die genau dann True liefert, wenn die Kette alle Prüfungen besteht. Nutzen Sie das Datenmodell aus M2.
  3. Bewerten Sie den Vorschlag der Schul-IT, auf allen Geräten der Schülerinnen und Schüler ein eigenes Wurzelzertifikat „Schule am See Root CA“ zu installieren, damit der Webfilter auch HTTPS-Verbindungen öffnen und prüfen kann.

Hinweise

Hinweis zu Aufgabe a)
Gehen Sie für jede Zeile die Prüfungen der Reihe nach durch: Name, Zeitraum, Widerruf, Verkettung (Aussteller = Inhaber der nächsten Stufe), Wurzel.
Hinweis zu Aufgabe b)
Laufen Sie mit einer Schleife über die Kette. Für jedes Zertifikat brauchen Sie den öffentlichen Schlüssel der nächsthöheren Stufe – beim obersten kommt er aus wurzeln.
Hinweis zu Aufgabe c)
Kriterien: Schutzwirkung für die Lernenden, Möglichkeiten dessen, der den privaten Schlüssel dieser Root CA besitzt, Folgen eines Diebstahls, Privatsphäre (z. B. Online-Banking), Alternativen.Bewerten: an Kriterien messen und zu einem begründeten Urteil kommen.

Erwartungshorizont

Erwartungshorizont zu Aufgabe a)
Domainakzeptiert?Grund
portalneinSeriennummer 4711 steht auf der Sperrliste (widerrufen).
mensaneinAussteller „Seeblick TLS CA 2“ ≠ Inhaber des mitgeschickten Zwischenzertifikats „Seeblick TLS CA“: Kette unterbrochen, die Signatur kann nicht mit einem vertrauenswürdigen Schlüssel geprüft werden.
bibliothekneinnoch nicht gültig (erst ab 01.10.2026).
cloudjaName, Zeitraum, Sperrstatus, Verkettung und Wurzel stimmen.
Erwartungshorizont zu Aufgabe b)
def kette_pruefen(kette, wurzeln, domain, heute, sperrliste):
    if kette[0]["inhaber"] != domain:
        return False
    for i in range(len(kette)):
        z = kette[i]
        if not (z["von"] <= heute <= z["bis"]):
            return False
        if z["seriennr"] in sperrliste:
            return False
        if i + 1 < len(kette):
            # es gibt eine höhere Stufe in der Kette
            oben = kette[i + 1]
            if z["aussteller"] != oben["inhaber"]:
                return False    # Kette unterbrochen
            schluessel = oben["schluessel"]
        else:
            # oberstes Zertifikat der Kette
            if z["aussteller"] not in wurzeln:
                return False    # unbekannte Wurzel
            schluessel = wurzeln[z["aussteller"]]
        if not signatur_ok(z, schluessel):
            return False
    return True

Für die Daten aus M3 liefert die Funktion False, False, False, True. Gleichwertige Lösungen (z. B. mit while oder Hilfsfunktionen) sind zu akzeptieren; wesentlich sind alle fünf Prüfungen und die richtige Schlüsselwahl je Stufe.

Erwartungshorizont zu Aufgabe c)

Für den Vorschlag: Der Filter kann auch verschlüsselte Seiten auf Schadsoftware und jugendgefährdende Inhalte prüfen; das dient dem Schutz der Lernenden und erfüllt ggf. Aufsichtspflichten.

Gegen den Vorschlag:

  • Wer den privaten Schlüssel dieser Root CA besitzt, kann für jede Domain (auch Bank, E-Mail, Messenger) Zertifikate ausstellen, die die Geräte akzeptieren – der Filter ist technisch ein erlaubter Man-in-the-Middle und kann alles mitlesen.
  • Wird der Schlüssel gestohlen, können Angreifer sich gegenüber allen Schülergeräten als beliebige Webseite ausgeben – auch außerhalb der Schule, solange das Wurzelzertifikat installiert bleibt.
  • Die Privatsphäre (Online-Banking, private Nachrichten) wird verletzt; bei privaten Geräten ist das rechtlich und ethisch besonders heikel.
  • Die Ende-zu-Ende-Idee von HTTPS wird aufgehoben; Nutzer sehen weiterhin ein Schloss.

Alternativen: Filtern über DNS bzw. Domainlisten ohne Entschlüsseln, Einsatz nur auf schuleigenen, verwalteten Geräten, Ausnahmen für sensible Kategorien (Banken), strenger Schutz des CA-Schlüssels (Hardware-Sicherheitsmodul), Entfernen des Zertifikats beim Verlassen der Schule, Transparenz gegenüber Eltern und Lernenden.

Urteil (Beispiel): Für private Geräte ist der Vorschlag abzulehnen, weil das Risiko für alle Verbindungen den Nutzen deutlich übersteigt. Für schuleigene Geräte ist er nur mit strengen Auflagen vertretbar. Andere begründete Urteile sind möglich.