У меня есть случай, когда «секрет» приходит ко мне из приложения Java и шифруется с использованием открытого ключа и шифра RSA/ECB/OAEPWITSHA-256ANDMGF1PADDING. Я пытаюсь его расшифровать, но не знаю, как получить эквивалент этого шифра. Я использовал phpseclib для других целей безопасности и пробовал там режим шифрования OAEP, но безрезультатно. Я просто получаю ошибку расшифровки без информации. Я просто хочу заявить, что ключи верны:
function oaes_decrypt($ciphertext, $privatekey) {
$rsa = new \Crypt_RSA();
$rsa->setEncryptionMode(CRYPT_RSA_ENCRYPTION_OAEP);
$rsa->setMGFHash('sha256');
$rsa->setHash('sha256');
$rsa->loadKey($privatekey);
return $rsa->decrypt($ciphertext);
}
Любая помощь будет оценена! Благодарю вас!
OPENSSL_PKCS1_OAEP_PADDING
не кажется таким конкретным. Я не знаю, сможете ли вы сделать это таким образом; вы рассматривали возможность использования libsodium вместо этого?crypto_box_seal()
иcrypto_box_seal_open()
подойдут для этого варианта использования. - person Scott Arciszewski   schedule 20.08.2015