bueno, yo siempre he usado MD5 y no he tenido problemas, pero si trabajas en un banco ellos optan por alguno un poco más fuerte, con mayor capacidad de cifrado 128 bits o más, los cuales pueden ser más lentos que MD5, MD5 es bueno y hasta la fecha se han reportado pocos casos en que contenidos o claves diferentes generen el mismo hash
mycript y openSSL no tienen
nada que ver
, en tu proyecto puedes usar mycript donde quieras, pero
no cubre la brecha entre el envío de datos desde el navegador al server que cubre openSSL.
openSSL entre otros sólo se configura en el servidor web, donde añades un certificado (generalmente de pago, pero puedes generar uno gratis) y entonces al navegar por tu sistema con
https, el servidor inicia una negociación con el navegador para cifrar la trasferencia, donde le pasa el certificado (llave pública) y con algoritmos matemáticos el navegador cliente encripta el request con us clave privada que el server recibe y desencipta con su propia clave privada + la pública, lo que se conoce como algoritmo asíncrono, donde increíblemente hay 1 clave privada de cada lado y una pública.
como indique, openSSL se configura en el servidor (apache por ejemplo) y en PHP no hay que hacer prácticamente nada, básicamente redirigir hacia
https cuando se requiera
el certificado también es vulnerable hasta cierto punto, por ello los bancos lo renuevan cada 6 meses, si usas uno generado (gratis) es igual de seguro, sólo que el navegador te advertirá que dicho certificado no está registrado