Sybren A. Stüvel | 4e16769 | 2011-01-09 12:56:08 +0100 | [diff] [blame] | 1 | #!/usr/bin/env python |
| 2 | |
Sybren Stüvel | 454261b | 2008-04-23 13:22:44 +0200 | [diff] [blame] | 3 | import rsa |
| 4 | |
Sybren A. Stüvel | fb0f534 | 2011-01-09 12:02:32 +0100 | [diff] [blame] | 5 | (pub, priv) = rsa.newkeys(64) |
Sybren Stüvel | 454261b | 2008-04-23 13:22:44 +0200 | [diff] [blame] | 6 | |
| 7 | print "Testing integer operations:" |
| 8 | |
| 9 | message = 42 |
| 10 | print "\tMessage: %d" % message |
| 11 | |
| 12 | encrypted = rsa.encrypt_int(message, pub['e'], pub['n']) |
| 13 | print "\tEncrypted: %d" % encrypted |
| 14 | |
| 15 | decrypted = rsa.decrypt_int(encrypted, priv['d'], pub['n']) |
| 16 | print "\tDecrypted: %d" % decrypted |
| 17 | |
Sybren A. Stüvel | fb0f534 | 2011-01-09 12:02:32 +0100 | [diff] [blame] | 18 | signed = rsa.encrypt_int(message,priv['d'], pub['n']) |
Sybren Stüvel | 454261b | 2008-04-23 13:22:44 +0200 | [diff] [blame] | 19 | print "\tSigned: %d" % signed |
| 20 | |
Sybren A. Stüvel | fb0f534 | 2011-01-09 12:02:32 +0100 | [diff] [blame] | 21 | verified = rsa.decrypt_int(signed, pub['e'],pub['n']) |
Sybren Stüvel | 454261b | 2008-04-23 13:22:44 +0200 | [diff] [blame] | 22 | print "\tVerified: %d" % verified |
| 23 | |
| 24 | |
| 25 | print "Testing string operations:" |
| 26 | |
| 27 | message = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" |
| 28 | print "\tMessage: %s" % message |
| 29 | |
| 30 | encrypted = rsa.encrypt(message, pub) |
| 31 | print "\tEncrypted: %s" % encrypted |
| 32 | |
| 33 | decrypted = rsa.decrypt(encrypted, priv) |
| 34 | print "\tDecrypted: %s" % decrypted |
| 35 | |
| 36 | signed = rsa.sign(message,priv) |
| 37 | print "\tSigned: %s" % signed |
| 38 | |
| 39 | verified = rsa.verify(signed, pub) |
| 40 | print "\tVerified: %s" % verified |