NaCl (Software)

Kryptographie-Programmbibliothek

NaCl (gesprochen Salz) und das darauf basierende Sodium, auch libsodium genannt, sind Kryptographie-Programmbibliotheken, die modern, leicht zu nutzen, sicher, schnell, frei und Open-Source-Software sind.[12][13]

NaCl
Basisdaten

Entwickler Daniel J. Bernstein[1], Tanja Lange[1], Peter Schwabe[1]
Erscheinungsjahr 2008
Aktuelle Version 20110221[2]
(21. Februar 2011)
Betriebssystem Unix-ähnliches System
Programmier­sprache C[3], C++
Kategorie Kryptographie
Lizenz Public Domain
deutschsprachig nein
nacl.cr.yp.to
Sodium
Basisdaten

Entwickler Community[4]
Erscheinungsjahr 8. Juli 2013[5]
Aktuelle Version 1.0.20[6]
(25. Mai 2024)
Betriebssystem Unix-ähnliches System[7], Microsoft Windows[8], iOS[8], Android[8]
Programmier­sprache C[9][10]
Kategorie Kryptographie
Lizenz ISC-Lizenz[11]
deutschsprachig nein
libsodium.org

Sie werden in Discord, Dovecot, KeePassXC, PowerDNS, Saltstack, Stellar, Threema, Tox, Wire und WordPress verwendet.[14] Sodium gehört seit 2017 zum Sprachkern von PHP.[12]

Die Bibliotheken bieten unter anderem Funktionen für drei Hasharten sowie jeweils symmetrische und asymmetrische Authentifizierung, Ver- und Entschlüsselung.[15]

Das NaCl-Kernentwicklerteam besteht aus Daniel J. Bernstein, Tanja Lange und Peter Schwabe.[13] NaCl ist in C programmiert, einige geschwindigkeitskritische Teile in Assembler. Für die Programmiersprachen C, C++ und Python gibt es Schnittstellen, unterstützt werden aber nur unixoide Betriebssysteme.[13]

Sodium ist eine Weiterentwicklung von NaCl, das zusätzliche Betriebssysteme und Schnittstellen zu über 30 Programmiersprachen unterstützt.[16] Nicht zuletzt durch die Aufnahme von Sodium in den Sprachkern von PHP im Jahr 2017[12] hat seine Verbreitung stark zugenommen.

NaCl ist die Abkürzung von „Networking and Cryptography Library“[17] (Netzwerk- und Kryptographiebibliothek); es stellt keine Netzwerkfunktionen bereit, kann aber von Netzwerksoftware verwendet werden. Salz in der Kryptologie bezeichnet eine zusätzliche Zeichenfolge bei Passwörtern. Speisesalz ist Natriumchlorid mit der chemischen Formel NaCl, was die Aussprache „Salz“ der NaCl-Bibliothek erklärt. Das in Speisesalz enthaltene Natrium wird auch Sodium genannt. Die häufig verwendete Variante „libsodium“ entspricht der Linux-Namenskonvention für dynamische Bibliotheken.

Einzelnachweise

Bearbeiten
  1. a b c NaCl: Networking and Cryptography library. 15. März 2016 (abgerufen am 7. Januar 2020).
  2. Installation. 15. März 2016 (abgerufen am 7. Januar 2020).
  3. Features. (abgerufen am 27. März 2017).
  4. Introduction. In: libsodium.org. 30. Mai 2019, abgerufen am 7. Januar 2020 (englisch).
  5. Frank Denis: github.com.
  6. Release 1.0.20. 25. Mai 2024 (abgerufen am 22. Juni 2024).
  7. download.libsodium.org.
  8. a b c download.libsodium.org.
  9. github.com.
  10. www.openhub.net.
  11. github.com.
  12. a b c Dennis Schirrmacher: Libsodium in PHP: Krypto-Bibliothek für die Skriptsprache auf dem neuesten Stand der Technik. In: heise online. Heise Medien, 21. Februar 2017, abgerufen am 6. Januar 2020.
  13. a b c NaCl: Networking and Cryptography library. 15. März 2016, abgerufen am 6. Januar 2020 (englisch).
  14. Frank Denis: Projects using libsodium. In: libsodium.org. 6. Dezember 2019, abgerufen am 6. Januar 2020 (englisch).
  15. Scott Arciszewski: Libsodium Quick Reference: Similarly-Named Functions and Their Use-Cases. In: paragonie.com. Paragon Initiative Enterprises Blog, 10. Juni 2017, abgerufen am 6. Januar 2020 (englisch).
  16. Frank Denis: Bindings for other languages. In: libsodium.org. 22. August 2019, abgerufen am 6. Januar 2020 (englisch).
  17. Daniel J. Bernstein, Tanja Lange, Peter Schwabe: The security impact of a new cryptographic library. In: Alejandro Hevia and Gregory Neven (Hrsg.): Proceedings of LatinCrypt 2012 (= Lecture Notes in Computer Science). Band 7533. Springer, ISBN 978-3-642-33480-1, S. 159–176, doi:10.1007/978-3-642-33481-8_9 (englisch, coolnacl-20120725.pdf).