Seminar GnuTLS API-Entwicklung für TLS-Clients und -Server

Dieses Entwicklerseminar vermittelt die systematische Umsetzung belastbarer TLS-Clients und TLS-Server mit der nativen GnuTLS-API. Im Mittelpunkt stehen ein sauberer Zustandsaufbau, nachvollziehbares Fehlerverhalten und eine Architektur, die kryptografische Konfiguration von Transport, Protokoll und Fachlogik trennt.

Alle Arbeitsschritte werden an kompakten C-Beispielen durchgeführt. Neben dem Handshake werden Zertifikatsprüfung, Authentifizierungsvarianten, nichtblockierende Ein-/Ausgabe, Sitzungswiederaufnahme, Shutdown, Logging, Tests und produktionsreife Betriebsanforderungen behandelt.

Inhaltsverzeichnis

  • Seminarprofil
  • Lernziele
  • Zielgruppe und Voraussetzungen
  • 1. Architektur und Lebenszyklus einer GnuTLS-Sitzung
  • 2. TLS-Client schrittweise implementieren
  • 3. TLS-Server und Credentials aufbauen
  • 4. Datenübertragung und geordneter Sitzungsabbau
  • 5. Zertifikatsprüfung und alternative Authentifizierung
  • 6. Sitzungswiederaufnahme, TLS 1.3 und Performance
  • 7. Diagnose, Tests und Härtung
  • Praxisübungen
  • Einordnung in den Lernpfad

Seminarprofil

Die Inhalte sind als zusammenhängende Arbeitsstrecke aufgebaut. Fachliche Einordnung, Konfiguration beziehungsweise Implementierung, kontrollierte Prüfung und betriebliche Dokumentation greifen ineinander. Die Übungen verwenden ausschließlich Labor- und Testdaten.

Lernziele

  • GnuTLS global, pro Prozess und pro Sitzung korrekt initialisieren.
  • TLS-Clients und TLS-Server mit klaren Zustandsübergängen implementieren.
  • Zertifikate, Prioritätsstrings und Authentifizierungsdaten sicher anbinden.
  • Nichtblockierende Handshakes, Transportfehler und Timeouts kontrolliert behandeln.
  • Testbarkeit, Diagnosefähigkeit und sichere Standardwerte in die Anwendung integrieren.

Zielgruppe und Voraussetzungen

Zielgruppe: Softwareentwickler, Systemprogrammierer, Maintainer nativer Anwendungen, Security Engineers und technische Architekten.

Voraussetzungen: Sichere C-Kenntnisse, Grundkenntnisse von TCP/IP, TLS und der Arbeit mit Build-Werkzeugen. Praktische Linux- oder Unix-Erfahrung wird vorausgesetzt.

1. Architektur und Lebenszyklus einer GnuTLS-Sitzung

  1. Bibliotheksinitialisierung, Thread-Modell und Ressourcenverantwortung festlegen.
  2. Sitzungsobjekt, Rollenparameter und Transportbindung in einer klaren Reihenfolge aufbauen.
  3. Credentials und Prioritätskonfiguration zuordnen, bevor der Handshake gestartet wird.
  4. Freigabepfade für Erfolg, Abbruch und Teilinitialisierung einheitlich implementieren.

2. TLS-Client schrittweise implementieren

  1. Namensauflösung und TCP-Verbindung von der TLS-Schicht entkoppeln.
  2. Servernamen, Vertrauensanker und erwartete Identität konfigurieren.
  3. Handshake ausführen und alle wiederholbaren Rückgabecodes korrekt verarbeiten.
  4. Peer-Zertifikat, Protokollparameter und Verifikationsergebnis vor Nutzdaten prüfen.

3. TLS-Server und Credentials aufbauen

  1. Server-Credentials aus Zertifikatskette und privatem Schlüssel laden.
  2. Akzeptierte Protokolle, Algorithmen und Client-Authentifizierung definieren.
  3. Eingehende Verbindung an ein eigenes Sitzungsobjekt binden und den Handshake durchführen.
  4. Fehler isolieren, ohne den Listener oder andere Sitzungen zu beeinträchtigen.

4. Datenübertragung und geordneter Sitzungsabbau

  1. Datensätze mit vollständiger Behandlung von Teilübertragungen lesen und schreiben.
  2. Nichtblockierende Zustände mit Ereignisschleifen und Timeouts verbinden.
  3. Anwendungsprotokollgrenzen unabhängig von TLS-Datensatzgrenzen verwalten.
  4. Close-Notify, Gegenstellenabbruch und Transportende eindeutig unterscheiden.

