Bei der Entwicklung von Windows-Anwendungen – beispielsweise mit Lazarus (Free Pascal) – wird für verschlüsselte Netzwerkverbindungen häufig OpenSSL benötigt. Da Windows diese Bibliotheken nicht standardmäßig mitbringt, müssen die passenden DLL-Dateien mit der Anwendung ausgeliefert werden.
Für meine eigenen Projekte habe ich mir eine Auswahl an häufig benötigten OpenSSL-Dateien zusammengestellt und stelle diese hier als Download zur Verfügung.
Inhalt des Pakets
Die Sammlung enthält Dateien aus verschiedenen OpenSSL-Zweigen, da je nach Alter des Projekts oder der verwendeten Komponenten unterschiedliche Bibliotheken verlangt werden:
OpenSSL 3.x (64-Bit)
Diese Dateien werden von vielen neueren 64-Bit-Anwendungen und modernen HTTP-Clients vorausgesetzt:
libcrypto-3-x64.dlllibssl-3-x64.dlllibcrypto.dll(wird von manchen Frameworks unter diesem generischen Namen gesucht)
OpenSSL 1.1.x (64-Bit)
Wird von vielen Anwendungen und Komponenten genutzt, die noch nicht auf den neueren 3.x-Zweig umgestellt wurden:
libcrypto-1_1-x64.dlllibssl-1_1-x64.dll
Ältere OpenSSL-Versionen (v1.0.x)
Diese Dateien werden häufig von älteren Projekten oder älteren Netzwerkkomponenten (wie bestimmten Versionen von Indy oder Synapse) benötigt:
libeay32.dllssleay32.dll
Verwendung
In der Praxis ist es meist am sichersten, die benötigten DLL-Dateien direkt in das Verzeichnis der ausführbaren Anwendung (neben die .exe) zu kopieren. Das sorgt dafür, dass die Anwendung portabel bleibt und genau die Versionen nutzt, mit denen sie getestet wurde.
Sicherheitshinweis
Die älteren Dateien (ssleay32.dll und libeay32.dll) stammen aus dem Jahr 2018. Sie entsprechen nicht mehr dem aktuellen Sicherheitsstandard und sollten nach Möglichkeit nur noch verwendet werden, um die Kompatibilität mit bestehenden Altsystemen aufrechterhalten zu können. Für neue oder sicherheitskritische Projekte empfiehlt sich der Einsatz des OpenSSL 3.x-Zweigs.
