Как раскодировать aes128gcm? Здравствуйте! Как можно раскодировать запрос с web-push уведомления, если известен authToken и publicKey. $ciphertext = .....; // тело запроса $publicKey = 'BCR.....'; // он же p256dh Key $authToken ='J4E5H.......'; echo openssl_decrypt($ciphertext, "aes-128-gcm",$publicKey, 0, $authToken);https://jrconlin.github.io/WebPushDataTestPage/ Вот здесь более подробно описан процесс кодирования, но к сожалению ничего не работает) Данный код к сожалению ничего не выдает.... может кто-то сталкивался?
Для раскодирования AES128GCM с помощью OpenSSL в PHP вам нужно правильно сформировать параметры функции openssl_decrypt.
В вашем случае, если $ciphertext содержит зашифрованное сообщение, $publicKey содержит public key (p256dh Key) и $authToken содержит auth token, то код для раскодирования должен выглядеть примерно так:
Пожалуйста, убедитесь, что $ciphertext действительно содержит зашифрованное сообщение, и что $publicKey и $authToken переданы в правильном формате. Если все параметры верны, то данный код должен раскодировать сообщение с использованием указанных ключей.
Для раскодирования AES128GCM с помощью OpenSSL в PHP вам нужно правильно сформировать параметры функции openssl_decrypt.
В вашем случае, если $ciphertext содержит зашифрованное сообщение, $publicKey содержит public key (p256dh Key) и $authToken содержит auth token, то код для раскодирования должен выглядеть примерно так:
$ciphertext = .....; // тело запроса$publicKey = 'BCR.....'; // он же p256dh Key
$authToken ='J4E5H.......';
// Декодируем base64 строку $publicKey
$publicKey = base64_decode($publicKey);
// Устанавливаем параметры.
$tag_length = 16;
$iv = substr($ciphertext, 0, 12);
$tag = substr($ciphertext, -16);
$encrypted_data = substr($ciphertext, 12, strlen($ciphertext) - 12 - 16);
// Расшифровываем сообщение.
$plaintext = openssl_decrypt($encrypted_data, 'aes-128-gcm', $publicKey, OPENSSL_RAW_DATA, $iv, $tag, $authToken);
echo $plaintext;
Пожалуйста, убедитесь, что $ciphertext действительно содержит зашифрованное сообщение, и что $publicKey и $authToken переданы в правильном формате. Если все параметры верны, то данный код должен раскодировать сообщение с использованием указанных ключей.