interface SubtleCrypto { decrypt ( algorithm : | AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams , key : CryptoKey , data : BufferSource , ) : Promise < ArrayBuffer > ; deriveBits ( algorithm : | AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params , baseKey : CryptoKey , length ?: null | number , ) : Promise < ArrayBuffer > ; deriveKey ( algorithm : | AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params , baseKey : CryptoKey , derivedKeyType : | AlgorithmIdentifier | HkdfParams | Pbkdf2Params | HmacImportParams | AesDerivedKeyParams , extractable : boolean , keyUsages : KeyUsage [] , ) : Promise < CryptoKey > ; digest ( algorithm : AlgorithmIdentifier , data : BufferSource , ) : Promise < ArrayBuffer > ; encrypt ( algorithm : | AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams , key : CryptoKey , data : BufferSource , ) : Promise < ArrayBuffer > ; exportKey ( format : "jwk" , key : CryptoKey ) : Promise < JsonWebKey > ; exportKey ( format : "spki" | "pkcs8" | "raw" , key : CryptoKey , ) : Promise < ArrayBuffer > ; exportKey ( format : KeyFormat , key : CryptoKey , ) : Promise < ArrayBuffer | JsonWebKey > ; generateKey ( algorithm : "Ed25519" | { name : "Ed25519" } , extractable : boolean , keyUsages : readonly (
"sign" | "verify" )
[] , ) : Promise < CryptoKeyPair > ; generateKey ( algorithm : RsaHashedKeyGenParams | EcKeyGenParams , extractable : boolean , keyUsages : readonly KeyUsage [] , ) : Promise < CryptoKeyPair > ; generateKey ( algorithm : Pbkdf2Params | AesKeyGenParams | HmacKeyGenParams , extractable : boolean , keyUsages : readonly KeyUsage [] , ) : Promise < CryptoKey > ; generateKey ( algorithm : AlgorithmIdentifier , extractable : boolean , keyUsages : KeyUsage [] , ) : Promise < CryptoKey | CryptoKeyPair > ; importKey ( format : "jwk" , keyData : JsonWebKey , algorithm : | AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm , extractable : boolean , keyUsages : readonly KeyUsage [] , ) : Promise < CryptoKey > ; importKey ( format : "spki" | "pkcs8" | "raw" , keyData : BufferSource , algorithm : | AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm , extractable : boolean , keyUsages : KeyUsage [] , ) : Promise < CryptoKey > ; sign ( algorithm : AlgorithmIdentifier | RsaPssParams | EcdsaParams , key : CryptoKey , data : BufferSource , ) : Promise < ArrayBuffer > ; unwrapKey ( format : KeyFormat , wrappedKey : BufferSource , unwrappingKey : CryptoKey , unwrapAlgorithm : | AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams , unwrappedKeyAlgorithm : | AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm , extractable : boolean , keyUsages : KeyUsage [] , ) : Promise < CryptoKey > ; verify ( algorithm : AlgorithmIdentifier | RsaPssParams | EcdsaParams , key : CryptoKey , signature : BufferSource , data : BufferSource , ) : Promise < boolean > ; wrapKey ( format : KeyFormat , key : CryptoKey , wrappingKey : CryptoKey , wrapAlgorithm : | AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams , ) : Promise < ArrayBuffer > ; } Defined in node_modules/typescript/lib/lib.dom.d.ts:23085 Defined in node_modules/typescript/lib/lib.dom.d.ts:23118 Methodsdecrypt Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23087 derive Bits Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23089 derive Key Defined in node_modules/typescript/lib/lib.dom.d.ts:23091 digest Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23093 encrypt Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23095 export Key Defined in node_modules/typescript/lib/lib.dom.d.ts:23097 exportKey ( format : "spki" | "pkcs8" | "raw" , key : CryptoKey , ) : Promise < ArrayBuffer > Parameters format : "spki" | "pkcs8" | "raw" key : CryptoKey Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23098 Returns Promise < ArrayBuffer | JsonWebKey > Defined in node_modules/typescript/lib/lib.dom.d.ts:23099 generate Key generateKey ( algorithm : "Ed25519" | { name : "Ed25519" } , extractable : boolean , keyUsages : readonly (
"sign" | "verify" )
[] , ) : Promise < CryptoKeyPair > Parameters algorithm : "Ed25519" | { name : "Ed25519" } extractable : boolean keyUsages : readonly ("sign" | "verify" )[] Defined in node_modules/typescript/lib/lib.dom.d.ts:23101 Defined in node_modules/typescript/lib/lib.dom.d.ts:23102 Defined in node_modules/typescript/lib/lib.dom.d.ts:23103 Defined in node_modules/typescript/lib/lib.dom.d.ts:23104 import Key Defined in node_modules/typescript/lib/lib.dom.d.ts:23106 Defined in node_modules/typescript/lib/lib.dom.d.ts:23107 sign Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23109 unwrap Key Defined in node_modules/typescript/lib/lib.dom.d.ts:23111 verify Returns Promise < boolean > Defined in node_modules/typescript/lib/lib.dom.d.ts:23113 wrap Key Returns Promise < ArrayBuffer > Defined in node_modules/typescript/lib/lib.dom.d.ts:23115
This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto). Available only in secure contexts.
MDN Reference