Eu fiz a migração do Magento 1 para o Magento 2.3.0 tudo está bom, mas quando eu crio o formulário do cliente em ambos os lados (frente e administrador), recebi o erro relacionado à descriptografia, mesmo que não seja possível editar o cliente ao clicar em salvar, o mesmo erro ocorreu .
Abaixo o erro é:
Erro fatal: TypeError não detectado: o valor de retorno do Magento \ Framework \ Encryption \ Adapter \ SodiumChachaIetf :: decrypt () deve ser do tipo string, booleano retornado em public_html / vendor / magento / framework / Encryption / Adapter / SodiumChachaIetf.php: 68 Rastreio de pilha: # 0 public_html / vendor / magento / framework / Encryption / Encryptor.php (358): Magento \ Framework \ Encryption \ Adapter \ SodiumChachaIetf-> decriptografar ('"\ x10 \ x88 \ x8E \ xB5 \ x851; H \ xB1 \ x12 \ xE1aaP ... ')
# 1 /public_html/vendor/dotmailer/dotmailer-magento2-extension/Helper/Data.php(744): Magento \ Framework \ Encryption \ Encryptor-> descriptografar ('IhCIjrWFMTtIsRL ...')
# 2 /public_html/vendor/dotmailer/dotmailer-magento2-extension/Helper/Data.php(203): Dotdigitalgroup \ Email \ Helper \ Data-> getApiPassword (Objeto (Magento \ Loja \ Modelo \ Site \ Interceptor))
# 3 public_html / vendor / dotmailer / dotmailer-magento2-extens em /public_html/vendor/magento/framework/Encryption/Adapter/SodiumChachaIetf.php na linha 68
fonte
Parece que você está usando a chave de criptografia errada.
Você deve manter a chave na configuração das visualizações:
app / etc / local.xml [Magento 1.x]
E substitua o novo no novo projeto:
app / etc / env.php [Magento 2.x]
Fonte: https://github.com/magento/magento2/issues/19590
fonte
Modificar a classe principal não é recomendado. O problema não é da classe
vendor/magento/framework/Encryption/Adapter/SodiumChachaIetf.php
Mas o problema com a chave de criptografia adicionado ao seu
app/etc/env.php
O motivo desse problema é que a chave de criptografia é incompatível. Você deve ter retirado o despejo do banco de dados de qualquer outra instância e tentando executar com sua instância atual. Então, junto com o banco de dados, você precisa obter a chave de criptografia da mesma configuração de onde você obteve o db dump.
Basta atualizar a chave de criptografia no env.php e ela funcionará bem.
A correção é usar a mesma chave de criptografia da instalação de onde o db está sendo usado.
Espero que seja explicado.
Marque-me se foi útil. Feliz codificação .. !!
fonte
Vá para este arquivo:
E atualize abaixo do código:
Basta alterar o tipo de retorno da função:
para
fonte
Mais um FYI ainda em 2.3 desenvolve ramo.
https://github.com/magento/magento2/blob/2.3-develop/lib/internal/Magento/Framework/Encryption/Adapter/SodiumChachaIetf.php
A correção oficial do magento é essa
fonte