This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

elliptic curve cryptography on 8051

Hey guys, I am working on making Elliptic Curve Cryptography El-Gamal in 8051 MCU using Keil uvision 4. I want to make it 128 bit, so I need to use GMP library. However, to use GMP I usually download it in mingw-get-setup first, so I think it won't run if I just copy the gmp.h to my project in Keil.

My questions are :

1. how can I use gmp in 8051 using Keil?

2. Or should I compile it first in gcc, then just download the hex file to 8051? How to program the register in gcc?

Thanks for your attention :D

Best regards

Parents
  • Why do you even care about binary? Most people write source code where they assign in decimal for the majority of all values and only use hexadecimal where there is some form of bit mapping that is important. Or maybe octal if playing with things unix access rights.

    The important thing here is that whatever number base you care about, you still can't write so large numbers as numbers because the goal with big-number libraries is to operate on numbers that are much, much, much larger than any number the compiler can handle.

    That is why it's common to assign input values using some other form, and write a small piece of code that converts the received data into the internal format for the big-number library.

    That was why I suggested the use of text strings and a parameter that specified which numeric base the text string was in. You just might also use an array where every byte of the array represents a single digit in the base you decided to use. This would allow you to use anything from base 2 - binary - up to base 256.

    In the end, it really is quite simple to perform numeric base conversions - at least for anyone who can write a big-number library.

Reply
  • Why do you even care about binary? Most people write source code where they assign in decimal for the majority of all values and only use hexadecimal where there is some form of bit mapping that is important. Or maybe octal if playing with things unix access rights.

    The important thing here is that whatever number base you care about, you still can't write so large numbers as numbers because the goal with big-number libraries is to operate on numbers that are much, much, much larger than any number the compiler can handle.

    That is why it's common to assign input values using some other form, and write a small piece of code that converts the received data into the internal format for the big-number library.

    That was why I suggested the use of text strings and a parameter that specified which numeric base the text string was in. You just might also use an array where every byte of the array represents a single digit in the base you decided to use. This would allow you to use anything from base 2 - binary - up to base 256.

    In the end, it really is quite simple to perform numeric base conversions - at least for anyone who can write a big-number library.

Children
No data