Das Seminar vermittelt die GnuTLS-C-API anhand vollständiger Client- und Serverabläufe. Im Vordergrund steht eine robuste Architektur: Ressourcen müssen eindeutig verwaltet, Zertifikate korrekt geprüft, nicht blockierende Transporte sauber in Ereignisschleifen integriert und Fehler nach ihrer tatsächlichen Bedeutung behandelt werden. Die Übungen führen von einem minimalen Verbindungsaufbau zu wiederverwendbaren Komponenten für produktionsnahe Anwendungen.
Zielgruppe
Das Training richtet sich an C-Entwickler, Softwarearchitekten, Netzwerk- und Embedded-Entwickler, die GnuTLS neu integrieren, vorhandene Implementierungen absichern oder TLS- und DTLS-Komponenten technisch überprüfen müssen.
Voraussetzungen
Benötigt werden gute Kenntnisse in C, ein sicherer Umgang mit Zeigern, Speicherverwaltung und Fehlercodes sowie praktische Erfahrung mit TCP- oder UDP-Sockets. Grundkenntnisse zu TLS und X.509 werden vorausgesetzt.
Seminarinhalte
Projektaufbau und Lebenszyklus
- Header, Bibliotheken, Build-Integration, Versionsprüfung und Feature-Erkennung
- Globale Initialisierung, Thread-Sicherheit, Nutzung in Sandboxes und Verhalten nach fork
- Erzeugung, Konfiguration und Freigabe von Sitzungen und Credentials
- Ressourcenmodelle, Fehlerpfade und verlässliches Aufräumen bei Teilfehlern
Client- und Serverimplementierung
- Rollen, Initialisierungsflags, Priority Strings und Zuordnung von Credentials
- SNI, virtuelle Hosts, Serverauswahl und wechselseitige Authentifizierung
- TLS-Handshake, Datenübertragung, gepufferte Verarbeitung, Alerts und geordnete Beendigung
- Timeouts, Wiederholungslogik und Unterscheidung fataler und nicht fataler Rückgabewerte
Zertifikate und Authentifizierung
- Laden von Systemvertrauen, eigenen CA-Dateien, Zertifikatsketten und privaten Schlüsseln
- Hostname-, SAN-, Zeit- und Kettenprüfung mit geeigneten High-Level-Funktionen
- Client-Zertifikate, Credential-Callbacks, OCSP-Status und kontrollierte Sonderregeln
- Überblick über PSK, Raw Public Keys und alternative Authentifizierungsmodelle
Transportintegration und asynchrone I/O
- Direkte Socket-Nutzung sowie eigene Push-, Pull- und Timeout-Callbacks
- Nicht blockierende Sitzungen, E_AGAIN, E_INTERRUPTED und Richtungsabfrage
- Einbindung in poll-, select- und ereignisbasierte Architekturen
- Backpressure, Teilübertragungen, maximale Datensatzgrößen und kontrollierte Abbrüche
TLS 1.3, Wiederaufnahme und DTLS
- Session Tickets, Wiederaufnahme, frühe Daten und Anti-Replay-Anforderungen
- Schlüsselaktualisierung, Post-Handshake-Vorgänge und Channel Binding
- DTLS-Sitzungen, Cookies, MTU, Retransmission und UDP-spezifische Fehlerfälle
- Abwägung zwischen Latenz, Zustandsverwaltung und Sicherheitsanforderungen
Diagnose und Qualitätssicherung
- Bibliothekslogging, Audit-Funktionen und kontrollierte Key-Log-Nutzung in Testsystemen
- Reproduzierbare Handshake-Tests und Negativtests für Zertifikate und Richtlinien
- Interoperabilitätstests mit abweichenden Implementierungen und Versionen
- API-Kapselung, Testbarkeit, Code-Review-Checklisten und sichere Standardwerte
Praxis
Die Teilnehmer entwickeln einen TLS-Client und einen TLS-Server, ergänzen Hostname-Prüfung und mTLS, stellen die Verarbeitung auf nicht blockierende I/O um und implementieren einen DTLS-Versuchsaufbau. Fehlerfälle werden absichtlich erzeugt, protokolliert und in automatisierbare Tests überführt.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
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: | C-Entwickler, Softwarearchitekten, Netzwerkprogrammierer sowie Embedded- und Systementwickler |
| Voraussetzungen: | Gute C-Kenntnisse, Erfahrung mit Sockets und grundlegendes Verständnis von TLS und X.509 |
| 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, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise 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.
