Vida de un Programador

Experiencias, ideas y programas

Multi Hash Function (MHF) – Sistema de cifrado y hashing propio

Estos dias en clase estaba *un poco* aburrido, asi que empece a pesnar un proyecto que tenia en mente desde hace un tiempo.

La idea era crear una funcion para crear hashes “dinámicos”, es decir, con la longitud que se quiera.
Esto evoluciono al basarme en RC4 (solo tuve de alli la idea de una P-Box, pero yo he ido mas adelante).
En si, el estadi interno es una array con 256 arrays con los valores del 0 a 255. Estso valores se intercambian posiciones en la propia array, entre multiples e incluso arrays enteras.

El algoritmo ademas permite la introduccion de un “nonce”, que permite variar el resultado de la cadena pseudo-aleatoria (“keystream”, destinada a encriptar mas adelante) de forma segura reusando la clave.

El algoritmo es una clase en PHP con licencia LGPL, aunque espero realizar tambien una clase para Javascript pronto.

También, para eliminar algunos problemas posibles, descarta por defecto los primeros 512 bytes del “keystream”, y realiza varias funciones “pesadas” para reducir el impacto de la fuerza bruta.

Ademas, puede recibir como entrada una clave de cualquier tamaño, que utilizara en su totalidad, no como RC4.

La ultima opcion que tiene es crear un “hash” de la clave, asi que es un todo en uno😀

El proyecto en cuestión esta disponible en Github, con un ejemplo disponible:
https://github.com/shoghicp/MHF/

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: