I need to sign a basic string of information (e.g. seq number:host:port:id:TTL), which is about 50 characters.

I want to use public key encryption for the signing of this, so that any other party can verify this information is actually legit. But an important requirement is that the signature is as small as possible, since it would create additional performance problems if the string is 2000+ bits large. I looked at signing with RSA, but a safe bit size is considered to be 2048 or more, which also means that my signatures will become bigger than 2000 bits.

What other options do I have for signing with OpenSSL? And what key size would be acceptable for that encryption scheme? I've looked into DSA, but there seem to be some controversy about DSA (e.g. 1024 DSA keys can be cracked).

1 Answer 1


I've used secp521r1 (elliptic curve) public key crypto, and using a key of 521 bits yields good results for the signature size.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .