Kryptographische Bibliotheken kommen in modernen Anwendungen häufig zum Einsatz. In der Umsetzung ist eine Kryptobibliothek jedoch sehr anspruchsvoll und fehlerträchtig, sowohl in der Auswahl geeigneter Verfahren als auch in der Implementierung.
Daher wurden in Zusammenarbeit mit dem Bundesamt für Sicherheit in der Informationstechnik (BSI) 18 vorhandene Open-Source-Bibliotheken analysiert, darunter Botan, LibreSSL und NSS. Daraus wurde ein geeigneter Kandidat ausgewählt und anschließend zu einer allgemeinen Kryptobibliothek weiterentwickelt.
Der Vortrag gibt einen Überblick darüber, welche der Bibliotheken für welche Einsatzgebiete empfehlenswert sind und motiviert die Wahl von Botan für die Weiterentwicklung. Anschließend werden ausgewählte Teile von Botan vorgestellt, bspw. Architektur und Buildsystem, Schnittstellen, Zufallsgeneratoren, TLS, PKCS#11, Language Bindings und das Command Line Interface. Anhand von Codebeispielen werden praktische Aspekte bei der Nutzung der Bibliothek veranschaulicht.
Vorkenntnisse
Vorkenntnisse zur grundlegenden Funktionsweise von kryptographischen Algorithmen und Verfahren und ggf. zu TLS.
Lernziele
* Im ersten Teil des Vortrags erlernen die Teilnehmer, welche Kryptobibliotheken für bestimmte Einsatzgebiete geeignet sind und wofür die Botan-Kryptobibliothek besonders geeignet ist.
* Im zweiten Teil erlernen die Teilnehmer den grundlegenden Umgang mit der Botan-Kryptobibliothek. Der Vortrag versetzt sie in die Lage, Botan sicher zu konfigurieren und häufig verwendete Schnittstellen zu nutzen.
//
René Korthaus
@securitykernel
hat im Bachelor und Master im Studiengang IT-Sicherheit an der Ruhr-Universität Bochum studiert. Er arbeitet seit 2012 als Softwareentwickler für die Rohde & Schwarz Cybersecurity mit Schwerpunkt in den Bereichen Trusted Infrastructures und Kryptografie. Weitere Themengebiete sind TPMs, C++ Library Entwicklung und Continuous Integration.
//
Daniel Neus
@neusdan
hat im Master im Studiengang IT-Sicherheit an der Ruhr-Universität Bochum studiert. Er arbeitet seit 2012 als Softwareentwickler für die Rohde & Schwarz Cybersecurity mit Schwerpunkt in den Bereichen Endpoint Security und Kryptografie. Weitere Themengebiete sind C++-Library-Entwicklung und Continuous Integration.