method SubtleCrypto.generateKey
#SubtleCrypto.generateKey(): Promise<CryptoKeyPair>
Generates an asymmetric cryptographic key pair for encryption, signing, or key exchange.
This overload is used for generating key pairs with RSA or elliptic curve algorithms.
Examples #
#
// RSA key generation
const key = await crypto.subtle.generateKey(
{
name: "RSA-OAEP",
modulusLength: 4096,
publicExponent: new Uint8Array([1, 0, 1]),
hash: "SHA-256",
},
true,
["encrypt", "decrypt"]
);
#
// Elliptic curve (ECDSA) key pair generation
const key = await crypto.subtle.generateKey(
{
name: "ECDSA",
namedCurve: "P-384",
},
true,
["sign", "verify"]
);
Parameters #
Return Type #
Promise<CryptoKeyPair>
See #
#SubtleCrypto.generateKey(): Promise<CryptoKey>
#SubtleCrypto.generateKey(): Promise<CryptoKeyPair | CryptoKey>
Generates a cryptographic key or key pair for a given algorithm.
This generic overload handles any key generation request, returning either a symmetric key or an asymmetric key pair based on the provided algorithm.
Parameters #
Return Type #
Promise<CryptoKeyPair | CryptoKey>