Mercurial > projects > dcrypt
diff dcrypt/crypto/ciphers/RC4.d @ 14:5ce3012f1def
Removed some redundancy in code. Added NotSupportedError, a base PRNG class and a class which creates a PRNG from a hash function. Changed the MAC class' finalization methods to digest and hexDigest instead of finish and hexFinish respectively. Also added a base Checksum class, crc32 and adler32 in dcrypt.misc as per request.
author | Thomas Dixon <reikon@reikon.us> |
---|---|
date | Tue, 18 Nov 2008 18:03:40 -0500 |
parents | 8c7f8fecdd75 |
children | 4589f8c5eb3c |
line wrap: on
line diff
--- a/dcrypt/crypto/ciphers/RC4.d Fri Sep 12 05:20:43 2008 -0400 +++ b/dcrypt/crypto/ciphers/RC4.d Tue Nov 18 18:03:40 2008 -0500 @@ -20,7 +20,6 @@ ubyte[] state, workingKey; ubyte x, y; - bool initialized; } void init(bool encrypt, CipherParameters params) { @@ -34,7 +33,8 @@ workingKey = keyParams.key; state = new ubyte[256]; setup(workingKey); - initialized = true; + _encrypt = true; + _initialized = true; } char[] name() { @@ -50,7 +50,7 @@ } uint update(void[] input_, void[] output_) { - if (!initialized) + if (!_initialized) throw new NotInitializedError(name()~": Cipher not initialized"); ubyte[] input = cast(ubyte[]) input_,