public function decrypt($str, $key){\n //AES, 256 ECB\n $data = rtrim(\n mcrypt_decrypt(\n MCRYPT_RIJNDAEL_256, \n $key, \n base64_decode($str), \n MCRYPT_MODE_ECB,\n mcrypt_create_iv(\n mcrypt_get_iv_size(\n MCRYPT_RIJNDAEL_256,\n MCRYPT_MODE_ECB\n ), \n MCRYPT_RAND\n )\n ), "\\0"\n );\n return $data;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n$str是来自ios应用程序加密的字符串,他使用的字符集是NSUTF8StringEncoding 并使用该方法AES-256-ECB-PKCS7Padding和base64输出。
加密前
\n\n$str->42z7t5nzwvbk14gbemc9
$键->gxssh2016
ios APP加密后
\n\n$str->D2k5t33l+HD3snFTU+gNYlCH/DQ37WO6I6nUYbGTDKc
注意:我使用AES在线工具解密该字符串可以得到正确的结果:42z7t5nzwvbk14gbemc9
但是,使用我的函数解密此 $str 输出:\n x\xef\xbf\xbdZ\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xc2\xae(t\xef\xbf\xbds\xda\x9e\xef\xbf\xbd<\xef\xbf\xbd^\xef\xbf\xbdq\xef\xbf\xbdP\xef\xbf\xbd\xef\xbf\xbd`
我怎样才能42z7t5nzwvbk14gbemc9在php中解密它?