El cifrado es rompible, inherentemente.
Hashing no lo es, pero es colisionable. (Incluso un hash de 256 bits solo tiene un número fijo de posibilidades. Si creo una “contraseña” que tenga los mismos 32 bits que la tuya, el sitio la aceptará, porque no hay diferencia entre ellos. Por lo tanto, debes limitar los intentos , después de quizás los primeros 3, a uno cada 5 segundos, luego, después de otros 5, tal vez uno cada minuto).
La codificación no es rompible, y es por eso que la máquina Enigma era imposible de romper. Si “martes” significa “África” y “miércoles” significa “pastel”, no puede descifrar eso sin un libro de códigos (o, en el caso de Enigma, una máquina de codificación capturada).
- En términos de aplicación instantánea móvil, ¿quién es responsable de la seguridad de los datos, el desarrollador de la aplicación o el sistema operativo?
- ¿Cómo ha cambiado el panorama de amenazas desde la exposición de Stuxnet y la armamentización de las hazañas por equipos de delitos cibernéticos y otras APT?
- ¿Cuáles son los riesgos relacionados con el negocio 'responsable de la seguridad informática'?
- ¿Es posible cifrar y / o proteger con contraseña archivos específicos en una MicroSD?
- ¿Cuáles son las características que concluyen si un NetFlow es anormal? Además, ¿cuáles son los valores de umbral para las características anteriores?
Para un método práctico que es extremadamente difícil de descifrar, agregue la contraseña con una sal variable (por ejemplo, la hora, en segundos, desde la medianoche hora local) y obtenga el resultado. (Y guarde la sal en alguna forma encriptada, por supuesto). Eso puede romperse, pero usar una supercomputadora para entrar en un blog es como gastar un millón de dólares para recoger un centavo, simplemente no vale la pena el esfuerzo.
De la entrada manual de PHP en hash :
the salt should be random string with at least as many variable bits, as there are bits in the hash result. In the user database, store username, the randomly generated salt for that user, and the result of hashing the salt-password-string. Access authentication is then done by looking up the entry for the user, calculating the hash of the salt found in the database and the password provided by the user, and comparing the result with the one stored in the database.
Eso generalmente se considera más allá del alcance de cualquier computadora del tipo actual (una CPU electrónica, etc.) para interrumpir en un período de tiempo razonable. (Todavía es frágil, pero ¿alguien realmente quiere esperar 300 años para que una computadora multimillonaria entre en el foro de alguien?)
(Por cierto, esa sal nunca debe ser la misma sal para todas las entradas).