domingo, 14 de octubre de 2012

Algoritmo de Hill


ANÁLISIS



Ø  HILL


Este algoritmo ordena matricialmente los elementos que tengamos:                                         
1.        Tener la clave, esta clave debe ser cuadrada
2.       Los debes de acomodar en forma matricial  y las letras debes transformarlas en números dependiendo del abecedario que estés usando.
3.       Ya que tengas las clave en matriz debes sacar el determinante de la matriz clave det(K)
4.      Ya que tienes el det(K)=r mod n, r(residuo de la división del det y la longitud del alfabeto) n(la longitud del alfabeto)
5.       Sacar el determinante inverso det
6.      El det^(-1) inverso se saca det^(-1)=(n+1)/(det), este determínate debe de ser entero para poder descifrar. Y poder seguir aplicando este algoritmo es la única limitante de este algoritmo.
7.       Para poder Cifrar  Ci = [Mcla][K]modN
8.      Para Descifrar lo que tienes que hacer es sacar la matriz de cofactores de la matriz clave
9.      K^(-1)=[C cof][det ^(-1)]
10.    Y por ultimo descifrar Mcla = [K^(-1)][Ci]modN


Diagramas de flujo













Desarrollo

Para la ejecución del algoritmo de Hill solamente hay que ejecutar el archivo adjunto en la liga, es un install shield, se instala el programa y se ejecuta el icono en el escritorio. Se adjuntan los links de descarga correspondientes.

Se proporcionan algunas claves para probar el algoritmo: https://www.dropbox.com/s/bm9dxphul44b8be/claves%20validas%20hill.txt



1 comentario: