RSACryptoServiceProvider SignHash эквивалент в php / openssl?
Насколько я понимаю, openssl_sign делает то же самое, что RSACryptoServiceProvider.SignData. Есть ли команда openssl (или php), которая делает то же самое, что RSACryptoServiceProvider.SignHash?
1 ответ
Решение
Догадаться.
вот как я подписал данные в php, который совместим с подписью DotNETs XML
$private_key = "-----BEGIN PRIVATE KEY----- [private data] -----END PRIVATE KEY-----"
$sig1 = "<SIGNATURE><VERSION>1.0</VERSION><DIGEST>";
$sig2 = "</DIGEST><RSAKeyValue><Modulus>[private data]</Modulus><Exponent>[private data]</Exponent></RSAKeyValue></SIGNATURE>";
$pkeyid = openssl_get_privatekey($private_key);
openssl_sign($data, $sig,$pkeyid,OPENSSL_ALGO_SHA1);
$rsasignature = $sig1.strtoupper(bin2hex($sig)).$sig2;