Fantastic! Thank you very much, this sounds like exactly what I was looking for!<br><br><div class="gmail_quote">On Fri, Jul 27, 2012 at 3:15 AM, Sebastian Ramacher <span dir="ltr"><<a href="mailto:sebastian+lists@ramacher.at" target="_blank">sebastian+lists@ramacher.at</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Running the tests fails most of the time with:<br>
<br>
$ python -m ejtp.rsatest<br>
key1 >> key2<br>
Traceback (most recent call last):<br>
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main<br>
    "__main__", fname, loader, pkg_name)<br>
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code<br>
    exec code in run_globals<br>
  File "/tmp/EJTP-lib-python/ejtp/rsatest.py", line 33, in <module><br>
    test_run(key1, key2)<br>
  File "/tmp/EJTP-lib-python/ejtp/rsatest.py", line 27, in test_run<br>
    ciphertext = encode(plaintext, key1, key2)<br>
  File "/tmp/EJTP-lib-python/ejtp/rsatest.py", line 19, in encode<br>
    return reciever.encrypt(sender.decrypt(msg))<br>
  File "ejtp/util/crypto/rsa.py", line 44, in encrypt<br>
    value[marker:marker+self.blocksize], "")[0])<br>
  File "/usr/lib/python2.7/dist-packages/Crypto/PublicKey/RSA.py", line 150, in<br>
encrypt<br>
    return pubkey.pubkey.encrypt(self, plaintext, K)<br>
  File "/usr/lib/python2.7/dist-packages/Crypto/PublicKey/pubkey.py", line 75,<br>
in encrypt<br>
    ciphertext=self._encrypt(plaintext, K)<br>
  File "/usr/lib/python2.7/dist-packages/Crypto/PublicKey/RSA.py", line 224, in<br>
_encrypt<br>
    return (self.key._encrypt(c),)<br>
ValueError: Plaintext too large<br>
<br>
The code in ejtp/util/crypto/rsa.py looks like you're not doing proper padding<br>
and using fixed sized blocks that don't depend on the key parameters. That won't<br>
work.<br>
<br>
You might want to have a look at PKCS#1 OAEP and pycrypto's<br>
Crypto.Cipher.PKCS1_OAEP module [1].<br>
<br>
Kind regards<br>
<br>
[1]<br>
<a href="https://www.dlitz.net/software/pycrypto/api/current/Crypto.Cipher.PKCS1_OAEP-module.html" target="_blank">https://www.dlitz.net/software/pycrypto/api/current/Crypto.Cipher.PKCS1_OAEP-module.html</a><br>
_______________________________________________<br>
pycrypto mailing list<br>
<a href="mailto:pycrypto@lists.dlitz.net">pycrypto@lists.dlitz.net</a><br>
<a href="http://lists.dlitz.net/cgi-bin/mailman/listinfo/pycrypto" target="_blank">http://lists.dlitz.net/cgi-bin/mailman/listinfo/pycrypto</a><br>
</blockquote></div><br>