As in any public key cryptography implementation, everything starts with an entropy, or simply put a large number, but with the very unique characteristics of
- being randomly generated, and
- has never been generated before, or will ever be in the future, and
- being 128-256 bits in length
However, be warned that the RNG = random number generator in your programming language's standard library is NOT random enough to be used as an entropy generator.