Posso usar Magento sem mcrypt?[duplicado]
-
28-09-2020 - |
Pergunta
Minha loja foi movida para um servidor sem mcrypt e por algum motivo o mcrypt não pode ser instalado (não me pergunte por quê!).
Parece que as senhas são criptografadas apenas com MD5 com sal (ruim!), Então me pergunto para que serve o mcrypt.Alguém hackeou o Magento e conseguiu instale-o sem mcrypt.Não parece bom para mim, mas estava funcionando para ele.
Agora eu gostaria de saber o que é usado para criptografar e o show será interrompido se eu substituí-lo por um manequim?Existe uma solução alternativa melhor?Pode obter segurança aleatória do openssl e adicionar uma biblioteca de criptografia?
DR
- Para que é usado o mcrypt no Magento?
- É possível uma boa solução alternativa?
Solução
MCrypt não é usado para hash de senha e chave de URL, mas para criptografar e descriptografar dados confidenciais, como senhas de API, por exemplo.armazenado/recuperado da configuração do sistema.
Todos MCrypt funcionalidade é encapsulada em Varien_Crypt_Mcrypt
.Esta classe novamente é acessada via Mage_Core_Model_Encryption
.O modelo de criptografia que deve ser usado em toda a aplicação é configurado no arquivo config/global/helpers/core/encryption_model
nó.
Portanto (em teoria) há uma chance de substituir este pelo seu próprio modelo de criptografia – desde que satisfaça a interface do anterior.À primeira vista, parece que você precisa estender Mage_Core_Model_Encryption
e substitua o _getCrypt
método.Isso deve retornar uma instância de classe que implementa os mesmos métodos que Varien_Crypt_Mcrypt
– mas faz uso de uma biblioteca de criptografia diferente.
Outras dicas
Você pode corrigir o código Magento (por exemplo, através do código de codepool de geracodiceetagcode) e substituir a funcionalidade McYpt por aqueles a partir de Phpseclib, que oferecem uma implementação da funcionalidade em puro PHP http://phpseclib.sourceforge.net/