Ejemplo mcrypt_cbc

Ejemplo 1

Descripción

Este ejemplo muestra como cifrar y descifrar datos en modo CBC.
Para ello utilizamos el algoritmo MCRYPT_DES. Antes de todo abrimos el módulo, inicializamos el generador de números aleatorios, le damos un valor a la clave, creamos el vector de inicialización y por último ciframos y desciframos texto con la función mcrypt_cbc().

mcrypt_1_5.png

Código

<?php 
 
    // Abrimos el módulo
    $descrip = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_CBC, '');
 
    // Inicializamos el generador de números aleatorios
    srand((double) microtime() * 1000000);
 
    // Asignamos un valor a la clave
    $tamanio = mcrypt_enc_get_key_size($descrip);
    $clave = substr(md5('la clave es genial'),0,$tamanio);
 
    // Creamos el vector de inicialización
    $tama_iv = mcrypt_enc_get_iv_size($descrip);
    $iv = mcrypt_create_iv($tama_iv, MCRYPT_RAND); 
 
    // Ciframos un texto
    $texto = "quedamos a las 10 en el parque";
    $texto_cifrado = mcrypt_cbc(MCRYPT_DES, $clave, $texto, MCRYPT_ENCRYPT, $iv);
 
    // Mostramos el texto cifrado
    echo "<B>"."Texto cifrado: "."</B>".$texto_cifrado;
    echo "<BR>";
 
    // Desciframos el texto
    $texto_descifrado = mcrypt_cbc(MCRYPT_DES, $clave, $texto_cifrado, MCRYPT_DECRYPT, $iv);
 
    // Mostramos el texto descifrado
    echo "<B>"."Texto descifrado: "."</B>".$texto_descifrado;
 
    // Cerramos el módulo abierto
    mcrypt_module_close($descrip);
 
?>
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License