2013-07-22 2 views
1

Мне нужно разработать приложение, которое использует другое приложение для генерации CSR. После создания CSR я должен предоставить эту CSR вместе с хэшем SHA256 открытого ключа в CA. Проблема заключается в том, что приложение, которое генерирует CSR, не генерирует хэш.Создать объект Keytool из CSR

Как сгенерировать хэш-код?

Могу ли я создать объект хранилища ключей, используя этот конкретный CSR, а затем извлечь из него хэш?

Или может кто-нибудь предложить любую другую технику?

ответ

1

В вашем вопросе отсутствует какая-либо информация, например, какой язык вы разрабатываете, если вам нужно сделать это программно или если в командной строке OpenSSL есть опция.

Вы можете сделать это со следующими командами командной строки OpenSSL (я уверен, что есть эквивалентный способ сделать это с библиотеками OpenSSL C).

# Extract public key from CSR 
openssl req -noout -in my.csr -pubkey > pubkey.pem 

# Convert public key to DER format 
openssl rsa -in pubkey.pem -outform der -out pubkey.der 

# Take the SHA256 hash of the public key 
openssl dgst -sha256 pubkey.der