ROT13 («rotar 13 posiciones», a veces con un guion: ROT-13) es un sencillo cifrado César utilizado para ocultar un texto sustituyendo cada letra por la letra que está trece posiciones por delante en el alfabeto. A se convierte en N, B se convierte en O y así hasta la M, que se convierte en Z. Luego la secuencia se invierte: N se convierte en A, O se convierte en B y así hasta la Z, que se convierte en M. Este algoritmo se utiliza en foros de Internet como medio para ocultar de miradas casuales el final de un chiste, la solución a un acertijo, el destripe de una película o una historia, o algún texto ofensivo. ROT13 se ha descrito como el «equivalente en Usenet de una revista que imprime bocabajo la respuesta a un pasatiempo»

Implementaciones para Unix de RO13 5h33g

- tr A-Za-z N-ZA-Mn-za-m
- sed y/ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm

Implementación en C de ROT13 246y5s


Una posible implementación en C, para codificación ASCII, sería la siguiente. En esta implementación se obvian las letras que no están en el alfabeto de ASCII no se reemplazan.

Implementación en VB de ROT47  4t3v2m


Una posible implementación de ROT47 en VB6. El cifrado queda claramente expuesto en el bucle.
Debe notarse que se pasa la cadena de texto a una matriz para ganar en velocidad de cálculo y finalmente se deposita en la cadena de texto. Igualmente debe notarse que se pasa a una matriz de enteros debido a la codificación de 2 bytes por carácter, si se opera con 1 byte por carácter debe usarse una matriz de bytes y copiar solo max bytes y no max * 2 bytes.
Compartir

Mi nombre es Alexander fundador y CEO, y me gusta llamarme un Geek. Amo la informática, tecnología y todo lo que está relacionado con ella. Inicié este sitio con la intención de compartir conocimientos como cursos en línea, tutoriales y videotutoriales. Estoy muy entusiasmado con la información que he descubierto y compartido hasta el momento. La verdad es que lo he hecho con el mayor de los gustos. Así es, soy un Geek con una visión para compartir conocimiento. Leer mas... 6c435j