Almost ! RSA Javascript/Ruby

Hi all,

back into the RSA Javascript/Ruby:


It looks that Javascript returns hex, while Ruby
PKey::RSA.private_decrypt(str) it takes bytes as argument. The little
documentation I found on PKey::RSA.private_decrypt, shows that it
takes string (str) as argument.

My questions:
- What kind of argument does PKey::RSA.private_decrypt(str) take ? string, byte?
- How to convert from Hex to bytes? what hex to string?
- Where can I find more documentation on PKey::RSA
- In case I decide to modify "src/ext/openssl/ossl_pkey_rsa.c" ...
should I compile that code? and store it where?

Some RSA crypt/verification hints with Ruby will be much appreciated.

thanks,

Jean

P.S.: Why almost?: I got to share the keys from the client to the
server, although I'm still not able to load the cryped pwd from the
client to the server ... but very close :slight_smile:

···

On 9/5/06, Jan Svitok <jan.svitok@gmail.com> wrote:

On 9/5/06, Jean Verger <jean.verger@gmail.com> wrote:
> 2. If I use this: PKey::RSA.generate(512) I believe that I still have
> a random key generated (instead of one with n, d and e desired). From
> not much difference than using this:
> #openssl genrsa -out key.pem 256
> PKey::RSA.new(File.open("/key.pem").read, nil)

Sorry, I misunderstood. This is how it *could* be done. I've just read
the sources, haven't tried.

key = PKey.RSA.new
key.n, key.e, key.d = n,e,d

If you know a bit of C, read the sources of ruby, everything is there :wink:
namely: src/ext/openssl/ossl_pkey_rsa.c