Histórico da Página
...
Local oTokenPBKDF2 := tPBKDF2():New()
...
Métodos
A classe expõe os seguintes métodos:
setPassword
...
Ajusta a senha que será utilizado na criptografia.
Sintaxe
setPassword( < cAlgo > )
...
oTokenPBKDF2:setPassword("password")
...
setSalt
...
Ajusta o Salt ou palavra de derivação utilizada na criptografia.
Sintaxe
setSalt( < cAlgo > )
...
oTokenPBKDF2:setSalt("salt")
...
setIteration
...
Ajusta o número de iterações utilizadas na criptografia, quanto maior o valor mais recurso será utilizado do processador e irá demorar mais para ser processado.
O número mínimo é de 1 e o valor recomendado é 1000.
Sintaxe
setIteration( < citeration > )
...
oTokenPBKDF2:setIteration(10000)
...
setKeylength
...
Ajusta o tamanho do buffer de saída em bytes, mínimo é de 8 bytes e máximo de 64 bytes.
Sintaxe
setKeylength( < ckeylength > )
...
oTokenPBKDF2:setKeylength(16)
...
setDigest
...
Ajusta a função de digestão utilizado na criptografia.
Sintaxe
setDigest( < cdigest > )
...
oTokenPBKDF2:setDigest("SHA256")
...
encrypt
...
Função deve ser chamada obrigatoriamente após os ajustes acima.
Sintaxe
encrypt()
...
Obrigatório a chamada desta função para criptografar os dados e também identificar erros.
Exemplos
oTokenPBKDF2:encrypt()
...
Funções de retorno.
getKeyHex
...
Função de retorno da criptografia em Hexadecimal, 2 caracteres por byte em maiúsculo os bytes são definidos no setKeyLength.
Sintaxe
getKeyHex()
Exemplos
oTokenPBKDF2:getKeyHex()
...
getKeyRaw
...
Função de retorno da criptografia em formato RAW.
Sintaxe
getKeyRaw()
Exemplos
oTokenPBKDF2:getKeyRaw()
...
getKeyBase64
Função de retorno da criptografia em formato Base64 (RFC1521).
Sintaxe
getKeyBase64()
Exemplos
oTokenPBKDF2:getKeyBase64()
...
getKeyUrl_Base64
Função de retorno da criptografia em formato Base64 URL Applications (RFC4648).
Sintaxe
getKeyUrl_Base64()
Exemplos
oTokenPBKDF2:getKeyUrl_Base64()
getKeyBase64() //Formato BASE64, RFC1521
...
...
release
Obtém a versão da lib da openssl utilizada.
Sintaxe oTokenPBKDF2:release()
release()
Exemplos
conout("Versão da openssl: " + oTokenPBKDF2:release())
...
Sintaxe oTokenPBKDF2:getLastError
()
getLastError()
Exemplos
...
conout("Erro
...
na
...
geração
...
da
...
criptografia.
...
Error:
...
"
...
+
...
oTokenPBKDF2:getLastError())
...
Saída de erros, todos serão impresso no console.log.
Causa | Erros |
---|---|
setPassword não informado. | PBKDF2 The password is not provided. |
setSalt não informado. | PBKDF2 The salt is missing. |
setSalt contém mais de 64 caracteres. | PBKDF2 The salt size is greater than 64, too large. |
setIteration informado menor que 1. | PBKDF2 The minimum number of iterations is 1. |
setKeylength informado menor que 8. | PBKDF2 The minimum key size is 8 bytes or 64 bits. |
setKeylength informado maior que 8. | PBKDF2 The maximum key size is 64 bytes or 512 bits. |
setDigest invalido, consulte a lista da documentação. | PBKDF2 Invalid digest. |
Erro ao gerar o PBKDF2 | PKCS5_PBKDF2_HMAC_SHA1 failed. |
...
Testes de iteration e tempo médio de execução.
Informações |
---|
Abaixo consta um exemplo de reprodução, aumentando as iterações "iteration" demonstrando que quanto maior o número mais demora para terminar o processamento. |
Tempo médio:
9.999.999 iterations 11 segundos.
...