Pd. md5 es decodificable por fuera bruta, mi script no Wink
MD5 no se puede DESENCRIPTAR.
Se puede obtener por fuerza bruta como tu dices.
Sin embargo, yo tambien puedo obtener la palabra desencriptada si obtengo la encriptada, de dos formas.
1.- Cojo una clave encriptada, por ejemplo:
E4f010b3c1c9fe63bef597598909069a7ce9709c86ff6c4ca4238a0b923820dcc509a6f75849b
Luego elijo una palabra, y la encripto muchos veces, hasta que me de 25 casos distintos de encriptado.
Si ninguno de los casos encriptados es igual a la clave encriptada que yo tenia, probamos con otra palabra.
2.- Creo una base de datos, y voy introduciendo palabras en tu script.
Por ejemplo, escribo "Hola", y voy actualizando hasta que me de 25 encriptaciones diferentes (Sustituyase 25 por el numero de algoritmos que usas para encriptar), y ya tengo todas las posibles encriptacions de la palabra "Hola" en mi base de datos. Luego simplemente escribo SELECT * FROM encriptaciones WHERE palabra = 'Hola' y tendria las 25 encriptaciones, suponiendo que estemos en una BD mysql.
Con la fuerza bruta tambien se puede echar abajo tu sistema, pero no significa que se desencripte.
No somos mentes cerradas, somos mentes REALISTAS.
Eso no lo entendí ¿los primeros caracteres de quien? ¿de hola? si fuera así siempre se elegiría el mismo algortimo.
Los primeros caracteres de la cadena encriptada.
E4f010b3c1c9fe63bef597598909069a7ce9709c86ff6c4ca4238a0b923820dcc509a6f75849b
En realidad no se si son los primeros, pero me parece que si.
Imagina que su script tiene 25 sistemas de encriptacion totalmente distintos.
Los primeros caracteres de esa cadena son los que señala cual de los 25 sistemas (25 por poner un numero, aunque creo que no son mas de 10) se a utilizado para encriptar esa cadena, y asi poder desencriptarla, o encriptar una nueva cadena con el mismo sistema, no se si me explico.
Saludos