| OLD | NEW |
| (Empty) |
| 1 """OpenSSL/M2Crypto RC4 implementation.""" | |
| 2 | |
| 3 from cryptomath import * | |
| 4 from RC4 import RC4 | |
| 5 | |
| 6 if m2cryptoLoaded: | |
| 7 | |
| 8 def new(key): | |
| 9 return OpenSSL_RC4(key) | |
| 10 | |
| 11 class OpenSSL_RC4(RC4): | |
| 12 | |
| 13 def __init__(self, key): | |
| 14 RC4.__init__(self, key, "openssl") | |
| 15 self.rc4 = m2.rc4_new() | |
| 16 m2.rc4_set_key(self.rc4, key) | |
| 17 | |
| 18 def __del__(self): | |
| 19 m2.rc4_free(self.rc4) | |
| 20 | |
| 21 def encrypt(self, plaintext): | |
| 22 return m2.rc4_update(self.rc4, plaintext) | |
| 23 | |
| 24 def decrypt(self, ciphertext): | |
| 25 return self.encrypt(ciphertext) | |
| OLD | NEW |