'.$texto1[$i].' -> '.$salida_rotor."\r\n"; $texto_codificado .=$salida_rotor; //Giramos rotor $last = array_pop ($rotor[0]); array_unshift($rotor[0], $last); $i++; } return $texto_codificado; } function decodifica_cadena($texto, $rotor) { $texto1=str_split($texto); $texto_decodificado=''; $i=0; while(isset($texto1[$i])) { $entrada_rotor=array_search($texto1[$i], $rotor[1]); $salida_rotor=$rotor[0][$entrada_rotor]; $texto_decodificado .= $salida_rotor; //Giramos rotor $last = array_pop ($rotor[0]); array_unshift($rotor[0], $last); $i++; } return $texto_decodificado; } function cifra_texto($texto) { global $rotor1, $rotor2, $rotor3; $texto=strtolower($texto); $cifrado1=codifica_cadena($texto, $rotor1); $cifrado2=codifica_cadena($cifrado1, $rotor2); $cifrado3=codifica_cadena($cifrado2, $rotor3); //Reflector $cifrado4=codifica_cadena($cifrado3, $rotor2); $cifrado5=codifica_cadena($cifrado4, $rotor1); return $cifrado5; } function descifra_texto($texto) { global $rotor1, $rotor2, $rotor3; $texto=strtolower($texto); $descifrado1=decodifica_cadena($texto, $rotor1); $descifrado2=decodifica_cadena($descifrado1, $rotor2); $descifrado3=decodifica_cadena($descifrado2, $rotor3); //Reflector $descifrado4=decodifica_cadena($descifrado3, $rotor2); $descifrado5=decodifica_cadena($descifrado4, $rotor1); return $descifrado5; } ?>