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.
Algoritmo Hill: https://www.dropbox.com/s/v6x0jl65ix51nhk/Hill.msi
Se proporcionan algunas claves para probar el algoritmo: https://www.dropbox.com/s/bm9dxphul44b8be/claves%20validas%20hill.txt
Links caidos viejo ):, muy buen desarrollo. (:
ResponderEliminar