Ir ao topo

Tecnobyte

Logomarca da Tecnobyte
Contato por WhatsApp

WhatsApp

(69) 3421-6756

Contato por Telefone

(69) 3421-6756

(69) 3421-6757

Enviar mensagem

Enviar

mensagem

Contato por Facebook

Facebook

Vídeos

Vídeos

Atendimento de segunda a sexta, das 08h00 às 19h00 (horário de Brasília).

Banner

PHP

Criptografia de texto com AES/ECB

O código a seguir mostra como criptografar e decriptografar um texto usando o algoritmo AES e modo ECB. O texto criptografado está sendo codificado em base64 para possa ser exibido e armazenado como uma texto qualquer, sem a presença de caracteres especiais.

<?php

function EncryptECB($Buffer, $Key){
  $BlockSize = mcrypt_get_block_size(
    MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
  $PadSize = $BlockSize - (strlen($Buffer) % $BlockSize);
  $Buffer .= str_repeat(chr($PadSize), $PadSize);
  $Buffer = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, 
    $Key, $Buffer, MCRYPT_MODE_ECB);
  return base64_encode($Buffer);
}

function DecryptECB($Buffer, $Key){
  $Buffer = base64_decode($Buffer);
  $Buffer = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, 
    $Key, $Buffer, MCRYPT_MODE_ECB);
  $Length = strlen($Buffer);
  $PadSize = ord($Buffer[$Length - 1]);
  $Buffer = substr($Buffer, 0, strlen($Buffer) - $PadSize);
  return $Buffer;
}

$Entrada = 'Teste de criptografia';
$Senha = 'abc@123';
$Codificado = EncryptECB($Entrada, $Senha);
$Decodificado = DecryptECB($Codificado, $Senha);
echo "
  <br><br><b>Criptografia com AES/ECB</b><br>
  <br>Entrada: $Entrada
  <br>Senha: $Senha
  <br>Codificado: $Codificado
  <br>Decodificado: $Decodificado";
?>

O objetivo desta dica foi mostrar apenas um exemplo simples. Para mais informações recomendo pesquisar sobre as funções mcrypt_encrypt e mcrypt_encrypt.

O conteúdo desta página pode ajudar alguém? Compartilhe!