2011-01-04 2 views
0

Я планирую использовать php для генерации серийного номера для моего программного обеспечения, которое написано с использованием MSVC++. Метод, которым я являюсь optiong, хэширует информацию и подписывает ее с помощью закрытого ключа. В MSVC++ я могу проверить хэш, подписанный алгоритмом открытого ключа RSA, используя собственные API. Возможно ли подписать хэш с использованием алгоритма открытого ключа RSA в php.подписание с использованием алгоритма открытых ключей RSA

Прошу совета.

С уважением, John.

ответ

2

Попробуйте phpseclib, a pure PHP RSA implementation:

<?php 
include('Crypt/RSA.php'); 

$rsa = new Crypt_RSA(); 
extract($rsa->createKey()); 

$plaintext = 'terrafrost'; 

$rsa->loadKey($privatekey); 
$signature = $rsa->sign($plaintext); 

$rsa->loadKey($publickey); 
echo $rsa->verify($plaintext, $signature) ? 'verified' : 'unverified'; 
?> 

Проблема с poelinca решением, предложенным в том, что это не PKCS # 1 соответствует (что означает, помимо всего прочего, что это, вероятно, не будет взаимодействовать с MSVC++), он не работает со стандартизованными ключевыми форматами и не использует слепое RSA (это означает, что можно использовать таймерные атаки для определения секретного ключа).

Смежные вопросы