шифрование — php не может расшифровать шифр из запроса $ _get на RNCryptor

Я пытаюсь расшифровать шифр, который я беру с моего взломанного iphone, но я не знаю, почему функция расшифровки RNCryptor всегда возвращает нулевое значение, когда я помещаю значение $ _get в функцию, но оно работает нормально, когда я помещаю необработанные данные расшифровать функцию. Кто-нибудь имеет представление об этой проблеме?
Это код, который возвращает нулевое значение:

if(isset($_GET['info'])){

$password = "mykey"$base64Encrypted = $_GET['info'];
$cryptor = new \RNCryptor\Decryptor();
$plaintext = $cryptor->decrypt($base64Encrypted, $password);
echo $plaintext;//=> this code block return null value

}else{
echo 'not have info params';
}

Но когда я помещаю необработанные данные шифра, этот кодовый блок работает хорошо:

if(isset($_GET['info'])){

$password = "mykey"$base64Encrypted = 'AwEEeG/CU0VHXVGvuRcm805DvvVQi32NPjmlQxoaniIL9ngCjNY1Su4jEb2IfCILBvhKIdjl1znysm6SMiFmRZi2St8wCcWCmnImdwAPLysB/g==';
$cryptor = new \RNCryptor\Decryptor();
$plaintext = $cryptor->decrypt($base64Encrypted, $password);
echo $plaintext;//=> this code block return the original value of cipher

}else{
echo 'not have info params';
}

-1

Решение

Извините, я просто подтвердил, что параметр $ _get просто кодируется при отправке через URL, поэтому все символы «+» были заменены на пробел. Это мое решение:

 $password = "mykey";
$stringCipher = explode('?info=', $_SERVER['REQUEST_URI'], 2);
$base64Encrypted = $stringCipher[1];
$cryptor = new \RNCryptor\Decryptor();
$decryptSerial = $cryptor->decrypt($base64Encrypted, $password);
0

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

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

По вопросам рекламы [email protected]