OpenSSL

OpenSSL
OpenSSL
Entwickler OpenSSL Core and Development Team
Aktuelle Version 1.0.0e
(6. September 2011)
Betriebssystem Linux, Unix, Mac OS X, Windows
Kategorie Kryptografie
Lizenz ähnlich der ASL
Deutschsprachig nein
www.openssl.org

OpenSSL ist eine freie Implementierung des SSL/TLS-Protokolls und bietet darüber hinaus weitergehende Funktionen zur Zertifikatsverwaltung und zu unterschiedlichen kryptographischen Funktionen. Es basiert auf dem SSLeay-Paket und wird zurzeit von einer unabhängigen Gruppe weiterentwickelt.

OpenSSL umfasst verschiedene Applikationen, beispielsweise zur Erzeugung von Zertifikaten, von Zertifizierungsanträgen und zur Verschlüsselung. Die verschiedenen Applikationen sind zusammengefasst im Kommandozeilen-Programm openssl.

Inhaltsverzeichnis

Geschichte

Das unveröffentlichte SSLeay-0.9.1b, welches von Eric A. Young und Tim J. Hudson bei C2Net entwickelt wurde, ist am 23. Dezember 1998 als OpenSSL 0.9.1c veröffentlicht worden. [1] Die Gruppe um das OpenSSL-Projekt entstand im Jahr 1998. Ralf S. Engelschall Mitbegründer der Gruppe beschreibt die Entwicklung von OpenSSL als Voraussetzung für die Schaffung von mod_ssl, das genutzte Verschlüsselungsprotokoll für Apache-Webserver. Im Gegensatz zur praktisch finalen mod_ssl, die nur noch der Wartung bedürfe, sei die Entwicklung bei OpenSSL jedoch noch nicht abgeschlossen. Stattdessen würden engagierte, freie Programmierer weiterhin Applikationen entwerfen und dabei auf den bereits etablierten Basisfunktionen von OpenSSL aufbauen.[2]

FIPS-140-2-Zertifizierung

OpenSSL ist das erste nach FIPS 140-2 zertifizierte Open-Source-Programm. Hierbei handelt es sich um einen Sicherheitsstandard, den das National Institute of Standards and Technology (NIST) für das Cryptographic Module Validation Program festgelegt hat.

Die Freigabe wurde im Januar 2006 erteilt. Im Juni wurde sie vorläufig wieder zurückgezogen, jedoch am 16. Februar 2007 wieder erteilt. Nach Aussage von John Weathersby vom Open Source Software Institute (OSSI) war das Problem „politischer Natur“ (im original: a political challenge), da eine vergleichbare Zertifizierung kommerzielle Anbieter erhebliches Geld kostet. Bezahlt wurde der Prozess vom amerikanischen Verteidigungsministerium und interessierten Firmen, die sich von einer freien Lösung finanzielle Einsparungen sowie Standardisierung erhoffen.[3]

Sicherheitslücke in Debian-Paketen

Am 13. Mai 2008 gab das Debian-Projekt bekannt, dass das OpenSSL-Paket der Distributionen seit 17. September 2006 (Version 0.9.8c-1 bis 0.9.8g-9) eine Sicherheitslücke enthielt. Durch einen Fehler in einem Debian-spezifischen Patch sind die mit dem in diesen Paketen enthaltenen Zufallszahlengenerator erzeugten Schlüssel vorhersagbar. Davon betroffen seien SSH-, OpenVPN-, DNSSEC-Schlüssel, Schlüssel in X.509-Zertifikaten sowie Sitzungsschlüssel, die in SSL/TLS-Verbindungen (HTTPS) genutzt werden. Schlüssel die mit GnuPG oder GnuTLS erzeugt wurden seien nicht betroffen.[4]

Die Sicherheitslücke entstand beim Versuch, eine Warnmeldung einer Codeprüfungs-Software zu beseitigen. Dabei sollte eine wenig relevante Codezeile, welche die Warnung verursachte, entfernt werden, allerdings wurde auch ein zweites Vorkommen dieser Zeile entfernt, welche in einem anderen Kontext stand und eine völlig andere Bedeutung hatte.

Die entsprechenden Schlüsselpaare sind leicht angreifbar, da es möglich ist, sämtliche in Frage kommenden privaten Schlüssel innerhalb weniger Tage zu berechnen. Für die betroffenen SSH-Schlüssel existiert ein frei herunterladbares Paket im Internet. Durch diesen Fehler waren und sind SSL-Verbindungen zu vielen Servern gegenüber Man-in-the-middle-Angriffen verwundbar. Verbindungen zu Servern, die jemals ein Zertifikat mit einem schwachen Schlüssel aufwiesen, sind solange angreifbar, bis die Zertifikate ablaufen oder wirksam widerrufen werden. Dabei ist zu beachten, dass viele Browser nicht auf widerrufene Zertifikate prüfen. Besonders prominent in diesem Zusammenhang war ein verwundbarer Server des Dienstleisters Akamai[5], welcher unter anderem für die Bereitstellung der ELSTER-Software der deutschen Finanzämter[6] sowie von Treiber-Updates von ATI[7] verantwortlich ist.

