Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  //Criando classe
  oTokenPBKDF2:= tPBKDF2():New()
  
  //Informação da release utilizada da openssl
  conout("release")
  oTokenPBKDF2:release()
  
  //Parametro obrigatorio senha
  oTokenPBKDF2:setPassword("password")
  
  //Parametro obrigatorio salt, podendo ser string ou base64
  oTokenPBKDF2:setSalt("salt")
  
  //Número de iteration, quantidade de rodadas de criptografia! RFC 2898 sugere no minimo 1000.
  oTokenPBKDF2:setIteration(10000)
  
  //Tamanho do buffer da chave de saida.
  //8  bytes ou 64  bits
  //16 bytes ou 128 bits
  //32 bytes ou 256 bits
  //64 bytes ou 512 bits
  oTokenPBKDF2:setKeylength(16)
  
  //Função de digest usado na criptografia
  //SHA1, SHA256, SHA512
  oTokenPBKDF2:setDigest("SHA256")
  
  //Função obrigatorio usada para chamar a criptografia
  oTokenPBKDF2:encrypt() 
  
  //Funções de retorno
  //Neste caso saida com 32 caracteres (hexdecimal) 2 caracteres por byte. 
  conout("getKeyHex      : " + cValToChar( oTokenPBKDF2:getKeyHex() ))
  conout("getKeyRaw      : " + cValToChar( oTokenPBKDF2:getKeyRaw() ))  
  conout("getKeyBase64   : " + cValToChar( oTokenPBKDF2:getKeyBase64() ))  
  conout("getKeyBase64Url: " + cValToChar( oTokenPBKDF2:getKeyBase64UrlgetKeyUrl_Base64() ))  
  
  //Importante sempre destruir a classe para evitar aumento de memoria no Appserver.
  FreeObj(oTokenPBKDF2)

...

getKeyBase64() //Formato BASE64, RFC1521 

...

getKeyUrl_Base64() //Formato BASE64 Url Safe.

...

getLastError

Obtém a versão da lib da openssl utilizada.

...