Ir a página principal Polyandros 4.01 - criptografía en Visual Basic
La criptografía es una actividad ancestral que ha sido utilizada por el hombre desde el principio de la historia. Y entendemos la historia como el punto en que apareció la escritura, y los hechos, mensajes, pensamientos y deseos de nuestros antepasados pudieron ser fijados de forma permanente para la posteridad. A la vez, estos elementos eran a veces privados, y sus autores no deseaban que salvo ellos mismos y sus destinatarios, nadie más pudiera averiguar su contenido. Los reyes y generales se pasaban órdenes e informes, los comerciantes guardaban secreto sobre las rutas o el origen de ciertas materias primas, o incluso sobre la emisión de pagarés y letras de cambio que podían ser canjeadas en regiones remotas. Podría decirse que la escritura secreta es la comunicación selectiva entre una persona y otra para compartir conocimientos que sólo atañen a ellos dos. La propia escritura fue en un principio criptográfica (palabra que deriva de la raíz griega Kriptos, que significa secreto), ya que su uso y conocimiento era tan minoritario que sólo una élite era capaz de entenderla. Pero con su difusión fue necesario encontrar códigos y maneras particulares que sólo tuvieran significado para unos pocos. La escritura jeroglífica tenía estas características, así como la cuneiforme del Cercano Oriente, pero la primera escritura secreta específica de la que se tiene constancia es la llamada escítala lacedemonia, utilizada por los espartanos para sus comunicaciones militares. Conocemos también la cifra del griego Polybios y la de Julio César, así como una infinidad de sistemas que fueron desarrollándose desde la Edad Media hasta épocas cercanas a la Primera Guerra Mundial. En el intervalo con la Segunda Contienda nació la "mecanización" de esta actividad, representada principalmente por la máquina Enigma, y a partir del advenimiento de los ordenadores se produjo un salto cualitativo importante, ya que las limitaciones impuestas por la complejidad en el cifrado manual, o por la velocidad en el caso de proceso mecánico, fueron superados en muchos órdenes de magnitud con la utilización de ordenadores. Valga este breve introducción, que no alcanza ni siquiera al punto de reseña, para llegar al estado actual, en que muchos sistemas criptográficos (o de cifrado, como parece más correcto llamarlo en castellano) coexisten entre ellos y son utilizados a diario para comunicar informaciones sensibles a través de canales abiertos. El presente programa es mi segunda incursión en la criptografía, ya que hace algunos años programé el Aleatix en lenguaje de consola C, cuya referencia podéis encontrar en esta misma web. El Polyandros 4.01, en cambio es un programa del tipo Windows realizado en Visual Basic, de manejo mucho más amigable, y también mucho más potente que el anterior, aunque sigue manteniendo una notable simplicidad de concepción y de uso. El Polyandros utiliza el concepto de multiencriptación (Multicript) para conseguir un excelente nivel de seguridad frente a posibles intentos de descifrado. Y en una época en que tanto la copia no autorizada como los métodos de las reclamaciones por derechos de autor están adquiriendo tintes desde excesivos a grotescos, debo informar que he publicado este programa para que sea usado de forma libre y gratuita por cualquier persona o entidad, y para que así se mantenga queda prohibida expresamente la venta o distribución con fines comerciales, así como la ingeniería inversa o encubrir o modificar de alguna forma el título o el autor. De igual forma no puede incluirse en packs junto a otros programas de venta comercial o de regalo para promocionar otros productos comerciales. El Polyandros tiene una sencilla interface de manejo y no requiere instalación alguna, pudiendo ser arrancado de desde un pendrive USB o desde un CDRom, he incluso desde un antiguo diskete de 3,5", ya que a diferencia de las complejas suites que ofrecen semejantes niveles de seguridad, sólo se compone de un único archivo ejecutable de 160 KB. A la vez, el programa opera a una velocidad notable, utilizando muy pocos recursos del ordenador, y puede funcionar sin problemas desde en los PC’s actuales equipados con Windows 7, Vista o XP y 4 GB de Ram, hasta en los antiguos Pentiums II con Windows 98 y 32 MB de Ram. CARACTERÍSTICAS PRINCIPALES DEL POLYANDROS 4.01 1) Cifrado y descifrado de textos de cualquier longitud, respetando mayúsculas, minúsculas, vocales acentuadas, espacios, disposición de párrafos, elementos de puntuación y acentuación, saltos de línea, así como los caracteres gráficos más comunes. El Polyandros opera con el siguiente alfabeto interno de 93 caracteres: - minúsculas: a b c d e f g h i j k l m n ñ o p q r s t u v w x y z
- mayúsculas: A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z - acentuadas: á é í ó ú ü Á É Í Ó Ú - números: 0 1 2 3 4 5 6 7 8 9 - signos: _ , . ; : / \ @ ( ) ? ¿ = + - ~ * Por lo que si en el texto original a cifrar hubiera alguno que no figura en esta lista, automáticamente sería sustituido por un asterisco "*" 2) El Polyandros utiliza de forma simultánea tres sistemas de cifrado distintos, el de Sustitución Polialfabética, el de Transposición y el llamado de Operación XOR, que son aplicados de forma secuencial hasta un máximo de 15 veces sobre el texto inicial, resultando un texto caótico e incomprensible y razonablemente inmune a los sistemas de criptoanálisis más utilizados, como son el análisis de frecuencias y los ataques de fuerza bruta. 3) Durante su funcionamiento normal, el Polyandros no utiliza ni genera archivos especiales, trabajando desde formatos de texto llano (.TXT), así como en documentos de Word, programas de correo electrónico, de mensajería o cualquier otro que utilice los caracteres ASCII habituales. Hay dos formas de introducir o sacar los textos del programa: - Directamente, escribiendo el texto en el cuadro correspondiente. - Utilizando la opción de Copiar y Pegar del sistema operativo Windows 4) Por su concepción y el tipo de algoritmos utilizados el Polyandros resulta extremadamente seguro, y como autor puedo certificar que carece de "puertas traseras" que puedan ser utilizadas para saltarse sus elementos de seguridad. La contraseña no está incluida en el texto final, y no puede ser deducida del mismo por ningún método conocido. Ventana normal del Polyandros
Respecto al último párrafo, he de decir que en un principio tenía la idea de publicar también el código fuente del programa, para que cualquier programador pudiera certificar que en efecto carece de puertas traseras, y como elemento de análisis y aprendizaje de rutinas de Visual Basic. Sin embargo, la facilidad con que el programa puede ser modificado y compilado de nuevo por otra persona, pero incluyendo su propia "puerta" de acceso, o la posibilidad, también constatable de que alguien se adueñe del mismo cambiando un poco la apariencia, la autoría y que pueda incluso comercializarlo, me han hecho desistir. En todo caso, en la medida de mis modestos conocimientos sobre el tema, he intentado que el Polyandros sea lo más seguro posible, y tan indescifrable para mí como pueda serlo para los demás. Aunque es lógico que la valoración de quien lo use deberá basarse en la confianza en mis afirmaciones. INTERFACE GRÁFICO Nada más arrancarlo aparece el interface de forma ligeramente rectangular, en el que se distinguen dos cuatros de texto principales, un tercero más alargado de contraseña, cuatro más pequeños que nos informan de ciertos parámetros de funcionamiento y 12 botones que permiten efectuar las operaciones más comunes. Además, en la parte baja pueden verse cuatro botones de selección y una casilla de verificación. - Mensaje Claro- El cuadro de texto en donde se introduce el texto en claro es el superior, y sobre el mismo, de derecha a izquierda vemos el botón "Borrar", que borra el texto introducido en este cuadro, el botón "Pegar", que pega en el mismo lo que contenga el portapapeles (Clipboard) de Windows, el botón de "Copiar" que selecciona y copia automaticamente todo el texto del cuadro hacia el Portapapeles, y el de "Contar" caracteres, que muestra el resultado en la pequeña casilla de texto situada más a la izquierda. Este último botón, no obstante, muchas veces no resulta necesario, ya que algunas opciones, como la de "Pegar" realizan la misma función de conteo. -Mensaje cifrado- El cuadro de texto en donde aparece el mensaje cifrado tiene el mismo formato que el anterior y está situado inmediatamente debajo. Los botones de "Borrar", "Pegar", "Copiar" y "Contar", así como el cuadro informativo del número de caracteres de este mensaje, son idénticos que en el caso del cuadro de "Mensaje en claro", excepto que en este caso afectan únicamente al cuadro del "Mensaje cifrado". -Contraseña- A continuación viene el cuadro de texto de la contraseña, es decir de la clave de cifrado/descifrado que utilizan los algoritmos del programa para estas operaciones. La contraseña se introduce mediante el teclado y deberá tener una longitud mínima de 12 caracteres y máxima de 60, pudiéndose utilizar para la misma cualquiera de los caracteres contenidos en el alfabeto del punto 1. Es decir, mayúsculas, minúsculas, vocales acentuadas, números, signos gráficos y de puntuación, además de espacios, pudiendo por lo tanto utilizar frases fácilmente recordables, aunque para mejorar la "fortaleza" de una clave, conviene intercalar minúsculas con mayúsculas, signos y números, lo cual dificulta los intentos de descifrado mediante ataques de "fuerza bruta" basados en diccionarios de palabras comunes. Naturalmente, la contraseña es invisible externamente desde el mismo momento momento de su escritura, apareciendo asteriscos en la posición que ocupa cada carácter tecleado. Antes hemos dicho que el Polyandros tiene la característica de “multiencriptación”, lo cual significa que el texto inicial en claro va a cifrarse primero por un sistema, el resultado se cifrará por otro y el resultado por otro. A este respecto, la longitud de la contraseña es lo que establece las veces totales que va a cifrarse antes de aparecer en el cuadro de “Mensaje cifrado”, siendo de 3 veces para la contraseña mínima de 12 caracteres y de 15 para la máxima de 60, con lo que podemos deducir que para cada 4 caracteres añadidos, el mensaje sufrirá un cifrado adicional. Por este motivo, siempre es interesante utilizar contraseñas lo más largas y variadas posible, buscando al menos un equilibrio entre la importancia de la información guardada y el "tamaño de llave" que utilizamos para cerrarla. En la parte inferior de la ventana, también de derecha ha izquierda, hay cuatro botones fácilmente distinguibles: Comenzando por el segundo de ellos, el de "Cifrar", que convierte el texto en claro introducido en el recuadro "Mensaje claro", en un texto cifrado que aparece en el recuadro de "Mensaje cifrado", utilizando naturalmente la contraseña para realizar la operación. El primer botón, el de "Descifrar" convierte un texto cifrado e introducido en "Mensaje cifrado", en un texto claro que aparece en "Mensaje claro", utilizando la misma contraseña que se usó al cifrarlo. Como es preceptivo, para que estas dos funciones se efectúen es necesario que los textos a procesar estén introducidos en su cuadro correcto, así como la contraseña, que debe tener una longitud mínima de 12 caracteres. El botón "Ausentar" permite dejar el programa arrancado en la pantalla del ordenador mientras el usuario se ausenta. Al pulsarlo, y siempre que exista una contraseña válida introducida, desaparecen los mensajes en claro y cifrado y todos los botones importantes quedan desactivados a excepción del propio "Ausentar", que cambia su color a un amarillo brillante y muestra ahora el rótulo "Regresar". Asimismo los recuadros de texto y de contraseña quedan inhabilitados para la escritura o la edición. Para devolver el programa a su modo operativo, es necesario pulsar de nuevo el botón "Regresar", y observaremos que los asteriscos de la contraseña cambian por el texto "INTRODUZCA CONTRASEÑA DE SEGURIDAD Y PULSE DE NUEVO", al colocar el puntero del ratón sobre dicho texto, desaparecerá y no permite escribir dicha contraseña, que está constituida por los 12 primeros dígitos de la contraseña normal que teníamos antes introducida para las operaciones de "Cifrar" o "Descifrar". Si la contraseña introducida es correcta, el Polyandros regresa a su estado operativo, con todos los botones activos, con la reaparición de los mensajes claros o cifrados que hubiera antes, y con la contraseña original en toda su longitud. Los dos pequeños cuadros informativos del final de la misma línea son el Long. que nos muestra la longitud de la contraseña actual, y el Mcript, que nos informa de los pasos de multiencriptación a que va a ser sometido el mensaje. A la vez, ambos recuadros tienen normalmente un fondo de color rojo hasta que la contraseña alcanza los 12 caracteres de longitud, momento en que el fondo cambia a verde, indicando que ya se puede utilizar para la operación que se pretenda realizar. En esta línea queda el botón de color violeta rotulado como "Configuración" que por el tipo de función más compleja que efectúa, describiremos al final de esta parte, y sobre esta línea vemos cuatro botones redondos de selección (denominados normalmente Radio Buttons, porque a igual que los antiguos conmutadores de ondas de los aparatos de radio, el hecho de seleccionar uno de ellos deselecciona automaticamente el último que había activado), y además una casilla cuadrada de verificación que corresponde a una opción individual. Los cuatro botones de selección nos permiten elegir el tipo de texto cifrado de salida. El Abc... genera un texto caótico utilizando los caracteres del alfabeto mostrado en el punto 1 . Cada carácter inicial es cambiado por un carácter final, de manera que la longitud del mensaje cifrado será la misma que la del mensaje en claro. La opción Núm convierte cada carácter en dos números, doblando por lo tanto la longitud del mensaje inicial. La tercera opción Caps, también dobla la longitud al convertir cada caracter inicial en dos letras mayúsculas (capitals), en una cierta similitud a ciertos valores hexadecimales, aunque no mantiene con ellos ninguna equivalencia. Y la última opción Bin convierte cada carácter en un número binario de 7 dígitos, con lo que la longitud inicial queda multiplicada por esta cifra. El motivo de estos distintos formatos de salida es doble. Por una parte desorientar un poco ante cualquier intento de criptoanálisis, y de la otra permitir que el texto sea compatible con ciertos modos de trasmisión, por ejemplo aquellos que sólo permitan los caracteres más normales, que sólo permitan números, que deban ser tecleados a mano o insertado en otros programas de cifrado. La frase en claro "Esta es una prueba de cifrado con Polyandros 4.01", queda convertida con una contraseña "aaaaaaaaaaaa" y con las diversas opciones de formato de salida en: Abc...: 3v1ñ3\AürtO)9qÚtAyBÓñsmR¿s4aÉTjV5ñ_m1c9cOdko@V0a8 Núm: 694341046936251512918214338871912548055604062827610637235420076475048928413933398210874 65564222385 Caps: GJEDEBAEGJDGCFBFBCJBICBEDDIIHBJBCFEIAFFGAEAGCICHGBAGDHCDFECAAHGEHFAEIJCIEBDJD DDJICBAIHEGFFGECCCDIF Bin: 100010101010110101001000010010001010100100001100100011110001100101101110100100001100100001101100101000 111101101100110010110000000010101110000000100000011000111000011011011110100001100100101001011101101100010 100000011110000001001011000010010110010011100010100101001110100001010011110100100001010101011101011100110 1111000000001011000101111010101 El pequeño cuadro de validación rotulado como "Proceso", es puramente estético y permite "ver" el proceso de cifrado/descifrado en los dos cuadros de Mensaje. Aunque la gran velocidad de los cambios que se producen no permita distinguir ningún detalle determinado que pueda ser utilizado para el descifrado sin disponer de la contraseña correspondiente. El marcar dicha casilla sólo sirve para observar los cambios en una sola ocasión, desactivándose ella misma al final del proceso. A la vez, esta opción enlentece notablemente las operaciones de cifrado/ descifrado, multiplicando por 30 o aún más, el tiempo que necesitan para ser llevadas a cabo, ya que el ordenador debe dedicar a actualizar los cuadros de mensaje la mayor parte del tiempo que necesitaría para los cálculos internos, por este motivo no conviene tenerlo activado y en todo caso se desactivará automaticamente con mensajes claros de una longitud superior a 2.000 caracteres, o de mensajes cifrados de 2.000, 4.000 ó 14.000 caracteres, dependiendo de la opción de salida que tengamos seleccionada. CONFIGURACIÓN DEL Polyandros 4.01 Y por último vamos a describir la utilidad del botón "Configuración". Hemos dicho al principio de este manual de instrucciones que el Polyandros 4.01 es un programa de cifrado con una concepción sencilla de manejo, pero la simplicidad de la ventana de usuario es engañosa, puesto que debajo de ella están corriendo algoritmos ciertamente complejos, escritos en lenguaje Visual Basic 6.0 con una longitud de órdenes que alcanza las 1.500 líneas de código. Y esta complejidad se refleja en una serie de variables y opciones adicionales que pueden ser modificadas para aumentar la seguridad final de los mensajes. Si pulsamos el botón "Configuración", y siempre que tengamos una contraseña válida introducida, aparecerá el mismo rótulo informativo que con la opción Ausentar/Regresar. Introducimos la contraseña de seguridad, que recordemos son los 12 primeros dígitos de la principal, e inmediatamente observamos como la ventana del programa se abre en su parte baja, dejando al descubierto una parte que hasta ahora permanecía oculta. Observaremos además que la contraseña principal es ahora visible en caracteres claros. El motivo es que la ventana ampliada está para ser abierta en la intimidad, sin ojos ajenos que miren sobre nuestro hombros. El modo de "texto claro" en la contraseña, permite además introducir sin errores o editar contraseñas largas o con caracteres especiales. Si estando esta parte de la ventana abierta pulsamos otra vez "Configuración", se cierra de nuevo dejando el programa con su aspecto inicial. A la vez, si desde este estado pulsamos "Ausentar", esta función cierra la ventana antes de llevarse a cabo. Por lo que al "Regresar" al programa, será necesario actuar sobre Configuración + Contraseña de Seguridad, para abrirlo de nuevo. Ventana de configuración abierta
Veamos las nuevas funcionalidades que nos muestra el programa: -El cuadro "Portapapeles Win". Permite cifar y descifrar textos contenidos en el portapapeles de Windows sin ni siquera cargarlos en los cuadros de mensaje de Polyandros. Naturalmente, cifra y descifra en base a la contraseña principal y a la configuración que esté activa en este momento. Aparte de los botones "Cifrar" y "Descifrar", de uso evidente, hay también el de "Borrar", que repito, afecta solamente al portapapeles del sistema operativo. - El cuadro "Configuración y contraseña". Permite grabar y recargar de forma automática la totalidad de los parámetros de configuración y la contraseña principal del Polyandros. La idea es poder disponer de una "biblioteca" de configuraciones y contraseñas destinada a distintos usos o destinatarios. Naturalmente, la cedena resultante que guardaremos en un archivo de texto del Bloc de notas o en un documento de Word, también está en forma de texto cifrado de 103 caracteres y para ello se utiliza una contraseña que puede ser igual o distinta de la que contiene el propio archivo. Al apretar el botón "Copiar", nos aparece de nuevo en el cuadro de contraseñas un mensaje informativo: "INTRODUZCA CONTRASEÑA DE CIFRADO Y PULSE DE NUEVO". Llevamos el puntero sobre dicho mensaje y comenzamos a introducir la contraseña que protegerá este pequeño archivo. En este caso, su longitud no está limitada a 12 caracteres, como la anterior de "Seguridad", sino que permite hasta 60 y puede ser igual o distinta de la principal, siendo conveniente que sea más fácil de recordar. Una vez introducida y pulsado de nuevo el botón "Copiar", ya tenemos en el portapapeles de Windows el archivo cifrado, que desde allí puede ser pegado en un documento de texto cualquiera. Para este cifrado, aparte de la contraseña que nosotros elegimos, el programa utiliza una configuración interna especial y distinta de la que figura en los cuadros de configuración, y que no puede ser modificada. Archivo generado por "Copiar" de la configuración por defecto, incluyendo la contraseña "aaaaaaaaaaaa"
C;FUíF8,UXa,ÍR*_oVL-Gi6V?oU4Cí\TdMZUla~Z0Í)0NVf)RxI;eqiooQ4+\LID=575DP=@,É?(:áA/Oiñ-7ÑYB-2tgYN?iiL70i(
El botón "Pegar", toma un archivo de configuración cifrado que previamente habremos puesto en el portapapeles de Windows, nos pide la contraseña que se utilizó al cifrarlo, y pulsando de nuevo el mismo botón, nos carga los datos contendidos directamente en los cuadros correspondientes. A la derecha de los botones observamos además dos casillas de verificación rotuladas como "Configuración" y como "Contraseña", que permiten "grabar y reproducir" de manera independiente los dos tipos de información, es decir, guardar archivos completos o sólo de configuración o sólo de contraseñas. Está claro que debemos saber que contiene cada archivo, porque en caso contrario podríamos intentar recargar algo que no hubiéramos grabado previamente. En la parte izquierda de este cuadro, tenemos el botón "Borrar", que como su nombre indica nos borra todos los parámetros de configuración, por si deseamos introducirlos nuevos de forma manual, y también el botón "Restaurar", que nos carga la configuración por defecto con que arranca el programa. Ahora vienen cuatro cuadros más en los que no hay botones activables paro sí opciones, casillas de verificación y cuadros de entrada de variables: - El Blq. Transp. o Bloque de Transposición, afecta a la rutina de cifrado por transposición, y es el bloque máximo de caracteres que serán tomados por el programa para intercambiarlos entre ellos mismos de forma pseudoaleatoria, de manera que al primero puede aparecer el el sitio 456, y el 1420 en la primera posición. Un bloque de gran tamaño aumenta de forma cuadrática el número de posibilidades de transposición, aumentando por lo tanto el tiempo necesario para explorarlas todas mediante procedimientos informáticos de criptoanálisis de fuerza bruta. Por defecto viene ajustado a un bloque de 2.000 caracteres. Para mantener la "fortaleza" del método de transposición es conveniente que no queden "porciones de bloque pequeñas", es decir que no se utilice un valor de 2000 para un mensaje de 2010, ya que en este caso los últimos 10 caracteres sólo van a transponerse entre ellos y además con el mismo subpassword que los 2.000 iniciales. El procedimiento correcto es otorgar al bloque la misma longitud que el mensaje, y si éste llega a 4000 entonces se puede bajar el bloque a 1/2 de este valor, a 1/3 para una longitud de 6000, a ¼ para 8000, etc. - El Random Control, o Control de Aleatoriedad. El Polyandros 4.01 basa su funcionamiento en la rutina de generación de números pseudoaleatorios de Visual Basic, que siendo muy larga no es infinita, y que presenta además ciertas irregularidades y zonas de repetición que no tuvieron en cuenta los programadores originales de este lenguaje de programación. Por este motivo, he incorporado varias rutinas internas cuya misión es aumentar la "dinámica" y seguridad de la función Rnd inicial. Las opciones y controles son los siguientes: Opciones exclusivas y controles: - Lineal. A partir de un punto determinado los números peudoaleatorios salen a cada consulta en forma de sucesión lineal. - Increm. o Incremental Entre cada nueva consulta se dejan transcurrir un número de ciclos igual a la cantidad que figura en el Cuadro de Salto. - Cíclico. Las respuesta a las consulta es lineal o incremental dentro de ciclos determinados por el tamaño especificado en el Cuadro de Ciclo y con salto especificado en Cuadro de Salto. Valores para las opciones anteriores - Cuadro de salto. Con valor por defecto de 10. Ver opción Cíclico. - Cuadro de ciclo. Con valor por defecto de 200. Ver opciones Incremental y Cíclico. Casilla de verificación Cifrar subpass. El supassword resultante del proceso interno, es a su vez cifrado antes de acudir al generador de números pseudoaleatorios, con lo que la variabilidad resulta muy mejorada. - Secuencia Multicript. La particularidad del Polyandros 4.01, que lo diferencia de otros semejantes es el uso de ciertos algoritmos clásicos como la Sustitución y la Transposición, pero de manera mucho más compleja y difícil de romper. Por ejemplo, cada paso de Sustitución del tipo polialfabético permite unos 99 millones de posibilidades distintas, y cada modo de Transposición con los parámetros por defecto unos 4 millones, que en caso de ser efectuadas en conjunto se multiplicarían entre ellas. Y para acabarlo de bordar, se utiliza también la llamada Operación XOR, en que cada carácter de salida es el resultado de una operación booleana de este tipo, utilizando palabras de 7 bits. La combinación final es una cadena de tres sistemas que se refuerzan entre ellos en sus bondades frente al criptoanálisis avanzado y se ocultan en sus defectos, dando como resultado que un programa de fuerza bruta que intentara romper la codificación del Polyandros, habiendo utilizado la contraseña máxima de 60 caracteres, tendría que enfrentarse a 7,2 x 10 ^83, es decir, la casi inimaginable cifra de 7,2 seguida de 84 ceros. Lo cual estimamos que podría condenar a un superordenador trabajando en el descifrado durante varios cientos de años. El Polyandros no sólo permite cifrar de forma automática y consecutiva con estos tres sistemas, sino que además el usuario puede elegir la secuencia de la cadena de cifrado, que por defecto es la: SXTSXTSXTSXTSXT. En el recuadro observamos el cuadro de texto con una cadena de dichas 15 letras mayúsculas. La S significa Sustitución, la X significa Operación XOR y la T significa Transposición. Colocando el puntero sobre ella, podemos editar esta cadena para reescribirla en el orden que queramos, o suprimir un sistema, o repetir iguales, o cualquier otra combinación que se nos ocurra, aunque naturalmente, para magnificar la seguridad, conviene que todas estén presentes al menos una vez en el cifrado de cualquier mensaje. El primer método que se aplicará será el situado más a la izquierda, avanzando a cada nuevo ciclo hacia la derecha, hasta la posición 15, a medida que aumentemos la longitud de la contraseña Estas tres letras pueden ser escritas también en minúsculas, porque el programa contiene una rutina de adecuación, y en caso de que figure alguna otra letra distinta, simplemente será ignorada. - Bloque Multicript. Hace trabajar el sistema de multiencriptación no por mensajes completos, sino por bloques dentro de un mismo mensaje, de manera que por ejemplo los primeros 50 caracteres se cifren con Sustitución, del 51 al 100 por XOR, del 101 al 150 por Transposición y repite el ciclo para los demás, hasta llegar al final del mensaje. Esta opción se activa con la casilla de verificación On/Off, y el cuadro Ciclos, con un valor incial de 50, establece el tamaño de bloque individual. Ésta es a grandes rasgos la descripción del sistema de cifrado Polyandros, cuya programación ha llevado casi un mes de duro trabajo de planteamiento, de desarrollo y de depuración. A este respecto, he procurado que la función de los botones principales esté vigilada interiormente por rutinas de comprobación que intentan evitar errores por parte del usuario, emitiendo mensajes de atención cuando no se sigue el procedimiento correcto. No obstante, como programador soy consciente de la gran dificultad que entraña el imaginar a priori todas las posibles situaciones que van a presentarse en caso de uso incorrecto, y sería poco realista pensar que no existe la posibilidad que alguna de ellas provoque un mal funcionamiento del programa. En este caso, agradecería que los usuarios me reportaran tales problemas, que procuraré corregir en versiones posteriores. Bajarse el Polyandros 4.01
Programa de cifrado Polyandros 4.01 Bajarse las instrucciones en documento de Word Instrucciones del Polyandros 4.01 Ir a página principal
|




