I would like to sign and verify a pdf with elliptic curve. I got some code but it doesn't work.
Create private key:
openssl ecparam -genkey -name secp384r1 -noout -out private.pem
Create public key:
openssl ec -in private.pem -pubout -out public.pem
Sign file:
openssl dgst -ecdsa-with-SHA1 test.pdf > hash openssl dgst
openssl dgst -ecdsa-with-SHA1 -inkey private.pem -keyform PEM -in hash > signature
Verify file:
openssl dgst -ecdsa-with-SHA1 -verify public.pem -signature signature.bin data
The part to sign and verify doesn't work.
I'm not sure where you're getting these command line options from - the help for dgst
doesn't indicate that -ecdsa-with-SHA1
, -inkey
or -in
are valid options. Try:
Sign:
openssl dgst -sha1 -sign private.pem < test.pdf > signature.bin
Verify:
openssl dgst -sha1 -verify public.pem -signature signature.bin < test.pdf