Для интеллектуального режима OpenID в спецификации используется обмен ключами Диффи-Хеллмана.Мне интересно, можно ли повторно использовать открытый и закрытый ключи (при условии, что они не скомпрометированы) или их следует генерировать для каждого запроса.Я использую PHP-библиотеку OpenSSL (мой код: $key = openssl_pkey_new(array('private_key_type' => OPENSSL_KEYTYPE_DH));
) для генерации ключей, и она очень медленная (в среднем 22 секунды для генерации ключа - очень неприемлемо для веб-сайта).Если ключи не могут быть повторно использованы, есть ли более быстрый способ генерации ключей с использованием OpenSSL?Я бы предпочел не делать это вручную из-за зависимостей от математических библиотек и т. Д.
РЕДАКТИРОВАТЬ: Для ясности, я ищу две вещи в ответе: Могу ли я повторно использовать ключи Диффи-Хеллмана в ассоциации OpenIDрежим, и если нет, есть ли более быстрый способ генерации ключей с использованием OpenSSL, чем openssl_pkey_new()
, так как это занимает исключительно много времени.