org.logi.crypto.modes
Class DecryptOFB

java.lang.Object
  extended byorg.logi.crypto.Crypto
      extended byorg.logi.crypto.modes.DecryptMode
          extended byorg.logi.crypto.modes.DecryptOFB

public class DecryptOFB
extends DecryptMode

Use this class to decrypt ciphertext generated by EncryptOFB.

Note that unlike ECB or CBC mode, OFB mode uses teh same key to encrypt and decrypt, even with asymmetric ciphers.

See Also:
EncryptOFB

Field Summary
 
Fields inherited from class org.logi.crypto.Crypto
BIT, cdsPath, EMPTY_ARRAY, FOUR, keySource, NIBBLE, ONE, primeCertainty, random, TWO, ZERO
 
Constructor Summary
DecryptOFB(CipherKey key, int bufSize)
          Create a new OFB-mode decrypt session with the specified key.
DecryptOFB(int bufSize)
          Create a new OFB-mode decrypt session with no key.
 
Method Summary
 void close()
          Close files and kill threads owned by the object.
 byte[] decrypt(byte[] source, int i, int length)
          Send bytes to the DecryptOFB object for encryption.
 CipherKey getKey()
          Return the key used for encryption.
 int plainBlockSize()
          Return the size of the blocks of plaintext output by this object.
 void setKey(CipherKey key)
          Set the key to use for encryption.
 
Methods inherited from class org.logi.crypto.modes.DecryptMode
finalize
 
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
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DecryptOFB

public DecryptOFB(CipherKey key,
                  int bufSize)
Create a new OFB-mode decrypt session with the specified key. A buffer of bufSize bytes is created to hold a pre-calculated xor-stream.


DecryptOFB

public DecryptOFB(int bufSize)
Create a new OFB-mode decrypt session with no key. No encryption can be performed until the setKey() method has been called.

A buffer of bufSize bytes is created to hold a pre-calculated xor-stream.

Method Detail

getKey

public CipherKey getKey()
Return the key used for encryption.

Specified by:
getKey in class DecryptMode

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.

Specified by:
setKey in class DecryptMode

plainBlockSize

public int plainBlockSize()
Return the size of the blocks of plaintext output by this object.

Specified by:
plainBlockSize in class DecryptMode

decrypt

public byte[] decrypt(byte[] source,
                      int i,
                      int length)
Send bytes to the DecryptOFB object for encryption.

Decrypt length bytes from source, starting at i and return the plaintext.

Specified by:
decrypt in class DecryptMode

close

public void close()
Close files and kill threads owned by the object. This should be called to make sure all resources are freed.

Overrides:
close in class DecryptMode