View Single Post
  #12  
Old 12-05-2016, 07:35
chants chants is offline
VIP
 
Join Date: Jul 2016
Posts: 826
Rept. Given: 47
Rept. Rcvd 50 Times in 31 Posts
Thanks Given: 737
Thanks Rcvd at 1,140 Times in 529 Posts
chants Reputation: 51
It looks like it is not encryption/decryption but RSA signature verification/signing:

Code:
00000001 13a303bf 04010503 02070609
4207e5e1 00000001 02a00bd1 00000001
ffffff00 ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff 0001ffff
Notice the 0001 which generally indicates PKCS#1 v1.5 RSA signing/private key.

See the RFC for yourself
Quote:
https://tools.ietf.org/html/rfc2313
on page 9.

What you show is not "decryption" but "verification" using the public exponent of a signature. After all the 0xFF there is a 0x00, then an ASN.1 code and finally a hash of a message being signed.

So you are looking for a private key used to sign messages.

Using chosen plaintext attacks, you might find a way to break this so that you can sign messages without even knowing the private key as long as you can verify signed messages and if the padding is bad. I suggest looking up chosen ciphertext attacks against RSA and look up Bleichenbacher in particular.

If the public exponent is low enough (like e=3), then you can forge messages almost certainly. Using mere small numbers and cube/cube root properties if the padding is not checked properly.
Reply With Quote
The Following User Gave Reputation+1 to chants For This Useful Post:
mr.exodia (12-05-2016)