Lizenz

OpenSSL ist doppellizenziert unter der OpenSSL License und der SSLeay License[8]. Die OpenSSL-Lizenz entspricht der Apache-Lizenz 1.0 und die SSLeay-Lizenz ist gleichwertig zur 4-clause-BSD-license. Der allgemeine Nutzen der Doppellizenzierung ist, dass der Nutzer wählen darf, welche Lizenz der beiden er nutzen möchte. Die OpenSSL-Dokumentation nutzt den Ausdruck Doppellizenzierung, um auszudrücken, dass beide Lizenzen auf OpenSSL angewendet werden (können).

Da die OpenSSL-Lizenz der Apache-Lizenz 1.0 entspricht, jedoch nicht der Version 2.0, benötigt sie den Satz "This product includes software developed by the OpenSSL project for use in the OpenSSL Toolkit (http://www.openssl.org)" ("Dieses Produkt enthält Software, die durch das OpenSSL-Projekt für das OpenSSL-Toolkit entwickelt wurde. (http://www.openssl.org)"), sodass die Tatsache, dass ein Produkt von OpenSSL abgeleitet ist, in Werbungen und allen Ableitungen und Redistributionen erscheinen muss (Abschnitte 3 und 6). Bedingt durch diese Einschränkung, "Werbeklausel" genannt, sind die OpenSSL-Lizenz und die Apache-Lizenz 1.0 inkompatibel zur wichtigen GPL.[9] Einige GPL-Entwickler fügten eine OpenSSL-Ausnahme zu ihren Lizenzen hinzu, die es speziell erlauben, OpenSSL in deren System zu nutzen. GNU Wget und climm nutzen beide solche Ausnahmen[10][11]. Andere Pakete nutzen die unter der LGPL stehende Implementierung GnuTLS, die dieselbe Aufgabe wie OpenSSL erfüllt.

Versionsgeschichte

Diese Übersicht beinhaltet Auszüge aus dem "ChangeLog" sowie dem "Project State"[1]

0.9.1 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.1b [not released]
Ältere Version; nicht mehr unterstützt: 0.9.1c 23. Dezember 1998

0.9.2 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.2c 22. März 1999 Nachfolger von 0.9.1c

0.9.3 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.3 23. Mai 1999 Nachfolger von 0.9.2b
Ältere Version; nicht mehr unterstützt: 0.9.3a 29. Mai 1999

0.9.4 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.4 9. August 1999 Nachfolger von 0.9.3a

0.9.5 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.5 28. Februar 2000 Nachfolger von 0.9.4
Ältere Version; nicht mehr unterstützt: 0.9.5a 1. April 2000

0.9.6 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.6 24. September 2000 Nachfolger von 0.9.5a
Ältere Version; nicht mehr unterstützt: 0.9.6m 17. März 2007

0.9.7 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.7 31. Dezember 2002 Nachfolger von 0.9.6h
Ältere Version; nicht mehr unterstützt: 0.9.7a 19. Februar 2003
Ältere Version; nicht mehr unterstützt: 0.9.7b 10. April 2003
Ältere Version; nicht mehr unterstützt: 0.9.7c 30. September 2003
Ältere Version; nicht mehr unterstützt: 0.9.7d 17. März 2004
Ältere Version; nicht mehr unterstützt: 0.9.7e 25. Oktober 2004
Ältere Version; nicht mehr unterstützt: 0.9.7f 22. März 2005
Ältere Version; nicht mehr unterstützt: 0.9.7g 11. April 2005
Ältere Version; nicht mehr unterstützt: 0.9.7h 11. Oktober 2005
Ältere Version; nicht mehr unterstützt: 0.9.7i 14. Oktober 2005
Ältere Version; nicht mehr unterstützt: 0.9.7j 4. Mai 2006
Ältere Version; nicht mehr unterstützt: 0.9.7k 5. September 2006
Ältere Version; nicht mehr unterstützt: 0.9.7l 28. September 2006
Ältere Version; nicht mehr unterstützt: 0.9.7m 23. Februar 2007

