Pregunta

Mi tienda fue trasladada a un servidor sin mcrypt y por alguna razón no se puede instalar mcrypt (¡no me preguntes por qué!).

Parece que las contraseñas solo están cifradas con md5 con sal (¡malo!), Así que me pregunto para qué se usa mcrypt.Alguien hackeó Magento y pudo instalarlo sin mcrypt.No me suena bien, pero a él le estaba funcionando.

Ahora me gustaría saber qué se utiliza para cifrar y ¿se interrumpirá el programa si lo reemplazo con un muñeco?¿Existe una mejor solución?¿Se puede obtener información aleatoria segura desde openssl y agregar una biblioteca de cifrado?

TL;DR

  • ¿Para qué se utiliza mcrypt en Magento?
  • ¿Es posible una buena solución?
¿Fue útil?

Solución

MCripta no se utiliza para el hash de contraseñas y claves URL, sino para cifrar y descifrar datos confidenciales, como contraseñas de API, p.almacenado/recuperado de la configuración del sistema.

Todo MCripta La funcionalidad está encapsulada en Varien_Crypt_Mcrypt.A esta clase nuevamente se accede a través de Mage_Core_Model_Encryption.El modelo de cifrado que se debe utilizar en toda la aplicación se configura en el config/global/helpers/core/encryption_model nodo.

Entonces (en teoría) existe una especie de posibilidad de reemplazar este por su propio modelo de cifrado, siempre que satisfaga la interfaz del primero.A primera vista parece que necesitas ampliar Mage_Core_Model_Encryption y reemplazar el _getCrypt método.Esto debería devolver una instancia de clase que implemente los mismos métodos que Varien_Crypt_Mcrypt – pero utiliza una biblioteca de cifrado diferente.

Otros consejos

Podría parchear el código MAGENTO (por ejemplo, a través de app/local CodePool) y reemplazar la funcionalidad de McRypt por aquellos de PPSECLIB, que ofrecen una implementación de la funcionalidad en PUT PUP http://phpseclib.sourceforge.net/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top