blob: 8baa63da958284ddb6b12d73a9fcb96f706d545e [file] [log] [blame]
Sybren A. Stüvelff3a1d02011-06-20 00:13:53 +02001'''Tests string operations.'''
2
3import unittest
4
5import rsa
6
7class StringTest(unittest.TestCase):
8
9 def setUp(self):
10 (self.pub, self.priv) = rsa.newkeys(64)
11
12 def test_enc_dec(self):
13
Sybren A. Stüvel62abca72011-06-20 01:06:39 +020014 message = u"Euro=\u20ac ABCDEFGHIJKLMNOPQRSTUVWXYZ".encode('utf-8')
Sybren A. Stüvelff3a1d02011-06-20 00:13:53 +020015 print "\tMessage: %s" % message
16
17 encrypted = rsa.encrypt(message, self.pub)
18 print "\tEncrypted: %s" % encrypted
19
20 decrypted = rsa.decrypt(encrypted, self.priv)
21 print "\tDecrypted: %s" % decrypted
22
23 self.assertEqual(message, decrypted)
24
25 def test_sign_verify(self):
26
Sybren A. Stüvel62abca72011-06-20 01:06:39 +020027 message = u"Euro=\u20ac ABCDEFGHIJKLMNOPQRSTUVWXYZ".encode('utf-8')
28 print "\tMessage: %s" % message
Sybren A. Stüvelff3a1d02011-06-20 00:13:53 +020029
30 signed = rsa.sign(message, self.priv)
31 print "\tSigned: %s" % signed
32
33 verified = rsa.verify(signed, self.pub)
34 print "\tVerified: %s" % verified
35
36 self.assertEqual(message, verified)
37