5. Zertifikatsprüfung und alternative Authentifizierung

  1. Systemweiten Vertrauensspeicher und anwendungsspezifische Trust Stores vergleichen.
  2. Hostname, Gültigkeitszeitraum, Verwendungszweck und Zertifikatskette gemeinsam prüfen.
  3. PSK, SRP oder Raw Public Keys als bewusst gewählte Alternative einordnen.
  4. Fehlertexte so erzeugen, dass keine sensiblen Schlüssel- oder Sitzungsdaten offengelegt werden.

6. Sitzungswiederaufnahme, TLS 1.3 und Performance

  1. Sitzungsdaten beziehungsweise Tickets speichern und an Sicherheitsgrenzen koppeln.
  2. Wiederaufnahme und vollständigen Handshake in Tests klar unterscheiden.
  3. Frühe Daten nur nach einer Replay-Risikoanalyse aktivieren.
  4. Messpunkte für Handshake-Zeit, Durchsatz, Fehlerrate und Ressourcenverbrauch einbauen.

7. Diagnose, Tests und Härtung

  1. Protokoll-Callbacks, Fehlercodes und Zustandsinformationen strukturiert erfassen.
  2. Positive, negative und Interoperabilitäts-Tests automatisieren.
  3. Ungültige Zertifikate, Protokollabbrüche, Timeouts und Versionskonflikte reproduzieren.
  4. Sichere Defaults, Updatefähigkeit und Betriebsdokumentation vor der Freigabe prüfen.

Praxisübungen

  • Implementierung eines vollständigen Test-Clients mit Hostnamenprüfung und kontrolliertem Shutdown.
  • Aufbau eines Mehrverbindungs-Testservers mit nichtblockierendem Handshake.
  • Fehlerkampagne mit abgelaufenem Zertifikat, falschem Namen, Protokollkonflikt und Verbindungsabbruch.

Einordnung in den Lernpfad

Empfohlen nach den Grundlagen sowie der PKI-Schulung. Anschließend eignen sich die Seminare zu DTLS, Performance, Migration und Kryptografie-API.

Fachbereichsleitung und Seminarberatung

Seminardetails

   
Dauer: 4 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr
Preis: Öffentlich oder Live Stream: € 2.396 zzgl. MwSt.
Inhaus: € 6.800 zzgl. MwSt.
Teilnehmeranzahl: min. 2 - max. 8
Teilnehmer: Softwareentwickler, Systemprogrammierer, Maintainer nativer Anwendungen, Security Engineers und technische Architekten.
Voraussetzungen: Sichere C-Kenntnisse, Grundkenntnisse von TCP/IP, TLS und der Arbeit mit Build-Werkzeugen. Praktische Linux- oder Unix-Erfahrung wird vorausgesetzt.
Standorte: Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg
Methoden: Vortrag, Demonstrationen, angeleitete Schrittfolgen und praktische Übungen am System
Seminararten: Öffentlich, Webinar, Inhouse, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich vorgesehen
Durchführungsgarantie: ja, ab 2 Teilnehmenden
Sprache: Deutsch - bei Firmenseminaren ist auch Englisch möglich
Seminarunterlage: Ausführliche Dokumentation auf Datenträger oder als Download
Teilnahmezertifikat: ja
Verpflegung: Kalt- / Warmgetränke, Mittagessen, auf Wunsch vegetarisch
Support: 3 Anrufe im Seminarpreis enthalten
Barrierefreier Zugang: an den meisten Standorten verfügbar
  Weitere Informationen unter + 49 (221) 74740055

Seminartermine

Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.

Seminar Startdatum Enddatum Ort Dauer
Stream live 4 Tage
Stream gespeichert 4 Tage
Luzern 4 Tage
Bern 4 Tage
Inhaus / Firmenseminar 4 Tage
Sankt Gallen 4 Tage
Basel 4 Tage
Winterthur 4 Tage
Zürich 4 Tage
Zürich 4 Tage
Stream live 4 Tage
Stream gespeichert 4 Tage
Luzern 4 Tage
Bern 4 Tage
Inhaus / Firmenseminar 4 Tage
Sankt Gallen 4 Tage
Basel 4 Tage
Winterthur 4 Tage
Winterthur 4 Tage
Zürich 4 Tage
Stream live 4 Tage
Stream gespeichert 4 Tage
Luzern 4 Tage
Bern 4 Tage
Inhaus / Firmenseminar 4 Tage
Sankt Gallen 4 Tage
Basel 4 Tage
Basel 4 Tage
Winterthur 4 Tage
Zürich 4 Tage
Stream live 4 Tage
Stream gespeichert 4 Tage
Luzern 4 Tage
Bern 4 Tage
Inhaus / Firmenseminar 4 Tage
Sankt Gallen 4 Tage
Sankt Gallen 4 Tage
Basel 4 Tage
Winterthur 4 Tage
Zürich 4 Tage
Nach oben
Seminare als Stream SRI zertifiziert
© 2026 www.seminar-experts.ch All rights reserved.  | Kontakt | Impressum | Nach oben