0.9.8 – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 0.9.8 5. Juli 2005 Nachfolger von 0.9.7h
Ältere Version; nicht mehr unterstützt: 0.9.8a 11. Oktober 2005
Ältere Version; nicht mehr unterstützt: 0.9.8b 4. Mai 2006
Ältere Version; nicht mehr unterstützt: 0.9.8c 5. September 2006
Ältere Version; nicht mehr unterstützt: 0.9.8d 28. September 2006
Ältere Version; nicht mehr unterstützt: 0.9.8e 23. Februar 2007
Ältere Version; nicht mehr unterstützt: 0.9.8f 11. Oktober 2007
Ältere Version; nicht mehr unterstützt: 0.9.8g 19. Oktober 2007
Ältere Version; nicht mehr unterstützt: 0.9.8h 28. Mai 2008
Ältere Version; nicht mehr unterstützt: 0.9.8i 15. September 2008
Ältere Version; nicht mehr unterstützt: 0.9.8j 7. Jänner 2009
Ältere Version; nicht mehr unterstützt: 0.9.8k 25. März 2009
Ältere Version; nicht mehr unterstützt: 0.9.8l 5. November 2009
Ältere Version; nicht mehr unterstützt: 0.9.8m 25. Februar 2010
Ältere Version; nicht mehr unterstützt: 0.9.8n 24. März 2010
Ältere Version; nicht mehr unterstützt: 0.9.8o 1. Juni 2010
Ältere Version; nicht mehr unterstützt: 0.9.8p 16. November 2010
Ältere Version; nicht mehr unterstützt: 0.9.8q 2. Dezember 2010
Ältere Version; noch unterstützt: 0.9.8r 8. Februar 2011

1.x – Versionen

Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
OpenSSL-Version Erscheinungsdatum Anmerkung Referenz
Ältere Version; nicht mehr unterstützt: 1.0.0 29. März 2010
Ältere Version; nicht mehr unterstützt: 1.0.0d 8. Februar 2011
Aktuelle Version: 1.0.0e 6. September 2011 Add protection against ECDSA timing attacks as mentioned in the paper by Billy Bob Brumley and Nicola Tuveri, see: http://eprint.iacr.org/2011/232.pdf
Zukünftige Version: 1.0.1 geplanter Nachfolger von 1.0.0e
  • Initial TLS v1.2 support
  • Add SRP support

Weblinks

Einzelnachweise

  1. a b ChangeLog. OpenSSL, 2010-12-02 20:00:46, abgerufen am 10. August 2011.
  2. Im Interview: Ralf S. Engelschall – der deutsche Open-Source-Guru. Netzwelt.de, 9. August 2010, abgerufen am 11. Januar 2011.
  3. http://www.gcn.com/online/vol1_no1/43142-1.html
  4. http://www.debian.org/security/2008/dsa-1571
  5. http://blog.fefe.de/?ts=b6c9ec7e
  6. Downloadlink auf https://www.elster.de/elfo_down4.php
  7. Downloadlink auf http://game.amd.com/us-en/drivers_catalyst.aspx?p=xp64/theater550-xp64
  8. OpenSSL: Source, License. openssl.org. Abgerufen am 9. März 2011.
  9. Licenses - Free Software Foundation. fsf.org. Abgerufen am 9. März 2011.
  10. WGET 1.10.2 for Windows (win32). users.ugent.be. Abgerufen am 9. März 2011.
  11. Releases of source and binaries. climm.org. Abgerufen am 30. November 2010.

Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • OpenSSL — Developer(s) The OpenSSL Project Stable release 1.0.0e  (6 September 2011; 2 months ago (2011 09 06)[ …   Wikipedia

  • OpenSSL — Тип Библиотека Разработчик The OpenSSL Project Написана на C Операционная система Кроссплатформенное программное обеспечение Последняя версия 1.0.1c[1] (10 мая, 2012 …   Википедия

  • Openssl — Développeur The OpenSSL Project Dernière version …   Wikipédia en Français

  • Openssl — Entwickler: OpenSSL Core and Development Team Aktuelle Version: 0.9.8k (25. März 2009) Aktuelle Vorabversion: 1.0.0 Beta2 (21. April 2009) Betriebssystem: Linux, Unix …   Deutsch Wikipedia

  • OpenSSL — Développeur The OpenSSL Project Dernière version …   Wikipédia en Français

  • OpenSSL — Desarrollador The OpenSSL Project www.openssl.org Información general Última versión estable 1.0.0d 8 de febrero de 2011; ha …   Wikipedia Español

  • OpenSSL — freie Secure Socket Layer (SSH) Implementierung http://www.openssl.org/) …   Acronyms

  • OpenSSL — freie Secure Socket Layer (SSH) Implementierung http://www.openssl.org/) …   Acronyms von A bis Z

  • Openssl — …   Википедия

  • OpenSSL — Open Source Projekt zur Entwicklung einer frei verfügbaren Version des Verschlüsselungs und Authentifizierungsverfahrens Secure Socket Layer (SSL). Open Source, SSL, Verschlüsselung …   Online-Wörterbuch Deutsch-Lexikon

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”