20 lines
561 B
Python
20 lines
561 B
Python
# Author: Trevor Perrin
|
|
# See the LICENSE file for legal information regarding use of this file.
|
|
|
|
"""Abstract class for RC4."""
|
|
|
|
|
|
class RC4(object):
|
|
def __init__(self, keyBytes, implementation):
|
|
if len(keyBytes) < 16 or len(keyBytes) > 256:
|
|
raise ValueError()
|
|
self.isBlockCipher = False
|
|
self.isAEAD = False
|
|
self.name = "rc4"
|
|
self.implementation = implementation
|
|
|
|
def encrypt(self, plaintext):
|
|
raise NotImplementedError()
|
|
|
|
def decrypt(self, ciphertext):
|
|
raise NotImplementedError()
|