|
For the latest news and information visit The GNU Crypto project |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--gnu.crypto.mode.BaseMode
|
+--gnu.crypto.mode.CFB
The cipher feedback mode. CFB mode is a stream mode that operates on s bit blocks, where 1 <= s <= b, if b is the underlying cipher's block size. Encryption is:
I[1] = IV I[j] = LSB(b-s, I[j-1]) | C[j-1] for j = 2...n O[j] = CIPH(K, I[j]) for j = 1,2...n C[j] = P[j] ^ MSB(s, O[j]) for j = 1,2...n
And decryption is:
I[1] = IV I[j] = LSB(b-s, I[j-1]) | C[j-1] for j = 2...n O[j] = CIPH(K, I[j]) for j = 1,2...n P[j] = C[j] ^ MSB(s, O[j]) for j = 1,2...n
CFB mode requires an initialization vector, which need not be kept secret.
References:
| Field Summary |
| Fields inherited from class gnu.crypto.mode.BaseMode |
cipher, cipherBlockSize, iv, lock, modeBlockSize, name, state |
| Fields inherited from interface gnu.crypto.mode.IMode |
DECRYPTION, ENCRYPTION, IV, MODE_BLOCK_SIZE, STATE |
| Fields inherited from interface gnu.crypto.cipher.IBlockCipher |
CIPHER_BLOCK_SIZE, KEY_MATERIAL |
| Constructor Summary | |
(package private) |
CFB(IBlockCipher underlyingCipher,
int cipherBlockSize)
Package-private constructor for the factory class. |
| Method Summary | |
java.lang.Object |
clone()
Returns a clone of this instance. |
void |
decryptBlock(byte[] in,
int inOffset,
byte[] out,
int outOffset)
Decrypts exactly one block of ciphertext. |
void |
encryptBlock(byte[] in,
int inOffset,
byte[] out,
int outOffset)
Encrypts exactly one block of plaintext. |
void |
setup()
The initialisation phase of the concrete mode implementation. |
void |
teardown()
The termination phase of the concrete mode implementation. |
| Methods inherited from class gnu.crypto.mode.BaseMode |
blockSizes, currentBlockSize, defaultBlockSize, defaultKeySize, init, keySizes, name, reset, selfTest, update |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
CFB(IBlockCipher underlyingCipher,
int cipherBlockSize)
underlyingCipher - The cipher implementation.cipherBlockSize - The cipher's block size.| Method Detail |
public java.lang.Object clone()
IBlockCipherReturns a clone of this instance.
clone in interface IBlockCipherclone in class BaseModepublic void setup()
BaseMode
setup in class BaseModepublic void teardown()
BaseMode
teardown in class BaseMode
public void encryptBlock(byte[] in,
int inOffset,
byte[] out,
int outOffset)
IBlockCipherEncrypts exactly one block of plaintext.
encryptBlock in interface IBlockCipherencryptBlock in class BaseModein - the plaintext.inOffset - index of in from which to start considering
data.out - the ciphertext.outOffset - index of out from which to store result.
public void decryptBlock(byte[] in,
int inOffset,
byte[] out,
int outOffset)
IBlockCipherDecrypts exactly one block of ciphertext.
decryptBlock in interface IBlockCipherdecryptBlock in class BaseModein - the plaintext.inOffset - index of in from which to start considering
data.out - the ciphertext.outOffset - index of out from which to store result.
|
For the latest news and information visit The GNU Crypto project |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||