gnu.crypto.mode

Class ECB

Implemented Interfaces:
Cloneable, IBlockCipher, IMode

public class ECB
extends BaseMode
implements Cloneable

The implementation of the Electronic Codebook mode.

The Electronic Codebook (ECB) mode is a confidentiality mode that is defined as follows:

In ECB encryption, the forward cipher function is applied directly, and independently, to each block of the plaintext. The resulting sequence of output blocks is the ciphertext.

In ECB decryption, the inverse cipher function is applied directly, and independently, to each block of the ciphertext. The resulting sequence of output blocks is the plaintext.

References:

  1. Recommendation for Block Cipher Modes of Operation Methods and Techniques, Morris Dworkin.
Version:
$Revision: 1.6 $

Field Summary

Fields inherited from class gnu.crypto.mode.BaseMode

cipher, cipherBlockSize, iv, lock, modeBlockSize, name, state

Fields inherited from interface gnu.crypto.cipher.IBlockCipher

CIPHER_BLOCK_SIZE, KEY_MATERIAL

Fields inherited from interface gnu.crypto.mode.IMode

DECRYPTION, ENCRYPTION, IV, MODE_BLOCK_SIZE, STATE

Constructor Summary

ECB(IBlockCipher underlyingCipher, int cipherBlockSize)
Trivial package-private constructor for use by the Factory class.

Method Summary

Object
clone()
void
decryptBlock(byte[] in, int i, byte[] out, int o)
void
encryptBlock(byte[] in, int i, byte[] out, int o)
void
setup()
void
teardown()

Methods inherited from class gnu.crypto.mode.BaseMode

blockSizes, clone, currentBlockSize, decryptBlock, defaultBlockSize, defaultKeySize, encryptBlock, init, keySizes, name, reset, selfTest, setup, teardown, update

Constructor Details

ECB

(package private)  ECB(IBlockCipher underlyingCipher,
                       int cipherBlockSize)
Trivial package-private constructor for use by the Factory class.
Parameters:
underlyingCipher - the underlying cipher implementation.
cipherBlockSize - the underlying cipher block size to use.

Method Details

clone

public Object clone()
Specified by:
clone in interface IBlockCipher
Overrides:
clone in interface BaseMode

decryptBlock

public void decryptBlock(byte[] in,
                         int i,
                         byte[] out,
                         int o)
Specified by:
decryptBlock in interface IBlockCipher
Overrides:
decryptBlock in interface BaseMode

encryptBlock

public void encryptBlock(byte[] in,
                         int i,
                         byte[] out,
                         int o)
Specified by:
encryptBlock in interface IBlockCipher
Overrides:
encryptBlock in interface BaseMode

setup

public void setup()
Overrides:
setup in interface BaseMode

teardown

public void teardown()
Overrides:
teardown in interface BaseMode

Copyright © 2001, 2002, 2003 Free Software Foundation, Inc. All Rights Reserved.