|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--sam.cipher.Cipher | +--sam.cipher.Serpent
Implementation of the Serpent cipher. Retrofitted for personal use by Guillaume Lacôte. Copyright (c) 1997, 1998 Systemics Ltd on behalf of the Cryptix Development Team. All rights reserved. A bit-slice implementation in Java of the Serpent cipher.
Serpent is a 128-bit 32-round block cipher with variable key lengths, including 128-, 192- and 256-bit keys conjectured to be at least as secure as three-key triple-DES.
Serpent was designed by Ross Anderson, Eli Biham and Lars Knudsen as a candidate algorithm for the NIST AES Quest.
References:
Copyright © 1997, 1998
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
$Revision: $
Nested Class Summary | |
static class |
Serpent.Key
Key implementation that is adapted to the Serpent cipher. |
Nested classes inherited from class sam.cipher.Cipher |
Cipher.ByteArrayFilter, Cipher.Error |
Field Summary |
Fields inherited from class sam.cipher.Cipher |
DECRYPT, EMPTY, ENCRYPT, INVERSE, key, REGISTRY |
Constructor Summary | |
Serpent(sam.cipher.Key key)
|
Method Summary | |
protected void |
decrypt(byte[] data,
int offset,
sam.cipher.Key key)
Decrypt exactly one block of ciphertext. |
protected void |
encrypt(byte[] data,
int offset,
sam.cipher.Key key)
Encrypt exactly one block of plaintext. |
protected int |
getPreferredSize(int size)
Specifiy preferred buffer size. |
Methods inherited from class sam.cipher.Cipher |
cipher, cipher, fill, main, store, store, storeReversed, streamTest, test, unstoreInt, unstoreLong, unstoreReversedLong |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public Serpent(sam.cipher.Key key)
Method Detail |
protected int getPreferredSize(int size)
Cipher
May return a fixed value, ignoring suggested size (e.g. return 16;
).
By default, this implementation simply returns its argument unchanged.
getPreferredSize
in class Cipher
size
- proposed buffer size (in bytes)
protected void encrypt(byte[] data, int offset, sam.cipher.Key key)
encrypt
in class Cipher
data
- The plaintext.protected void decrypt(byte[] data, int offset, sam.cipher.Key key)
decrypt
in class Cipher
data
- The ciphertext.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |