шифрование — Как расшифровать текст в PHP, зашифрованном с помощью Taifun AES-Extention?

Я пытаюсь использовать appinventor расширение, которое шифрует текст с помощьюAES 128, CBC, and PKCS5 paddingMsgstr «Я много пробовал, но не могу расшифровать текст на моем сервере PHP (7.2.9).

На этот сайт он описывает что библиотека он использовал, но я не могу использовать его в php.

openssl_decript будет расшифровывать AES-128-CBC но он не может расшифровать массаж, зашифрованный расширением. Расширение шифруется паролем и солью, которая генерируется из пароля в приложении.

Мой код PHP-сервера:

(index.php)
<?php
$password = $_POST["pw"];
$salt = $_POST["salt"];
$iv_mac_text = $_POST["text"];

$method = "AES-128-CBC";
$keyLength = 16;
$iterations = 10000;

echo "Iv, mac and text:$iv_mac_text \n --------------- \n";
echo "Salt:$salt \n --------------- \n";
echo "Password:$password \n --------------- \n";

$saltdecoded = base64_decode($salt);

$generated_key = openssl_pbkdf2($password, $saltdecoded, $keyLength, $iterations, 'sha1');

$keyencoded = base64_encode($generated_key);
echo "confidentialityKey:$keyencoded \n --------------- \n";

$exploded = explode(":", $iv_mac_text);
$iv = base64_decode($exploded[0]);
$mac = base64_decode($exploded[1]);
$encryptedtext = base64_decode($exploded[2]);

$decrypted = openssl_decrypt($exploded[2], $method, $keyencoded,  OPENSSL_ZERO_PADDING, $iv);

$textlength = strlen($decrypted);
echo "Decrypted text ($textlength chars): $decrypted \n --------------- \n";
?>

Приложение, которое я создал, чтобы проверить это:

экран
blockeditor

Вы можете скачать APK.
Для типа Адрес сервера, который указан в первом текстовом поле (без пробела):
(пример заполните свой адрес на сервере)
http: //your.domain/your/directory/index.php

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …