Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die Web Crypto API ist eine Schnittstelle, die es einem Skript ermöglicht, kryptografische Primitive zu nutzen, um Systeme mit Kryptografie zu erstellen.
Einige Browser haben eine Schnittstelle namens Crypto implementiert, ohne sie klar zu definieren oder kryptografisch sicher zu gestalten. Um Verwirrung zu vermeiden, wurden Methoden und Eigenschaften dieser Schnittstelle aus Browsern entfernt, die die Web Crypto API implementieren, und alle Web Crypto API-Methoden sind auf einer neuen Schnittstelle verfügbar: SubtleCrypto. Die Eigenschaft Crypto.subtle gibt Zugriff auf ein Objekt, das diese implementiert.
Warnung: Die Web Crypto API stellt eine Anzahl von niedrigstufigen kryptografischen Primitiven bereit. Diese sind sehr leicht fehlerhaft zu verwenden, und die damit verbundenen Fallstricke können sehr subtil sein.
Selbst wenn Sie die grundlegenden kryptografischen Funktionen korrekt verwenden, ist das sichere Schlüsselmanagement und die Gesamtgestaltung des Sicherheitssystems äußerst schwierig korrekt durchzuführen und ist in der Regel das Gebiet von spezialisierten Sicherheitsexperten.
Fehler bei der Gestaltung und Implementierung des Sicherheitssystems können die Sicherheit des Systems völlig unwirksam machen.
Bitte lernen und experimentieren Sie, aber versichern oder implizieren Sie nicht die Sicherheit Ihrer Arbeit, bevor eine fachkundige Person in diesem Themenbereich sie gründlich überprüft hat. Der Crypto 101 Kurs kann ein guter Ausgangspunkt sein, um über die Gestaltung und Implementierung sicherer Systeme zu lernen.
Bietet grundlegende kryptografische Funktionen, wie einen kryptografisch starken Zufallszahlengenerator und Zugriff auf kryptografische Primitive über ein SubtleCrypto-Objekt. Ein Objekt dieses Typs kann im globalen Gültigkeitsbereich über Window.crypto oder WorkerGlobalScope.crypto zugegriffen werden.
SubtleCryptoStellt ein Objekt dar, das grundlegende kryptografische Funktionen für Schlüsselgenerierung, Verschlüsselung, Entschlüsselung, Schlüsselverpackung und Entpackung usw. bietet.
CryptoKeyStellt einen kryptografischen Schlüssel dar, der aus einer der Methoden von SubtleCrypto wie generateKey(), deriveKey(), importKey() oder unwrapKey() gewonnen wurde.
Stellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.encrypt(), SubtleCrypto.decrypt(), SubtleCrypto.wrapKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn der AES-CBC-Algorithmus verwendet wird.
AesCtrParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.encrypt(), SubtleCrypto.decrypt(), SubtleCrypto.wrapKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn der AES-CTR-Algorithmus verwendet wird.
AesGcmParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.encrypt(), SubtleCrypto.decrypt(), SubtleCrypto.wrapKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn der AES-GCM-Algorithmus verwendet wird.
AesKeyGenParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.generateKey() übergeben werden sollte, wenn ein AES-Schlüssel generiert wird: das heißt, wenn der Algorithmus als einer der AES-CBC, AES-CTR, AES-GCM oder AES-KW identifiziert wird.
CryptoKeyPairStellt ein öffentlicher und privater Schlüsselpaar dar, das für einen asymmetrischen Kryptografiealgorithmus verwendet wird.
EcKeyGenParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.generateKey() übergeben werden sollte, wenn ein elliptische-Kurve-basiertes Schlüsselpaar generiert wird: das heißt, wenn der Algorithmus als entweder ECDSA oder ECDH identifiziert wird.
EcKeyImportParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.importKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn ein elliptische-Kurve-basiertes Schlüsselpaar generiert wird: das heißt, wenn der Algorithmus als entweder ECDSA oder ECDH identifiziert wird.
EcdhKeyDeriveParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.deriveKey() übergeben werden sollte, wenn der ECDH-Algorithmus verwendet wird.
EcdsaParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.sign() oder SubtleCrypto.verify() übergeben werden sollte, wenn der ECDSA-Algorithmus verwendet wird.
HkdfParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.deriveKey() übergeben werden sollte, wenn der HKDF-Algorithmus verwendet wird.
HmacImportParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.importKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn ein Schlüssel für den HMAC-Algorithmus generiert wird.
HmacKeyGenParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.generateKey() übergeben werden sollte, wenn ein Schlüssel für den HMAC-Algorithmus generiert wird.
Pbkdf2ParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.deriveKey() übergeben werden sollte, wenn der PBKDF2-Algorithmus verwendet wird.
RsaHashedImportParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.importKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn jedes RSA-basierte Schlüsselpaar importiert wird: das heißt, wenn der Algorithmus als einer der RSASSA-PKCS1-v1_5, RSA-PSS oder RSA-OAEP identifiziert wird.
RsaHashedKeyGenParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.generateKey() übergeben werden sollte, wenn jedes RSA-basierte Schlüsselpaar generiert wird: das heißt, wenn der Algorithmus als einer der RSASSA-PKCS1-v1_5, RSA-PSS oder RSA-OAEP identifiziert wird.
RsaOaepParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.encrypt(), SubtleCrypto.decrypt(), SubtleCrypto.wrapKey() oder SubtleCrypto.unwrapKey() übergeben werden sollte, wenn der RSA_OAEP-Algorithmus verwendet wird.
RsaPssParamsStellt das Objekt dar, das als algorithm-Parameter in SubtleCrypto.sign() oder SubtleCrypto.verify() übergeben werden sollte, wenn der RSA-PSS-Algorithmus verwendet wird.
Stellt das Crypto-Objekt dar, das mit dem globalen Objekt im Hauptthread-Bereich assoziiert ist.
WorkerGlobalScope.cryptoStellt das Crypto-Objekt dar, das mit dem globalen Objekt im Worker-Bereich assoziiert ist.
| Web Cryptography Level 2 # crypto-interface |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.