org.logi.crypto.modes
Class EncryptCFB
java.lang.Object
|
+--org.logi.crypto.Crypto
|
+--org.logi.crypto.modes.EncryptMode
|
+--org.logi.crypto.modes.EncryptCFB
- public class EncryptCFB
- extends EncryptMode
This class implements 8-bit Cipherblock FeedBack mode which encrypts
a whole block for each plaintext character. This makes it much slower
than ECB or CBC mode, but it can be used for streaming and no garbage
is ever inserted.
- Author:
- Logi Ragnarsson
(logir@logi.org)
- See Also:
DecryptCFB
Fields inherited from class org.logi.crypto.Crypto |
BIT, cdsPath, EMPTY_ARRAY, FOUR, keySource, NIBBLE, ONE, primeCertainty, random, TWO, ZERO |
Constructor Summary |
EncryptCFB()
Create a new CBF-mode encrypt session with no key. |
EncryptCFB(CipherKey key)
Create a new CBF-mode encrypt session with the specified key. |
Method Summary |
byte[] |
encrypt(byte[] source,
int i,
int length)
Send bytes to the EncryptCFB object for encryption. |
byte[] |
flush()
Pads the internal buffer, encrypts it and returns the ciphertext. |
CipherKey |
getKey()
Return the key used for encryption. |
int |
plainBlockSize()
Return the size of the blocks of plaintext encrypted by this object. |
void |
setKey(CipherKey key)
Set the key to use for encryption. |
Methods inherited from class org.logi.crypto.Crypto |
binString, binString, equal, equalRelaxed, equalSub, fromHexNibble, fromHexString, fromString, fromString, hexString, hexString, hexString, hexString, hexString, initRandom, initRandom, makeClass, makeInt, makeLong, makeSessionKey, pastSpace, pickBits, pickBits, readBlock, readInt, writeBytes, writeBytes, writeInt |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
EncryptCFB
public EncryptCFB(CipherKey key)
- Create a new CBF-mode encrypt session with the specified key.
EncryptCFB
public EncryptCFB()
- Create a new CBF-mode encrypt session with no key. No
encryption can be performed until the
setKey()
method has been called.
getKey
public CipherKey getKey()
- Return the key used for encryption.
- Overrides:
getKey
in class EncryptMode
setKey
public void setKey(CipherKey key)
- Set the key to use for encryption. The key can only be set once in
this version of the library. The 1.1.x and eventually 1.2.x series
allows dynamic re-keying.
- Overrides:
setKey
in class EncryptMode
plainBlockSize
public int plainBlockSize()
- Return the size of the blocks of plaintext encrypted by this object.
- Overrides:
plainBlockSize
in class EncryptMode
flush
public byte[] flush()
- Pads the internal buffer, encrypts it and returns the ciphertext.
Since CBF mode doesn't use an internal buffer, an empty array is
returned.
- Overrides:
flush
in class EncryptMode
encrypt
public byte[] encrypt(byte[] source,
int i,
int length)
- Send bytes to the EncryptCFB object for encryption.
Encrypt length
bytes from source
,
starting at i
and return the ciphertext.
- Overrides:
encrypt
in class EncryptMode
Copyright 1997-2000 Logi Ragnarsson