php openssl_decrypt Ошибка: digital envelope routines:EVP_DecryptFinal_ex:wrong final block length

357
30 сентября 2017, 23:24

Пытаюсь передать зашифрованные данные с одного своего домена на другой. Вот функция шифрования:

public function encryptByKey($data, $key)
    {
        $ivlen = openssl_cipher_iv_length($this->method);
        $iv = openssl_random_pseudo_bytes($ivlen);
        \Log::info('$iv: ' . $iv);
        $hex_iv = bin2hex($iv);
        $crypto_data = openssl_encrypt($data, $this->method, $key, 0, $iv);
        return
            [
                'hex_iv' => $hex_iv,
                'crypto_data' => $crypto_data
            ];
    }

на другой стороне дешифрование происходит так:

public function decryptByKey($data, $hexIv, $key)
    {
        $binIv  = hex2bin($hexIv);
        \Log::info('$iv: ' . $binIv);
        $output = openssl_decrypt($data, $this->method, $key, 0, $binIv);
        return $output;
    }

Пока проверяю дебагером в phpStorm - работает как часы. Пытаюсь запустить без дебагера - выдает ошибку. в чем может быть проблема? Ключи одинаковые, iv одинаковый, проверяла вдоль и поперек. Вывожу ошибку при помощи openssl_error_string();

READ ALSO
PDO execute() подставляет нули вместо переменных

PDO execute() подставляет нули вместо переменных

PDO всё верно подставляет куда требуется

231
Поиск по многомерному массиву php

Поиск по многомерному массиву php

ЗдравствуйтеИмеется массив такого вида:

320
Работа return в рекурсивной функции php

Работа return в рекурсивной функции php

Доброго времени сутокЕсть код

208
Не получается добавить custom order item data woocommerce

Не получается добавить custom order item data woocommerce

На странице продукта(отеля) есть пять кнопок ADD TO CART, все они кастомные и на первой из них висит шорткод:

225