Etiquetado de la entrada: codificacion


2
Mar 10

Codificación en Rot13 de una cadena

Este sistema de codificación (encriptación) de cadenas ya fue usado por Julio César (con un desplazamiento de 3 caracteres siempre hacia adelante) y aunque en general es fácil de decodificar, para almacenar datos no sensibles de forma temporal podría ser útil. La función de esta encriptación es el desplazamiento por el abecedario de cada caracter 13 posiciones hacia delante o hcia atrás en función de qué caracter se trate.

function rot13( $cadena ) {
    for( $i = 0; $i < strlen( $cadena ); $i++ ) {
        $caracter = ord( $cadena[$i] );
        if ($caracter >= ord( 'n' ) & $caracter <= ord( 'z' ) | $caracter >= ord( 'N' ) & $caracter <= ord( 'Z' ) )
            $caracter -= 13;
        elseif ($caracter >= ord( 'a' ) & $caracter <= ord( 'm' ) | $caracter >= ord( 'A' ) & $caracter <= ord( 'M' ) )
            $caracter += 13;
        $cadena[$i] = chr( $caracter );
    }
    return $cadena;
}