Realicé la migración de Magento 1 a Magento 2.3.0, todo está bien, pero cuando creo el formulario de cliente de ambos lados (frontal y administrativo) recibí el error relacionado con descifrar, incluso no puedo editar el cliente cuando hago clic en Guardar, se ha producido el mismo error .
Debajo del error es:
Error grave: Error de tipo no capturado: valor de retorno de Magento \ Framework \ Encryption \ Adapter \ SodiumChachaIetf :: decrypt () debe ser del tipo string, boolean devuelto en public_html / vendor / magento / framework / Encryption / Adapter / SodiumChachaIetf.php: 68 Seguimiento de la pila: # 0 public_html / vendor / magento / framework / Encryption / Encryptor.php (358): Magento \ Framework \ Encryption \ Adapter \ SodiumChachaIetf-> decrypt ('"\ 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-> decrypt ('IhCIjrWFMTtIsRL ...')
# 2 /public_html/vendor/dotmailer/dotmailer-magento2-extension/Helper/Data.php(203): Dotdigitalgroup \ Email \ Helper \ Data-> getApiPassword (Object (Magento \ Store \ Model \ Website \ Interceptor))
# 3 public_html / vendor / dotmailer / dotmailer-magento2-extens en /public_html/vendor/magento/framework/Encryption/Adapter/SodiumChachaIetf.php en la línea 68
fuente
Parece que estás usando la clave de cripta incorrecta.
Debe mantener la clave de su configuración de vistas previas:
app / etc / local.xml [Magento 1.x]
Y reemplace el nuevo en el nuevo proyecto:
app / etc / env.php [Magento 2.x]
Fuente: https://github.com/magento/magento2/issues/19590
fuente
No se recomienda modificar la clase principal en absoluto. El problema no es con la clase
vendor/magento/framework/Encryption/Adapter/SodiumChachaIetf.php
Pero el problema con la clave de cripta agregada a su
app/etc/env.php
La razón de este problema es que la clave de la cripta no coincide. Debe haber tomado el volcado de la base de datos de cualquier otra instancia e intentado ejecutar con su instancia actual. Entonces, junto con la base de datos, debe obtener la clave de cifrado de la misma configuración de donde obtuvo el volcado de db.
Simplemente actualice la clave de la cripta en env.php y funcionará bien.
La solución es usar la misma clave de cifrado de la instalación desde donde se está utilizando db.
Espero que se explique.
Marcarme si fue útil. Feliz codificación .. !!
fuente
Ve a este archivo:
Y actualice el siguiente código:
Simplemente cambie el tipo de retorno de la función: De
a
fuente
Más un FYI todavía en 2.3 desarrollar rama.
https://github.com/magento/magento2/blob/2.3-develop/lib/internal/Magento/Framework/Encryption/Adapter/SodiumChachaIetf.php
La solución oficial de magento es esto
fuente