如何解密使用 Taifun AES-Extension 加密的 [=10th=] 中的文本?
How to decrypt text in PHP encypted with Taifun AES-Extention?
我正在尝试使用 appinventor
扩展程序,该扩展程序使用“AES 128, CBC, and PKCS5 padding
”对文本进行加密。我已经尝试了很多,但我无法解密我的 PHP(7.2.9) 服务器上的文本。
在this site he describes what library他用了,我在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";
?>
我创建的用于测试它的应用程序:
Screen
blockeditor
您可以下载 apk.
对于第一个文本框中的服务器地址类型(没有space):
(例子填写自己的服务器地址)
http://你的.domain/your/directory/index.php
我制作了一个 PHP 库来解密 Taifuns 和 Tiziano1960(两者都可以工作,因为它们基于相同的 JAVA 库)。您找到所有信息 here.
我正在尝试使用 appinventor
扩展程序,该扩展程序使用“AES 128, CBC, and PKCS5 padding
”对文本进行加密。我已经尝试了很多,但我无法解密我的 PHP(7.2.9) 服务器上的文本。
在this site he describes what library他用了,我在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";
?>
我创建的用于测试它的应用程序:
Screen
blockeditor
您可以下载 apk.
对于第一个文本框中的服务器地址类型(没有space):
(例子填写自己的服务器地址)
http://你的.domain/your/directory/index.php
我制作了一个 PHP 库来解密 Taifuns 和 Tiziano1960(两者都可以工作,因为它们基于相同的 JAVA 库)。您找到所有信息 here.