I’m doing my own implementation of RSA algorithm in java.
So far i have it working, i want to be able to encrypt a message string eg. “hello”
its a very basic version not using any large numbers at the moment.
So I read in each letter gets its Ascii Code and endcode it.
But im having a problem trying to figure out a way to read in the sequence of numbers that it outputs.
say the sequence of numbers for hello encrypted is;
H E L L 0
101 123 111,111,101 (these are just random picked numbers btw)
so say my message becomes 101123111111101
if im reading these numbers back how do i know which parts to decrypt? My first thought was to use some kind of delimter between the numbers eg.101,123,111,111,101
And parse them when read back in?
Or have i missed something?
Will this cause problems later if i change my public and private keys and the numbers become much larger and more random?
if each code is exactly the same amount of numbers long then you can just split the content every so many characters. for example, you’re using 0-9 for the last two digits and 1-9 for the first, that’s 9 times 10 to the 2’nd power and has 900 possibilities. So lets say you decide that everything is assigned a unique 3 numbers.
example A=171, B=182, C=193, D=204, E=215 etc.
Then you use sub-strings when reading the file. and then convert each back to their corresponding value. but what you should do to make it harder to decrypt, is use different values for two letters/numbers at a time
HELLO :
HE : 10291
LL : 19024
0 : 11958
etc. That will make it much harder to decrypt, exponentially harder, and you can keep doing that for 3, 4, 5, 6 and more at a time.