16, 24 e 32 bytes para os modos -128-, -196- e -256-, respectivamente.
O comprimento do vetor de inicialização é sempre de 16 bytes (os bytes que excederem 16 são ignorados).
HMAC
- blake2b512
- blake2s256
- md4
- md5
- md5-sha1
- mdc2
- ripemd (aliases: RIPEMD160, ripemd)
- ripemd160
- rmd160 (aliases: RIPEMD160, rmd160)
- sha1
- sha224
- sha256
- sha3-224
- sha3-256
- sha3-384
- sha3-512
- sha384
- sha512
- sha512-224
- sha512-256
- shake128
- shake256
- sm3
- ssl3-md5 (aliases: MD5, ssl3-md5)
- ssl3-sha1 (aliases: SHA1, ssl3-sha1)
- whirlpool
mode— Nome do algoritmo de hash (não diferencia maiúsculas de minúsculas). Compatível com: md5, sha1, sha224, sha256, sha384, sha512.Stringmessage— Mensagem a ser autenticada.Stringkey— Chave secreta para HMAC.String
String
Exemplos
HMAC-SHA256 básico
Query
Response
Query
Response
Query
Response
aes_decrypt_mysql
AES_ENCRYPT do MySQL.
Produz o mesmo texto em claro que decrypt para as mesmas entradas.
Quando key ou iv são maiores do que deveriam ser, aes_decrypt_mysql seguirá o comportamento de aes_decrypt do MySQL: fazer o ‘fold’ de key e ignorar os bits excedentes de IV.
Compatível com os seguintes modos de descriptografia:
- aes-128-ecb, aes-192-ecb, aes-256-ecb
- aes-128-cbc, aes-192-cbc, aes-256-cbc
- aes-128-cfb128
- aes-128-ofb, aes-192-ofb, aes-256-ofb
mode— Modo de descriptografia.Stringciphertext— Texto cifrado que precisa ser descriptografado.Stringkey— Chave de descriptografia.Stringiv— Opcional. Vetor de inicialização.String
String
Exemplos
Descriptografar dados do MySQL
Query
Response
aes_encrypt_mysql
AES_ENCRYPT do MySQL.
O texto cifrado resultante pode ser descriptografado com a função AES_DECRYPT do MySQL.
Produz o mesmo texto cifrado que a função encrypt para as mesmas entradas.
Quando key ou iv forem maiores do que o normal, aes_encrypt_mysql seguirá o comportamento do aes_encrypt do MySQL: “dobrar” key e ignorar os bits excedentes de iv.
Os modos de criptografia compatíveis são:
- aes-128-ecb, aes-192-ecb, aes-256-ecb
- aes-128-cbc, aes-192-cbc, aes-256-cbc
- aes-128-ofb, aes-192-ofb, aes-256-ofb
mode— Modo de criptografia.Stringplaintext— Texto que deve ser criptografado.Stringkey— Chave de criptografia. Se a chave for maior do que o exigido pormode, é aplicado o key folding específico do MySQL.Stringiv— Opcional. Vetor de inicialização. Apenas os 16 primeiros bytes são considerados.String
String
Exemplos
Comparação de entradas iguais
Query
Response
Query
Response
Query
Response
Query
Response
decrypt
- aes-128-ecb, aes-192-ecb, aes-256-ecb
- aes-128-cbc, aes-192-cbc, aes-256-cbc
- aes-128-ofb, aes-192-ofb, aes-256-ofb
- aes-128-gcm, aes-192-gcm, aes-256-gcm
- aes-128-ctr, aes-192-ctr, aes-256-ctr
- aes-128-cfb, aes-128-cfb1, aes-128-cfb8
mode— Modo de descriptografia.Stringciphertext— Texto cifrado que deve ser descriptografado.Stringkey— Chave de descriptografia.Stringiv— Vetor de inicialização. Obrigatório para os modos-gcm, opcional para os demais.Stringaad— Dados autenticados adicionais. A descriptografia falhará se esse valor estiver incorreto. Funciona apenas nos modos-gcm; nos demais, lança uma exceção.String
String
Exemplos
Descriptografando corretamente dados criptografados
Query
Response
Query
Response
encrypt
- aes-128-ecb, aes-192-ecb, aes-256-ecb
- aes-128-cbc, aes-192-cbc, aes-256-cbc
- aes-128-ofb, aes-192-ofb, aes-256-ofb
- aes-128-gcm, aes-192-gcm, aes-256-gcm
- aes-128-ctr, aes-192-ctr, aes-256-ctr
- aes-128-cfb, aes-128-cfb1, aes-128-cfb8
mode— Modo de criptografia.Stringplaintext— Texto que deve ser criptografado.Stringkey— Chave de criptografia.Stringiv— Vetor de inicialização. Obrigatório para modos-gcme opcional para os demais.Stringaad— Dados autenticados adicionais. Não são criptografados, mas afetam a descriptografia. Funciona apenas em modos-gcm; nos demais, lança uma exceção.String
String
Exemplos
Exemplo de criptografia
Query
Response
Query
Response
tryDecrypt
decrypt, mas retorna NULL se a descriptografia falhar ao usar a chave incorreta.
Sintaxe
mode— Modo de descriptografia.Stringciphertext— Texto cifrado que deve ser descriptografado.Stringkey— Chave de descriptografia.Stringiv— Opcional. Vetor de inicialização. Obrigatório para modos-gcme opcional para os demais.Stringaad— Opcional. Dados autenticados adicionais. A descriptografia não funcionará se esse valor estiver incorreto. Funciona apenas em modos-gcm; nos outros modos, lança uma exceção.String
NULL se a descriptografia falhar. Nullable(String)
Exemplos
Criar tabela e inserir dados
Query
Response