Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to use a java implementation of ed25519.

In the code, I can't find any functions that generate keys.

My experience with cryptography is limited to about three weeks of asking questions on stack.

Does the code generate keys? If so, which function?

share|improve this question
up vote 1 down vote accepted

Ed25519 is a specific implementation of EdDSA using the Twisted Edwards curve:

x^2 + y^2 = 1 + (121665/121666) * (x^2)(y^2)

It's known as high speed high security signature algorithm. For using the code you pointed out, you need to feed sk, pk, m, sm.

So first you need to call publickey function with sk, then call signature function with m, sk and pk. PK is byte array returned from publickey function.

An example entry:


It's sk:pk:m:sm

You can find more info at:

share|improve this answer
Thank you so very much M. C.! I think I understand, but how is sk generated? Thank you so very much in advance! – user7024 Jan 11 '14 at 21:42
SK is signing key, there is a Python code here… which does have a function called create_keypair, that's how you create key pairs – 72DFBF5B A0DF5BE9 Jan 11 '14 at 21:47
@Gracchus: Private signing keys can be generated from just the 32-byte seed, but require additional work before you can make signatures – 72DFBF5B A0DF5BE9 Jan 11 '14 at 21:52

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.