SubtleCrypto.generateKey()
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since janeiro de 2020.
* Some parts of this feature may have varying levels of support.
O método SubtleCrypto.generateKey() retorna como Promise de uma recentemente gerada CryptoKey, para algoritmos simétricos, ou uma CryptoKeyPair, contendo duas keys recentemente geradas, para algoritmos assimétricos, que combina com o algoritmo, o uso e a extractividade são dados como parâmetro.
Sintaxe
var result = crypto.subtle.generateKey(algo, extractable, keyUsages);
Parâmetros
-
algoé um objeto do dicionário definindo a função utilizada da geração da key. algo suportados são : AES-CBC,AES-CTR,AES-GCM,RSA-OAEP,AES-KW,HMAC,RSASSA-PKCS1-v1_5,ECDSA,ECDH, eDH. Os formatos de objetos do dicionário são:"name", o qual corresponde com um dos algo's suportados listados acima,"modulusLength", o qual corresponde com o número de dígitos usado nos módulos"publicExponent", umaUint8Arrayrepresentando o exponencial público"hash", um objeto do dicionário referenciando o uso do algoritmo hash. Por exemplo:{name: "SHA-512"}
-
extractableé umBooleanindicando se a key pode ser extraída do objetoCryptoKeyem um estágio mais tardio. -
keyUsagesé umaArrayindicando o que pode ser feito com uma key recentemente gerada. Os possíveis valores da array são:"encrypt", permitindo que a key seja utilizada para encrypting mensagens."decrypt", permitindo que a key seja utilizada para decrypting mensagens."sign", permitindo que a key seja utilizada para signing mensagens."verify", permitindo que a key seja utilizada para verifying the signature de mensagens."deriveKey", permitindo que a key seja utilizada como uma key base para quando se derivando uma nova key."deriveBits", permitindo que a key seja utilizada como uma key base quando se derivando bits de dados para uso em criptografias primitivas."wrapKey", permitindo que a key envolva uma chave simétrica para uso (transferência, armazenamento) em ambientes não seguros."unwrapKey", permitindo que a key se desvincule de uma chave simétrica para uso (transferência, armazenamento) em ambientes não seguros.
Valor de retorno
resulté umaPromiseque retorna uma key gerada como umaCryptoKeyou umaCryptoKeyPair.
Exceções
A Promise é rejeitada quando a seguinte exceção é encontrada:
SyntaxErrorquandokeyUsagesestá vazia mas a key gerada simetricamente é do tipo"secret"ou"private"ou o componente privado gerado do par de key assimétrica está vazio.
Especificações
| Specification |
|---|
| Web Cryptography Level 2> # SubtleCrypto-method-generateKey> |
Compatibilidade com navegadores
Loading…
Veja também
CryptoeCrypto.subtle.SubtleCrypto, a interface a qual ele pertence.
Dicionário
"Key" = "Chave"