I recently got into learning Elliptical curve cryptography and are currently building a project in C#.
Everything is working well so far, I can encode and decode points, and thanks to this forum I can do point addition and doubling really fast. Now I want to take the next step and start using really big numbers, so far I've been working off different ECC samples and papers normally using really small primes and numbers for clarity. The end goal is to being able to encrypt and decrypt a text, this will later be used for digital signing of this text. So what I must figure out now is:
- What standard curves could I use? I know curves like p192 etc exists, am I allowed to use these?
- How can I find valid points to use for messages and generator on these huge curves? So far I've done it using brute force on smaller curves with a small prime. I can't find any using my previous brute force approach since the numbers are too large.
- Whats a good way for encoding/decoding text using ECC? Should I simply map each valid character to a point on the curve and perform encryption/decryption once for each character and translate between the character and point using a lookup table?