Здравствуйте, нужна помощь с php:
Пишу api. В него приходит 3 переменных - $a, $code, $b.
Нужно закодировать code. Делаю это через OpenSSL:
define('ENCRYPTION_KEY', 'ТУТ КОД ШИФРОВАНИЯ')
$ivlen = openssl_cipher_iv_length($cipher="AES-128-CBC");
$iv = openssl_random_pseudo_bytes($ivlen);
$ciphertext_raw = openssl_encrypt($code, $cipher, ENCRYPTION_KEY, $options=OPENSSL_RAW_DATA, $iv);
$hmac = hash_hmac('sha256', $ciphertext_raw, ENCRYPTION_KEY, $as_binary=true);
$ciphertext = base64_encode( $iv.$hmac.$ciphertext_raw );
$ciphertext - отправляю в бд, вместе с $a $b.
Получаю json
{"messages_dike":[{"id_message":"15","who_sent":"ЧТО-ТО","who_get":"ЧТО-ТО ЕЩЕ","message_text":"ЗАШИФРОВАННЫЙ ТЕКСТ","message_type":"1","message_datetime":"2020-09-04 05:00:00"},{"id_message":"16","who_sent":"ЧТО-ТО","who_get":"ЧТО-ТО ЕЩЕ","message_text":"ЗАШИФРОВАННЫЙ ТЕКСТ","message_type":"1","message_datetime":"2020-09-04 07:00:00"}]}
message_text - и есть тот самый $code. Его нужно расшифровать и вывести на страничку в json формате, далее Android приложение его забирает и обрабатывает.
Я зашифровал $code, отправил. Запросил, получил обратно, вывел json. А расшифровать обратно я не смог