Themis ist eine Open-Source-Bibliothek für kryptografische Dienste auf hohem Niveau zum Sichern von Daten bei Authentifizierung, Speicherung, Nachrichtenübermittlung, Netzwerkaustausch usw. Themis löst 90 % der typischen Datenschutzanwendungsfälle, die für die meisten Apps üblich sind.
Themis hilft dabei, sowohl einfache als auch komplexe kryptografische Funktionen einfach, schnell und sicher zu erstellen. Mit Themis können sich Entwickler auf das Wesentliche konzentrieren: die Entwicklung ihrer Anwendungen.
Verschlüsseln Sie gespeicherte Geheimnisse in Ihren Apps und im Backend: API-Schlüssel, Sitzungstoken, Dateien.
Verschlüsseln Sie sensible Datenfelder vor dem Speichern in der Datenbank ( „anwendungsseitige Verschlüsselung auf Feldebene“ ).
Unterstützen Sie durchsuchbare Verschlüsselung , Datentokenisierung und Datenmaskierung mit Themis und Acra.
Geheimnisse sicher austauschen: Teilen Sie vertrauliche Daten zwischen Parteien, erstellen Sie eine einfache Chat-App zwischen Patienten und Ärzten.
Erstellen Sie End-to-End-Verschlüsselungsschemata mit zentraler oder dezentraler Architektur: Verschlüsseln Sie Daten lokal in einer App, verwenden Sie sie überall verschlüsselt und entschlüsseln Sie sie nur für authentifizierte Benutzer.
Sorgen Sie für sichere Sitzungen in Echtzeit : Senden Sie verschlüsselte Nachrichten, um verbundene Geräte über Ihre App zu steuern, und empfangen Sie vertrauliche Daten in Echtzeit von Ihren Apps an Ihr Backend.
Vergleichen Sie Geheimnisse zwischen Parteien, ohne sie preiszugeben (wissensfreie, beweisbasierte Authentifizierung).
Eine kryptografische Bibliothek, die für alle passt : Themis eignet sich am besten für Multiplattform-Apps (z. B. iOS+Android+Electron-App mit Node.js-Backend), da es eine 100 % kompatible API bietet und auf allen unterstützten Plattformen gleich funktioniert .
Themis stellt vorgefertigte Bausteine („Kryptosysteme“) bereit, die die Nutzung zentraler kryptografischer Sicherheitsoperationen vereinfachen.
Themis bietet 4 wichtige kryptografische Dienste:
Wir haben Themis gegründet, um darauf aufbauend weitere Produkte zu entwickeln – z. B. Acra und Hermes.
Informationen zur Installation von Themis für Ihre Mobil-, Web-, Desktop- oder serverseitige Anwendung finden Sie auf der Installationsseite. Wir empfehlen dringend, Pakete zu installieren, anstatt sie aus dem Quellcode zu erstellen.
Themis ist für die folgenden Sprachen/Plattformen verfügbar, siehe jeweilige Sprach-Howtos:
Plattform | Dokumentation | Beispiele | Version |
---|---|---|---|
⚛️ Native reagieren (iOS, Android) | Natives Reagieren-Howto | docs/examples/react-native | |
? Swift (iOS, macOS) | Schnelle Anleitung | docs/examples/swift | |
Objective-C (iOS, macOS) | Objective-C-Howto | docs/examples/objc | |
☕️ Java (Desktop) | Java (Desktop) Howto | docs/examples/java | |
☎️ Java (Android) | Java (Android) Howto | docs/examples/android | |
? Kotlin (Android) | Kotlin (Android) Howto | docs/examples/android | |
? Rubin | Ruby Howto | docs/examples/ruby | |
? Python | Python-Howto | docs/examples/python | |
? PHP | PHP-Howto | docs/examples/php | |
➕ C++ | CPP-Howto | docs/examples/c++ | |
? Node.js | Javascript (Node.js) Howto | docs/examples/js | |
? WebAssembly | Javascript (WebAssembly) Howto | docs/examples/js | |
? Gehen | Gehen Sie zum Howto | docs/examples/go | |
? Rost | Rust Howto | docs/examples/rust | |
? С++ PNaCl für Google Chrome | WebThemis-Projekt |
Themis unterstützt folgende CPU-Architekturen: x86_64/i386, ARM, Apple Silicon (ARM64), verschiedene Android-Architekturen.
Wir erstellen und verifizieren Themis auf den neuesten stabilen Betriebssystemversionen:
Wir planen, diese Liste um eine breitere Palette von Plattformen zu erweitern. Wenn Sie dabei helfen möchten, Themis zu verbessern oder auf Ihre bevorzugte Plattform oder Sprache zu bringen, nehmen Sie Kontakt mit uns auf.
Die Dokumentation für Themis enthält die sich ständig weiterentwickelnden offiziellen Dokumente, die alles von Bereitstellungsrichtlinien bis hin zu Anwendungsfällen abdecken, mit kurzen Erläuterungen zu Kryptosystemen und der Architektur hinter der Hauptbibliothek von Themis.
Weitere Informationen finden Sie in der Dokumentation:
Themis setzt auf bewährte kryptografische Algorithmen, die von bekannten Kryptografiebibliotheken wie OpenSSL, LibreSSL und BoringSSL implementiert werden. Weitere Informationen finden Sie unter Kryptographie in den Themis-Dokumenten.
Diese Distribution umfasst kryptografische Software. In dem Land, in dem Sie derzeit wohnen, gelten möglicherweise Beschränkungen für die Einfuhr, den Besitz, die Verwendung und/oder die Wiederausfuhr von Verschlüsselungssoftware in ein anderes Land. Bevor Sie Verschlüsselungssoftware verwenden, prüfen Sie bitte die Gesetze, Vorschriften und Richtlinien Ihres Landes bezüglich der Einfuhr, des Besitzes oder der Verwendung und Wiederausfuhr von Verschlüsselungssoftware, um festzustellen, ob dies zulässig ist. Weitere Informationen finden Sie unter http://www.wassenaar.org/.
Das US-Handelsministerium, Bureau of Industry and Security (BIS), hat diese Software als Export Commodity Control Number (ECCN) 5D002.C.1 klassifiziert, was Informationssicherheitssoftware umfasst, die kryptografische Funktionen mit asymmetrischen Algorithmen verwendet oder ausführt. Aufgrund der Form und Art dieser Verteilung ist sie für den Export im Rahmen der Lizenzausnahme ENC Technology Software Unrestricted (TSU) (siehe BIS Export Administration Regulations, Abschnitt 740.13) sowohl für Objektcode als auch für Quellcode geeignet.
Wenn Ihre Anwendung Themis verwendet und Sie sie an den Apple App Store übermitteln möchten, gelten bestimmte Anforderungen für die Erklärung der Verwendung jeglicher Kryptografie.
Lesen Sie die Apple-Exportbestimmungen zur Kryptografie für Themis, um herauszufinden, was zu tun ist.
Jede Änderung in der Themis-Kernbibliothek wird von unserem internen Team aus Kryptographen und Sicherheitsingenieuren überprüft und genehmigt. Für jede Veröffentlichung führen wir interne Audits durch Kryptographen durch, die nicht an Themis arbeiten.
Wir verwenden viele automatisierte Sicherheitstests, z. B. statische Code-Analysetools, Fuzzing-Tools, Speicheranalysetools, Unit-Tests (pro Plattform) und Integrationstests (um Kompatibilitätsprobleme zwischen verschiedenen von Themis unterstützten Sprachen, Betriebssystemen und x86/x64-Architekturen zu finden). Weitere Informationen zu unseren Sicherheitstestpraktiken finden Sie in den Sicherheitsdokumenten von Themis.
Wenn Sie glauben, dass Sie ein sicherheitsrelevantes Problem gefunden haben, senden Sie uns bitte eine E-Mail an [email protected]. Möglicherweise gilt ein Bug-Bounty-Programm.
Als Bibliothek kryptografischer Dienste für Mobil- und Serverplattformen ist Themis ein „modernes“ Verschlüsselungstool, das sicheren Datenaustausch und -speicherung ermöglicht.
Mit Themis erreichen Sie eine bessere Einhaltung der aktuellen Datenschutzbestimmungen, wie zum Beispiel:
Weitere Informationen zu den Vorschriften finden Sie in den Dokumenten.
Themis wird von OWASP als Datenverschlüsselungsbibliothek für mobile Plattformen empfohlen.
Themis wird häufig sowohl für nichtkommerzielle als auch für kommerzielle Projekte verwendet. Einige öffentliche Anwendungen und Bibliotheken finden Sie hier.
Möchten Sie in unserem Blog und auch auf der Liste der Mitwirkenden erscheinen? Schreiben Sie uns über das Projekt, das Sie mit Themis erstellt haben!
Wenn Sie nach etwas suchen, zu dem Sie beitragen und ewigen Respekt erlangen können, wählen Sie einfach die Dinge aus der Liste der Themen aus. Schauen Sie sich als Ausgangspunkt unsere Beitragsrichtlinien an.
Themis für all diese zahlreichen Plattformen zu unterstützen ist harte Arbeit, aber wir versuchen unser Bestes, um die Nutzung von Themis für alle bequem zu gestalten. Die meisten Probleme, auf die unsere Benutzer stoßen, hängen mit dem Installationsprozess und der Abhängigkeitsverwaltung zusammen. Wenn Sie vor Herausforderungen stehen, teilen Sie uns dies bitte mit.
Bei Cossack Labs bieten wir professionelle Supportdienste für Themis und Anwendungen, die Themis verwenden.
Diese Unterstützung umfasst unter anderem die Bibliotheksintegration mit Schwerpunkt auf Web- und mobilen Anwendungen; Entwurf und Aufbau von Ende-zu-Ende-Verschlüsselungsschemata für mobile Anwendungen; Sicherheitsüberprüfungen für interne Bibliotheksintegrationen oder High-Level-Protokolle; Entwicklung kundenspezifischer Anwendungen, die Kryptografie erfordern; Beratungs- und Schulungsdienstleistungen.
Schreiben Sie uns eine E-Mail an [email protected] oder schauen Sie sich die Cybersicherheitsdienste von Cossack Labs an.
Wenn Sie eine technische Frage stellen, einen Fehler melden oder eine Funktion vorschlagen möchten, können Sie gerne eine Diskussion auf GitHub starten, ein Problem im Issue-Tracker ansprechen oder an [email protected] schreiben.
Um mit dem Geschäftszweig von Cossack Labs Limited zu sprechen, schreiben Sie uns eine E-Mail an [email protected].