ECSDA'yı p-256 ve SHA256 ile openSSL'de nasıl alabilirim?


4

Apple'ın APNS istekleri, bir p-256 eğrisi ve bir SHA256 karma kullanarak bir Eliptik Eğri Dijital İmza Algoritması aka ECSDA kullanılarak imzalanmış JWT (JSON Web Token) kullanmalıdır. Openssl'da böyle params ile nasıl imzalayabilirsiniz?

openssl ecparam -list_curves

gösterir:

secp256k1 : SECG curve over a 256 bit prime field

prime256v1: X9.62/SECG curve over a 256 bit prime field

Yanıtlar:


4

Kullanmak istediğiniz p-256 eğrisi asal256v1'dir.

Bunu dene:

Create private key:
openssl ecparam -genkey -name prime256v1 -noout -out private.pem

Create public key:
openssl ec -in private.pem -pubout -out public.pem

Sign something
openssl dgst -sha256 -sign private.pem yourinputdocument -out yourinput.sha256 yourinput 

To verify:
openssl dgst -sha256 -verify public.pem -signature yourinput.sha256 yourinputdocument
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.