Ir a página principal
El PMC trabaja en entornos Windows y sus requerimientos de memoria son tan bajos que puede funcionar perfectamente hasta con un viejo Pentiun de 100 Mhz, aunque, naturalmente, los procesos de cifrado/descifrado se realizarán bastante más lentamente que en un ordenador actual.
Ventana interface del PMC Pinball Machine Cryptography
![]() Diversos sistemas de bajar e instalar el programa PMC , y algunos problemas de librerías
El programa puede bajarse de forma gratuita desde el siguientes enlace: PMC-V2.02.exe en forma de fichero ejecutable de 60 KB que puede guardarse en cualquier sitio del ordenador y ser ejecutado dando un doble "click", y eso debería ser todo ... pero lamentablemente la informática no es a veces tan fácil como debería ser, y algunos usuarios me han reportado problemas de ejecución del programa, que al ser arrancado se detiene por error indicando que falta el fichero RICHTX32.OCX . Tal fichero debería tenerlo el Windows en su interior, ya que forma parte de las librerías de Visual Basic, pero si por alguna causa no es así y su sistema operativo insiste en tal fichero, también puede bajarlo desde: RICHTX32.OCX y dejarlo en el mismo sitio donde guardó el programa PMC o en el directorio system32 de Windows. Otro problema que me han comunicado consiste en que el gestor de descargas o el antivirus de su ordenador se nieguen a dejar pasar los ficheros de tipo .EXE y .OCX. alegando que comprometen la seguridad y pueden contener virus, y directamente los borre. La amenaza general de los virus es cierta, pero no en este caso, ya que puedo certificar que mis ficheros han sido escaneados a conciencia antes de ser subidos al servidor. Pero como con los antivirus no se puede negociar, para ocultarle todo cuanto no le gusta, he dispuesto otro fichero contenido en formato comprimido PMC-V2.03.RAR, que contiene en su interior un ejecutable denominado PMC-V2.03.exe, de 832 KB, el cual, parte de arrancar el programa PMC instalará automaticamente en su ordenador tanto el RICHTX32.OCX como otros elementos necesarios para la ejecución de Visual Basic. Naturalmente, al ser el fichero contenedor comprimido del tipo .RAR, necesitará el descompresor adecuado, que se trata del conocido programa WINRAR, que por su utilidad debería figurar en todos los ordenadores. Problemas de compatibilidad con Windows Vista y 7 Y aquí deberían acabar todos los problemas, al menos en Windows 98, en Milenium, en W-2000 y en XP, pero resulta que en Windows Vista y Windows 7, con su obsesión por el control interno de todo cuanto se instale, a pesar de haberle insertado el RICHTX32.OCX sigue negándose a reconocerlo. Aparte de ello, numerosos mensajes en foros de Internet informan de una falta de compatibilidad de estos dos sistemas operativos con la rutina básica de ejecución de Visual Basic 6.0. Por este motivo, y a falta de una solución conocida, no puedo asegurar el funcionamiento del PMC en ordenadores equipados con ambos sistemas. La interface del PMC y su manejo En cuanto a los
fundamentos del PMC, y a diferencia de otros complejos programas de
cifrado basados en proceso de bits, como el DES o el AES, parte de una
sencilla idea de encadenamiento de procesos que se me ocurrió hace un
par de meses al contemplar en un bar como una adolescente con
"piercings" hasta en las uñas manejaba con pasión no exenta de furia
destructora una "Máquina del Millón" y ver como la bola metálica bajaba
siguiendo caminos impredecibles al ir chocando y rebotando con los
elementos interiores. De ahí viene precisamente el nombre de "Pinball
Machine" puesto que en el entorno anglosajón tales máquinas recreativas
se conocen de esta manera.
Pero a la vez, como no me resigno a que el PMC sea un programa más de los cientos semejantes que circulan por la red, le he incorporado algunas características que me rondaban desde hace tiempo en la cabeza y que considero originales, a la vez que aumentan tanto la versatilidad como la seguridad de uso. Por otra parte, entiendo que para los amantes de la criptografía tal explicación debe resultar tremendamente parca, pero de momento prefiero dejar de lado los detalles y centrarme en explicar el uso del PMC, reservando para el final una descripción más pormenorizada de las interioridades del sistema. El "Cuadro de texto" Bien. Una vez copiado el PMC en nuestro ordenador o en un elemento de memoria externo como un CD un DVD o u Pendrive, bastará un doble "click" sobre su icono para que se abra la ventana de operación. Observaremos como casi toda ella está ocupada por un cuadro de texto, en donde escribiremos nuestros mensajes en claro o los copiaremos de otras fuentes, como procesadores de texto o incluso de páginas web, y donde también aparecerán los respectivos mensajes cifrados. Este cuadro de texto es de entrada y salida, es decir, tanto servirá para pasar de un texto claro a uno cifrado, como del cifrado al original. Para realizar la primera prueba entraremos los que nos venga en gana, por ejemplo la socorrida frase que utilizo para estos menesteres "Cuando Carmencita llegó a casa de sus tíos, no se esperaba una acogida tan fría de parte de su primo Luis", que teclearemos directamente en el cuadro. El "Recuadro de contraseña" En la línea situada inmediatamente debajo del cuadro de texto podemos vemos dos botones y un recuadro de color rojo que muestra el mensaje "Enter password", en donde entraremos la contraseña, que será de al menos 10 caracteres alfanuméricos, momento en el cual el color del recuadro pasará a verde, indicando que ya podemos proceder al cifrado o descifrado del texto del cuadro superior. En este recuadro entraremos la contraseña de prueba "abracadabra" Como norma general, debemos ser conscientes que la contraseña suele ser el elemento de seguridad más descuidado por los usuarios de un sistema de cifrado. Si como contraseña utilizamos nuestro nombre "pacoperezgarcia", nuestro número de teléfono, o el año, mes y día en que nacimos, no nos quejemos si alguien cercano o que pueda averiguar datos personales la descubre antes del décimo intento. E incluso con contraseñas más extrañas e impersonales existen los procedimientos llamados de "diccionario" y de "fuerza bruta", que utilizados por expertos y basados en la rapidísima velocidad de cálculo de los ordenadores actuales, son capaces de probar miles de palabras o combinaciones de letras por segundo, y pese al gran número de posibilidades iniciales, superar en cuestión de horas o a veces de minutos la barrera que nosotros creíamos infranqueable. Una contraseña debería ser por lo tanto "segura" (precaución que después de tanto hablar no hemos adoptado con "abracadabra"), y para ello debería tener una longitud mínima adecuada y no contener ningún nombre común o geográfico, pero sí incluir a la vez mayúsculas, minúsculas, números y caracteres alfanuméricos. A este respecto, el Pinball Machine Cryptography admite todos los caracteres imprimibles desde el teclado de nuestro ordenador, e incluso frases enteras conteniendo espacios, desde una longitud mínima de 10 caracteres a un máximo de 40. Es evidente por lo tanto que una contraseña más larga otorgará una mayor seguridad, aunque en este caso la velocidad de proceso, especialmente con textos muy largos, también se verá sensiblemente afectada. El recuadro "Informativo" de Longitud y Proceso A la derecha del recuadro de la contraseña podemos ver otro más corto y de color azul. Es el indicador informativo de la longitud del texto a cifrar o descifrar, y durante ambas operaciones nos indicará el avance del proceso en tanto %. Los Botones de operación "Crypt" (Cifrar) Bien, ya hemos introducido el mensaje que queremos ocultar a vistas no autorizadas y también la contraseña que permitirá el proceso, ahora, sin más dilación, pulsaremos el botón rojo rotulado como "Crypt" (Cifrar), situado precisamente a la izquierda de la contraseña, y casi al instante veremos como el mensaje original ha sido sustituido por el siguiente: "ofkkqaoomhogoglfnpvkubllqcookfyiyntmugqhqntpkmyothppnmsbxpxpsozcuiujtpufqmtowhqkoftpzesdpnojonqonoohyfobvkrlrozjqkyfz nlctencofzanbzpsovltllaxiuakfpiojtetmvhpbpbqolfxkogqjndomwmmelkufqaqkmgndvizckawlykscmkyhnasluj"
El resultado es un galimatías imposible de asociar con la frase inicial, porque de esto se trata el cifrado de un texto. Dicho galimatías sería el que guardaríamos de miradas indiscretas en nuestro ordenador o enviaríamos a través de e-mail a un destinatario que por descontado ha de conocer las contraseña que hemos utilizado. Un detalle que salta a primera vista es que en el texto resultante son todo minúsculas y hay más caracteres que en el original, más o menos el doble. Esto es normal y no tiene que preocuparnos porque es una consecuencia del proceso de cifrado. Naturalmente, el resultado también es un texto, y por lo tanto es tan cifrable como el mensaje en claro original, de tal forma, que si queremos cifrarlo dos veces, con la misma contraseña o con otra distinta, sólo tenemos que repetir el proceso anterior. "Decrypt" (Descifrar) Supongamos que ahora somos el destinatario del mensaje. Seleccionaríamos el texto cifrado recibido por email y con el habitual procedimiento de Windows "Copiar" lo cargamos en el portapapeles. A la vez vamos a nuestro programa PMC y pulsamos la tecla "Paste" (Pegar), con lo que el texto aparecerá en el recuadro superior. Introducimos la contraseña en su lugar correspondiente y pulsamos el botón verde "Decrypt" (Descifrar), situado debajo de anterior de cifrado, obrando el milagro de recuperar en un instante la frase de Carmencita y las frías sensaciones con su primo Luis. "Copy" y "Paste" (Copiar y Pegar) Tras describir los botones que nos permiten efectuar las operaciones básicas de cifrar y descifrar, y a igual que antes hemos utilizado "Paste", el botón "Copy" (Copiar) copiará en este caso la totalidad del texto superior, sea cual fuere, en el portapapeles de Windows, para ser pegado o utilizado en cualquier otro programa de proceso de textos, tal como el Word, el Wordpad o incluso el Block de Notas. "Recover" y "Clear" (Recuperar y Borrar) Hay dos botones más, el denominado "Recover" (Recuperar), que nos recupera el texto anterior a la última operación, y el habitual "Clear" (Borrar), que nos limpia la ventana para poder introducir un nuevo texto. Funcionalidades adicionales del PMC Hasta aquí las funcionalidades que podemos encontrar en muchos de los programas de cifrado ya existentes, pero ya he dicho que el PMC dispone de otras añadidas que no son tan comunes: "Slp" y "W.up" -Sleep (Dormir) y - Wake up (Despertarse) La más "inocente" aunque no carente de utilidad es sin duda la tecla "Slp" -Sleep- (Dormir), que ya existía aunque con otro nombre en uno de mis programas de cifrado anteriores que denominé Polyandros. Esta función permite ausentarnos de nuestro ordenador dejando el PMC encendido, en la seguridad que mientras estemos fuera nadie va a poder leer los mensajes escritos en su ventana o manipular los controles de operación. Al pulsar "Slp" todos los cuadros de texto se quedan en blanco e inhabilitados para la escritura, de igual forma los botones tampoco son operativos, excepto el propio "Slp", que ahora muestra un color amarillo más resaltado y ha cambiado su texto por "W.up" -Wake up- (Despertarse). Naturalmente, este "despertar" tampoco ocurrirá de manera automática al pulsar "W.up", sino que en este caso el recuadro de contraseña nos mostrará el mensaje "Enter security password and click again", lo cual significa que deberemos entrar la "contraseña de seguridad" y pulsar de nuevo el botón. Y bien, hasta ahora nosotros conocemos una sola contraseña a la que no le hemos puesto ningún calificativo, entonces ¿cual es la contraseña de seguridad?. Pues sencillamente los seis primeros caracteres de la que hemos utilizado anteriormente. En nuestro caso "abracadabra" tiene 11 caracteres, con lo que la de "seguridad" será "abraca". Una vez introducida, pulsaremos de nuevo "W.up" y el PMC recuperará su estado funcional, con todos los datos que tuviera introducidos. "Clipboard" (Portapapeles) Otra de las funcionalidades permite operar con textos almacenados por otros programas en el portapapeles de Windows, y cifrarlos y descifrarlos sin ni siquiera cargarlos en el recuadro del PMC. Esto también estaba incluido en el Polyandros, aunque de forma menos evidente a través de botones ocultos en un menú secundario. En el PMC, bastará con marcar la casilla de verificación denominada "Clipboard" (Portapapeles), y todas las operaciones de las teclas se efectuarán a partir de entonces en este espacio de Windows. "Cut Line" (Cortar Línea) La tercera funcionalidad permite cortar el mensaje cifrado de salida en líneas de cierto número de caracteres, en concreto de la cifra especificada en el recuadro de texto "Cut L", que por defecto es 60, aunque puede ser cambiada por cualquier valor entre 20 y 120. La utilidad de esta función es evitar que el mensaje cifrado de salida sea una larga frase sin ningún espacio, lo cual suele causar problemas al copiar dicho texto en páginas de foros, procesadores de texto o programas de correo electrónico. Para la opción de descifrado, aunque el texto esté formateado de esta manera, no es necesario activar la opción, ya que el PMC se da cuenta y opera en consecuencia. "Time window" (Ventana de Tiempo) Y la cuarta función añadida al PMC, en este caso totalmente nueva, es la "Time window", o "Ventana de tiempo", que permite cifrar un mensaje para que sea leído en una fecha o tiempo posterior y por espacio de una hora, de manera que aún disponiendo de la contraseña, que junto con el texto cifrado podría ser sustraída, resultaría imposible recuperar un mensaje del que se desconoce cual era la "ventana temporal". El "Time window" se activa marcando la casilla de verificación correspondiente. En este momento ya podemos introducir o cambiar en el valor de los recuadros "Year" (Año), "Mon." (Mes), "Day" (Día) y "Hour" (Hora), la ventana de una hora autorizada. Por ejemplo, introduciendo 2011, 07, 15, 11 permitiría leer el mensaje el dia 15 del mes de Julio del 2011, entre las 11 y las 12 horas, siempre en horario local. Como es normal, el descifrado de un mensaje que contenga una "Ventana de tiempo" a de realizarse marcando también dicha casilla de verificación, y sin alterar los valores de fecha y hora que el programa toma de las variables internas del ordenador en lapsos de 1 minuto. Y para los fanáticos de la criptografía... Con esta somera descripción espero que cualquier persona con conocimientos básicos de informática pueda manejar el PMC y utilizarlo en sus comunicaciones cifradas, pero como he adelantado al principio de esta página, también me gustaría hablar un poco de las sus interioridades y excitar con ello la curiosidad de los más criptoadictos. Sobre la profundidad de esta descripción diré que nunca he creído en la "seguridad por oscuridad", es decir, que la fortaleza de un programa o procedimiento de cifrado dependa principalmente de que no se conozca como funciona interiormente. Porque si bien esto puede ser efectivo ante usuarios normales, raramente aguantará un análisis de ingeniería inversa de hackers experimentados, y mucho menos si estos pertenecen a agencias de seguridad de ámplios recursos. Pero aún sabiendo esto, existe otro factor, y es que ante el descontrol legal que existe en Internet, el trabajo de varios meses realizado en este programa pueda ser aprovechado para fines comerciales por algún listo sin escrúpulos con sólo cambiarle cuatro cosillas de la interface. Por este motivo no voy a hacer público el listado ni algunos de los detalles internos, que reconozco pertenecen a esa criticada "oscuridad", que si bien pienso que no representa la espina dorsal de la seguridad del PMC, sí constituye la primera barrera a la que deberá enfrentarse quien pretenda romper el cifrado. Aparte de esto, lo que sí puedo asegurar, es que a falta de debilidades conocidas (que en sistemas de cifrado siempre pueden dar sorpresas), el código del PMC no contiene "puertas traseras" que permitan romper una clave de 40 caracteres con menos esfuerzo que el necesario para explorar su ingente número de posibilidades, que teniendo en cuenta los 104 caracteres imprimibles más habituales, viene a ser de 48... seguido de 79 ceros... !!! En relación a esta cifra, que por su magnitud no sabría como llamar, un sencillo cálculo nos indica que si dispusieramos de un ordenador capaz de realizar un ataque de "fuerza bruta", es decir, ir explorando todas las posibilidades, a una cadencia de 1 millón de pruebas por segundo, necesitaría un tiempo muy superior a la antigüedad del propio universo para acabar la tarea. Bien, precisadas estas cuestiones, entro en materia. El PMC es un sistema de cifrado de clave secreta y simétrica, es decir, que la clave, contraseña o password ha de estar en conocimiento de emisor y del receptor del mensaje, y que la misma clave sirve para cifrar y para descifrar. Este sistema, a diferencia de otros anteriores de mi misma autoría, como el Aleatix o el Polyandros, no utiliza generadores de números pseudoaleatorios, los cuales siempre he considerado un punto débil por la mediocre fiabilidad de sus rutinas. Por otra parte, antes he contado la anécdota de la quinceañera de los piercings y la "Máquina del Millón" como origen de la idea, pero para explicar el funcionamiento de este cifrado prefiero utilizar una analogía distinta. Imaginaos por ejemplo una mesa de billar algo especial, que en vez de cuatro lados tenga veintiseis (una por cada letra del alfabeto "abcdefghijklmnopqrstuvwxyz", y que tales lados estén formando un polígono. Si lanzamos una bola con cierto ángulo contra uno de los lados, por ejemplo el de la letra "m", la bola rebotará y se dirigirá a otro lado distinto, por ejemplo la "h", que también alcanzará con un ángulo diferente. Entonces, si consideramos que el tapete no tiene rozamiento ni se pierde ímpetu en los rebotes, dicha bola seguiría cruzando la mesa en trayectorias que en un principio no hubiéramos podido predecir. Mientras tanto contaremos los rebotes y detendremos por ejemplo el proceso en el que hace 50, y anotaremos el último lado en que ha rebotado, que imaginemos será la letra "v", apuntando también el ángulo de salida que acompaña a este movimiento. "Mesa de Billar" de 26 lados regulares
En estas circunstancias, la "m" inicial (con su ángulo de entrada) se habrá transformado en la "v" final (con su ángulo de salida). Naturalmente, si el ángulo inicial hubiera sido ligeramente distinto, al cabo de 50 rebotes también lo sería con casi total probabilidad el lado-letra de salida y su ángulo asociado. Como muchos ya habrán adivinado, el proceso es complejo pero totalmente reversible, ya que si disparamos una bola hacia el lado-letra de salida y con un ángulo contrario también al de salida, tras 50 rebotes la bola nos vendrá de la "m" inicial y con un ángulo también contrario al que tenía en la entrada. En ese caso, la clave de "cifrado" que ha convertido la "m" en la "v" sería el ángulo de entrada de la bola dirigiéndose hacía el primer punto de rebote, pero puesto que ya vemos claro el concepto básico, compliquémoslo un poco más. Imaginemos ahora que los 28 lados de nuestro extraño billar no son perpenticulares respecto a hipotéticas líneas trazadas desde su punto medio al centro geométrico de la mesa, sino que todos ellos están más o menos inclinados respecto a dichas líneas dependiendo de los caracteres que forman una palabra clave. Entonces ya podemos prescindir de variar el ángulo de entrada, porque las diferencias las van a establecer las especiales "relaciones de rebote" entre los distintos lados y sus ángulos de inclinación. "Mesa de Billar" de 26 lados con ángulo variable de rebote
Para ello, a partir de la observación, deduje la ley de "rebote", teniendo en cuenta un ángulo de referencia cero, común a superficies y movimientos.
AS = (AL x 2) - AE Siendo: AS el ángulo de salida, AL el ángulo de la superficie de rebote y AE el ángulo de entrada
En una primera aproximación al programa PMC, que como el anterior Polyandros he realizado en Visual Basic 6.0, intenté plantear el proceso para que siguiese de forma casi "gráfica" el esquema del billar y los rebotes, pero resultaba complejo, lento y poco versátil frente a cambios. Además, las leyes del rebote en un billar, tal como ocurre con el reflejo óptico en un espejo tienen algunas particularidades, como el hecho que si en algún momento el ángulo de incidencia es par, con independencia de la "inclinación de siguiente lado de la mesa" el de salida también lo será, y por tanto todos los "rebotes" posteriores serán también pares, descartando los números impares como posible salida y despreciando un 50% de las posibilidades. Por este motivo, los "rebotes" de acuerdo a la fórmula fueron sustituidos por simples "sumas" de números contenidos en una matriz unidimensional de 256 casillas, una por cada posible carácter ASCII que pudiera cifrar. El propio índice de 0 - 255 es la referencia inicial que representa al carácter de entrada y salida, y el valor de la equivalencia es establecido mediante los valores también ASCII de la contraseña que se utilice. Las "sumas" que convierten un carácter en otro forman de esta manera una tabla "lineal" que convertimos en circular "uniendo los extremos" con expresiones de Basic como las siguientes:
De manera que un valor 275 será en realidad 275 - 256 = 19, o un -66 será -66 + 256 = 190 Para explicar como ocurren las "sumas", reduzcamos momentaneamente nuestra tabla de 256 valores a sólo 26. La clave que utilizaremos seguirá siendo "abracadabra"
Ahora, si con dicha tabla queremos cifrar la palabra "HOLA" en 5 ciclos de suma, tomaremos primero la H, cuyo valor en la primera línea es 8, ahora miramos cual es el valor de la "suma" correspondiente en la 2ª línea, que es 1...
Por lo tanto, la letra "H" (valor 8) se habrá convertido en "O" (valor 15) Siguiendo el mismo proceso, las siguientes letras de la palabra "HOLA", que son a "O", la "L" y la "A", se transformarán en:
Con lo que nuestra palabra "HOLA", cifrada con la clave "abracadabra" y 5 ciclos de "suma", se transforma en "OVSH". Ésta es la idea básica del PMC... pero hay un problema del que sin duda cualquier lector con habilidades matemáticas se habrá dado cuenta... que el proceso numérico, tal como lo explico arriba, no es reversible, ya que conocer el resultado de una suma, ni aún disponiendo de la tabla de equivalencias, nos suministra información alguna sobre el valor de los sumandos intermedios ni sobre cual podría ser el primero de ellos, que corresponde precisamente al carácter en claro que debemos hallar en el descifrado. En efecto, si tomamos por ejemplo el valor de la "O" (15), no hay manera posible de saber si en 5 "sumas" ha venido del "H" (8) o de algún otro valor, porque a buen seguro existe más de un camino ascendente que dará el mismo resultado. Y si eso ocurre en 5 ciclos, imaginaos las posibilidades que puede haber en 2.000. Reconozco que este problema me trajo de cabeza durante casi un mes, en que realicé más de un centenar de cambios en el algoritmo del encadenamiento del proceso de sumas. Algunos iban bien pero necesitaban la introducción de caracteres adicionales de control o iban dejando rastros que podrían comprometer la fortaleza del cifrado, hasta que conseguí dar con un procedimiento relativamente simple, totalmente reversible y que estimo seguro... cuya descripción pormenorizada de momento voy a guardarme... pero como no quiero cerrar todas las puertas a la curiosidad, diré para aquellos aficionados a los retos que la respuesta tiene que ver con la forma de cierta constelación utilizada para identificar la estrella la Polar, situada para más señas en las antípodas horarias de la Osa Mayor. Retomando detalles más concretos, añadiré que en la versión final del PMC la clave no sólo afecta a los valores de la tabla de sumas, sino también al número de los "ciclos" de dicha suma, que con una clave de 10 caracteres pueden estar comprendidos entre 200 y 400, pero con una clave de 40 caracteres alcanza la friolera de entre 4 y 8 mil. Otro detalle que tal vez haya intrigado a más de uno es como funciona el "Time window", o ventana de tiempo. Pero en realidad es bastante sencillo. Si se activa dicha opción, los datos de fecha y hora que nosotros elegimos como inicio de la ventana modifican la contraseña elegida, de manera que internamente el programa está en realidad utilizando una contraseña distinta a la que hemos especificado en el recuadro. En este caso, el receptor del mensaje sólo ha de activar la opción de "ventana" en la fecha y hora correcta, porque en el descifrado el programa tomará los datos de fecha y hora del reloj del sistema operativo, y con ellos modificará internamente la contraseña a igual que se hizo en el cifrado. Naturalmente, si nosotros hemos codificado el mensaje para que sea leído el 15 de agosto del 2011, a las 10 de la mañana, en el descifrado, sólo a esta hora y hasta que se cumplan las 11, la contraseña interna será igual a la que se cifró, y por tanto el programa recuperará sin problemas el texto original. Se puede argumentar que el receptor puede cambiar el calendario y el reloj de Windows para buscar una "falsa ventana" en fecha y hora distintos, y es cierto, pero indudablemente, si quien lo intenta no es el receptor legal del mensaje, el tener que ir explorando mes a mes, día a día y hora a hora, añade un notable grado de dificultad al hecho que probablemente tampoco conoce la contraseña. Y por último, estoy seguro que los iniciados en el tema habrán hecho algo más que darse cuenta que el cifrado PMC aumenta el número de caracteres. De hecho, la palabra "HOLA" queda convertida en "ogmevdzhmi", que es exactamente el doble más dos, relación que se mantiene para cualquier longitud. La razón concreta de ello es la necesidad de permitir el cifrado de estos 104 caracteres imprimibles más algunos caracteres de control que afectan al formato del mensaje original, como los retornos de puntero y los saltos de línea. Algunos entendidos verán en ello una cierta referencia la sistema clásico Polybios y otros la manera de reflejar valores en forma hexadecimal... y ninguno de ellos andará errado del todo, pero advierto a quienes les gustan los retos que también en este caso las similtudes son engañosas. En todo caso, espero vuestros comentarios sobre el programa y deseo que os sea útil para guardar vuestros textos privados en el ordenador o enviarlos de forma segura a quien deba leerlos. Ir a página principal
|


