bindings/webcryptoapi library
Web Cryptography API
Classes
- AesCbcParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.encrypt()
,SubtleCrypto.decrypt()
,SubtleCrypto.wrapKey()
, orSubtleCrypto.unwrapKey()
, when using the AES-CBC algorithm. - AesCtrParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.encrypt()
,SubtleCrypto.decrypt()
,SubtleCrypto.wrapKey()
, orSubtleCrypto.unwrapKey()
, when using the AES-CTR algorithm. AES is a block cipher, meaning that it splits the message into blocks and encrypts it a block at a time. In CTR mode, every time a block of the message is encrypted, an extra block of data is mixed in. This extra block is called the "counter block". A given counter block value must never be used more than once with the same key: - AesDerivedKeyParams
- AesGcmParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.encrypt()
,SubtleCrypto.decrypt()
,SubtleCrypto.wrapKey()
, orSubtleCrypto.unwrapKey()
, when using the AES-GCM algorithm. For details of how to supply appropriate values for this parameter, see the specification for AES-GCM: NIST SP800-38D, in particular section 5.2.1.1 on Input Data. - AesKeyAlgorithm
- AesKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.generateKey()
, when generating an AES key: that is, when the algorithm is identified as any of AES-CBC, AES-CTR, AES-GCM, or AES-KW. - Algorithm
- Crypto
- The interface represents basic cryptography features available in the current context. It allows access to a cryptographically strong random number generator and to cryptographic primitives.
- CryptoKey
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Crypto API represents a cryptographic
key obtained from one of the SubtleCrypto methods
generateKey()
,deriveKey()
,importKey()
, orunwrapKey()
. For security reasons, the interface can only be used in a secure context. - CryptoKeyPair
-
The dictionary of the Web Crypto API represents a key pair for
an asymmetric cryptography algorithm, also known as a public-key
algorithm.
A object can be obtained using
SubtleCrypto.generateKey()
, when the selected algorithm is one of the asymmetric algorithms: RSASSA-PKCS1-v1_5, RSA-PSS, RSA-OAEP, ECDSA, or ECDH. It contains two properties, which are both CryptoKey objects: a privateKey property containing the private key and a publicKey property containing the public key. - EcdhKeyDeriveParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.deriveKey()
, when using the ECDH algorithm. ECDH enables two people who each have a key pair consisting of a public and a private key to derive a shared secret. They exchange public keys and use the combination of their private key and the other entity's public key to derive a secret key that they — and noone else — share. The parameters for ECDHderiveKey()
therefore include the other entity's public key, which is combined with this entity's private key to derive the shared secret. - EcdsaParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.sign()
orSubtleCrypto.verify()
when using the ECDSA algorithm. - EcKeyAlgorithm
- EcKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.generateKey()
, when generating any elliptic-curve-based key pair: that is, when the algorithm is identified as either of ECDSA or ECDH. - EcKeyImportParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.importKey()
orSubtleCrypto.unwrapKey()
, when generating any elliptic-curve-based key pair: that is, when the algorithm is identified as either of ECDSA or ECDH. - HkdfParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.deriveKey()
, when using the HKDF algorithm. - HmacImportParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.importKey()
orSubtleCrypto.unwrapKey()
, when generating a key for the HMAC algorithm. - HmacKeyAlgorithm
- HmacKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.generateKey()
, when generating a key for the HMAC algorithm. - JsonWebKey
- KeyAlgorithm
- Pbkdf2Params
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.deriveKey()
, when using the PBKDF2 algorithm. - RsaHashedImportParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.importKey()
orSubtleCrypto.unwrapKey()
, when importing any RSA-based key pair: that is, when the algorithm is identified as any of RSASSA-PKCS1-v1_5, RSA-PSS, or RSA-OAEP. - RsaHashedKeyAlgorithm
- RsaHashedKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.generateKey()
, when generating any RSA-based key pair: that is, when the algorithm is identified as any of RSASSA-PKCS1-v1_5, RSA-PSS, or RSA-OAEP. - RsaKeyAlgorithm
- RsaKeyGenParams
- RsaOaepParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.encrypt()
,SubtleCrypto.decrypt()
,SubtleCrypto.wrapKey()
, orSubtleCrypto.unwrapKey()
, when using the RSA_OAEP algorithm. - RsaOtherPrimesInfo
- RsaPssParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter intoSubtleCrypto.sign()
orSubtleCrypto.verify()
, when using the RSA-PSS algorithm. - SubtleCrypto
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Crypto API provides a number of
low-level cryptographic functions. Access to the features of is
obtained through the
subtle
property of the Crypto object you get from thecrypto
property.
Extensions
- PropsAesCbcParams on AesCbcParams
- PropsAesCtrParams on AesCtrParams
- PropsAesDerivedKeyParams on AesDerivedKeyParams
- PropsAesGcmParams on AesGcmParams
- PropsAesKeyAlgorithm on AesKeyAlgorithm
- PropsAesKeyGenParams on AesKeyGenParams
- PropsAlgorithm on Algorithm
- PropsCrypto on Crypto
- PropsCryptoKey on CryptoKey
- PropsCryptoKeyPair on CryptoKeyPair
- PropsEcdhKeyDeriveParams on EcdhKeyDeriveParams
- PropsEcdsaParams on EcdsaParams
- PropsEcKeyAlgorithm on EcKeyAlgorithm
- PropsEcKeyGenParams on EcKeyGenParams
- PropsEcKeyImportParams on EcKeyImportParams
- PropsHkdfParams on HkdfParams
- PropsHmacImportParams on HmacImportParams
- PropsHmacKeyAlgorithm on HmacKeyAlgorithm
- PropsHmacKeyGenParams on HmacKeyGenParams
- PropsJsonWebKey on JsonWebKey
- PropsKeyAlgorithm on KeyAlgorithm
- PropsPbkdf2Params on Pbkdf2Params
- PropsRsaHashedImportParams on RsaHashedImportParams
- PropsRsaHashedKeyAlgorithm on RsaHashedKeyAlgorithm
- PropsRsaHashedKeyGenParams on RsaHashedKeyGenParams
- PropsRsaKeyAlgorithm on RsaKeyAlgorithm
- PropsRsaKeyGenParams on RsaKeyGenParams
- PropsRsaOaepParams on RsaOaepParams
- PropsRsaOtherPrimesInfo on RsaOtherPrimesInfo
- PropsRsaPssParams on RsaPssParams
- PropsSubtleCrypto on SubtleCrypto