Encriptador/Decriptador
de Fase
Encriptador
IMPORTANTE: Todo lo mencionado en
este archivo viene, en su mayor parte, de las experiencias del autor del mismo,
así que cuando el autor se refiera a algunos términos que no se puedan
encontrar es porque el autor los ha desarrollado, tanto “verbalmente” como en
metodología.
La tecnología de Encriptación de
archivos ha existido desde hace ya varios años, ahora es común ver dicha
tecnología aplicada en procesos tales como llamadas, conexiones o simplemente a
un archivo de texto, por ahora nos enfocaremos en este último. Al encriptar un
archivo de texto lo que hacemos es convertir su información ya sea por los bytes que lo forman o por fase que es la
encriptación como tal del contenido del archivo (palabras). Más comúnmente se
usa la primera forma de encriptación, que consiste en acomodar el orden de los bytes del archivo para así ocultar la
información sensible que pudiera contener.
Aquí hablaremos de la segunda
forma, denominada de “fase”. Se dice que es de “fase” ya que encripta palabra
por palabra, letra por letra, el contenido del archivo que procesemos.
Una de las formas de encriptación
por fase que el autor ha desarrollado es la encriptación basada en enfocarse en
línea por línea y así mismo palabra por palabra de la misma como un todo. A
continuación se explica más detalladamente el proceso:
1. Se lee
las “n” líneas que puedan contener el
archivo.
2. Se empieza
a leer la línea “número uno” hasta la línea “n”.
3. Al leer
cada línea se separa cada letra de cada “palabra”, incluyendo símbolos
especiales y números.
4. Se
convierte cada letra, numero o símbolo a su código ASCII correspondiente,
después ese valor se convierte a Hexadecimal, luego se pasa por una función
XOR, primero por el número de líneas del archivo, más adelante por el largo del
string de esa línea y al último se
hace por dos números “mágicos” más.
5. Y así
sucesivamente para cada línea del archivo de entrada, sin olvidar que se
generara una clave de ocho dígitos numéricos para posteriormente desencriptar
el archivo resultante, de salida.
Decriptador
IMPORTANTE: Todo lo mencionado en
este archivo viene, en su mayor parte, de las experiencias del autor del mismo,
así que cuando el autor se refiera a algunos términos que no se puedan
encontrar es porque el autor los ha desarrollado, tanto “verbalmente” como en
metodología.
Aquí veremos el proceso de decriptación de un archivo de
texto creado a partir de la encriptación por fase. A continuación se explica más detalladamente
el proceso:
1. Se lee
las “n” líneas que puedan contener el
archivo.
2. Se empieza
a leer la línea “número uno” hasta la línea “n”.
3. Al leer cada
línea se separa el número Hexadecimal de su respectivo identificador “K”.
4. Se
convierte cada número extraído a Decimal, luego se pasa cada número obtenido de
la línea por una función XOR, primero por el segundo número mágico, luego por
el primer número mágico, después por el número de líneas menos una y al final
por el por el largo del string de esa
línea.
5. Y así
sucesivamente para cada línea del archivo de entrada.
6. Para
finalizar, antes de procesar el contenido en un archivo de salida, se pregunta
por la clave para desencriptar, si es correcta se escribe la información en el
archivo y si es incorrecta se borra el archivo de origen y no escribe nada en
el archivo de salida.
Notas
Ya que se usan dos números mágicos
para encriptar y aunque sea siempre el mismo archivo de origen, el archivo
resultante siempre tendrá una encripción diferente, de manera que será distinto
cada vez que se encripte.
Se le resta una línea al número de
líneas total al desencriptar ya que, la contraseña es un encabezado, por ello
no cuenta al momento de la decriptación.
En la imagen anterior se puede
apreciar las aplicaciones dentro de su respectiva carpeta y 3 archivos listos para
encriptar, todos ellos con el mismo contenido.
Aquí se muestra que después de encriptar los archivos se
generan dos más por cada uno. Uno tiene extensión “.cod” que corresponde al
archivo encriptado y el otro tiene extensión “.cps” que corresponde al archivo
que contiene la clave de ocho dígitos para desencriptar el archivo.
La pantalla
más grande corresponde al archivo encriptado, la primer pantalla superior
derecha corresponde al archivo de la contraseña para desencriptar y la pantalla
inferior derecha corresponde al archivo de origen, el archivo original.
Como se
observa, cada archivo de salida fue encriptado de manera diferente aunque se tuviera
el mismo contenido en cada archivo de entrada.
Capturas

Ahora
procederemos a desencriptar cada archivo.
Al
desencriptar los archivos con su respectiva clave, se puede observar que todos
entregaron el “mensaje original”, de sus archivos fuente respectivamente.
Links





