SubtleCrypto.generateKey()
O método SubtleCrypto.generateKey()
retorna como Promise
de uma recentemente gerada CryptoKey
, para algoritmos simétricos, ou uma CryptoKeyPair
(en-US), 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 (en-US),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
", umaUint8Array
(en-US) representando o exponencial público"hash"
, um objeto do dicionário referenciando o uso do algoritmo hash. Por exemplo:{name: "SHA-512"}
extractable
é umBoolean
indicando se a key pode ser extraída do objetoCryptoKey
em um estágio mais tardio.keyUsages
é umaArray
indicando 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 (en-US) mensagens."decrypt"
, permitindo que a key seja utilizada para decrypting (en-US) mensagens."sign"
, permitindo que a key seja utilizada para signing (en-US) 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
é umaPromise
que retorna uma key gerada como umaCryptoKey
ou umaCryptoKeyPair
(en-US).
Exceções
A Promise
é rejeitada quando a seguinte exceção é encontrada:
SyntaxError
(en-US) quandokeyUsages
está 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
Especificação | Status | Commentário |
---|---|---|
Web Cryptography API The definition of 'SubtleCrypto.generateKey()' in that specification. |
Recomendação | Definição inicial. |
Compatibilidade com navegadores
BCD tables only load in the browser
Veja também
Crypto
eCrypto.subtle
.SubtleCrypto
, a interface a qual ele pertence.
Dicionário:
"Key" = "Chave"