Overview | Package | Class | Tree | Deprecated | Index | Help
| For the latest news and information visit The GNU Crypto project
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## gnu.crypto.cipher
Class NullCipher

    java.lang.Object
      |
      +--gnu.crypto.cipher.BaseCipher
            |
            +--gnu.crypto.cipher.NullCipher

All Implemented Interfaces:
  java.lang.Cloneable, IBlockCipher, IBlockCipherSpi

public final class NullCipher
extends BaseCipher

The implementation of a Null block cipher.

This cipher does not alter its input at all, claims to process block sizes 128-, 192- and 256-bit long, and key sizes from 64- to 512-bit in 8-bit increments.

Version:
  $Revision: 1.7 $

Fields inherited from class gnu.crypto.cipher.BaseCipher
`currentBlockSize, currentKey, defaultBlockSize, defaultKeySize, lock, name`

Fields inherited from interface gnu.crypto.cipher.IBlockCipher
`CIPHER_BLOCK_SIZE, KEY_MATERIAL`

Constructor Summary
`NullCipher()` Trivial 0-arguments constructor.

Method Summary
`java.util.Iterator` | `blockSizes()` Returns an `Iterator` over the supported block sizes.
`java.lang.Object` | `clone()` Returns a clone of this instance.
`void` | `decrypt(byte[] in, int i, byte[] out, int j, java.lang.Object k, int bs)` Decrypts exactly one block of ciphertext.
`void` | `encrypt(byte[] in, int i, byte[] out, int j, java.lang.Object k, int bs)` Encrypts exactly one block of plaintext.
`java.util.Iterator` | `keySizes()` Returns an `Iterator` over the supported key sizes.
`java.lang.Object` | `makeKey(byte[] uk, int bs)` Expands a user-supplied key material into a session key for a designated block size.
`boolean` | `selfTest()` A correctness test that consists of basic symmetric encryption / decryption test(s) for all supported block and key sizes, as well as one (1) variable key Known Answer Test (KAT).

Methods inherited from class gnu.crypto.cipher.BaseCipher
`currentBlockSize, decryptBlock, defaultBlockSize, defaultKeySize, encryptBlock, init, name, reset, testKat`

Methods inherited from class java.lang.Object
`, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### NullCipher

    public NullCipher()

  Trivial 0-arguments constructor.

Method Detail

### clone

    public java.lang.Object clone()

  Description copied from interface: `IBlockCipher`

  Returns a clone of this instance.

  Overrides:
    `clone` in class `BaseCipher`
  Following copied from interface: `gnu.crypto.cipher.IBlockCipher`
  Returns:
    a clone copy of this instance.

### blockSizes

    public java.util.Iterator blockSizes()

  Description copied from interface: `IBlockCipher`

  Returns an `Iterator` over the supported block sizes. Each element returned by this object is an `Integer`.

  Following copied from interface: `gnu.crypto.cipher.IBlockCipher`
  Returns:
    an `Iterator` over the supported block sizes.

### keySizes

    public java.util.Iterator keySizes()

  Description copied from interface: `IBlockCipher`

  Returns an `Iterator` over the supported key sizes. Each element returned by this object is an `Integer`.

  Following copied from interface: `gnu.crypto.cipher.IBlockCipher`
  Returns:
    an `Iterator` over the supported key sizes.

### makeKey

    public java.lang.Object makeKey(byte[] uk,
                                    int bs)
                             throws java.security.InvalidKeyException

  Description copied from interface: `IBlockCipherSpi`

  Expands a user-supplied key material into a session key for a designated block size.

  Following copied from interface: `gnu.crypto.cipher.IBlockCipherSpi`
  Parameters:
    `k` - the user-supplied key material.
    `bs` - the desired block size in bytes.
  Returns:
    an Object encapsulating the session key.
  Throws:
    `java.lang.IllegalArgumentException` - if the block size is invalid.
    `java.security.InvalidKeyException` - if the key data is invalid.

### encrypt

    public void encrypt(byte[] in,
                        int i,
                        byte[] out,
                        int j,
                        java.lang.Object k,
                        int bs)

  Description copied from interface: `IBlockCipherSpi`

  Encrypts exactly one block of plaintext.

  Following copied from interface: `gnu.crypto.cipher.IBlockCipherSpi`
  Parameters:
    `in` - the plaintext.
    `inOffset` - index of `in` from which to start considering data.
    `out` - the ciphertext.
    `outOffset` - index of `out` from which to store the result.
    `k` - the session key to use.
    `bs` - the block size to use.
  Throws:
    `java.lang.IllegalArgumentException` - if the block size is invalid.
    `ArrayIndexOutOfBoundsException` - if there is not enough room in either the plaintext or ciphertext buffers.

### decrypt

    public void decrypt(byte[] in,
                        int i,
                        byte[] out,
                        int j,
                        java.lang.Object k,
                        int bs)

  Description copied from interface: `IBlockCipherSpi`

  Decrypts exactly one block of ciphertext.

  Following copied from interface: `gnu.crypto.cipher.IBlockCipherSpi`
  Parameters:
    `in` - the ciphertext.
    `inOffset` - index of `in` from which to start considering data.
    `out` - the plaintext.
    `outOffset` - index of `out` from which to store the result.
    `k` - the session key to use.
    `bs` - the block size to use.
  Throws:
    `java.lang.IllegalArgumentException` - if the block size is invalid.
    `ArrayIndexOutOfBoundsException` - if there is not enough room in either the plaintext or ciphertext buffers.

### selfTest

    public boolean selfTest()

  Description copied from interface: `IBlockCipher`

  A correctness test that consists of basic symmetric encryption / decryption test(s) for all supported block and key sizes, as well as one (1) variable key Known Answer Test (KAT).

  Overrides:
    `selfTest` in class `BaseCipher`
  Following copied from interface: `gnu.crypto.cipher.IBlockCipher`
  Returns:
    `true` if the implementation passes simple correctness tests. Returns `false` otherwise.

Overview | Package | Class | Tree | Deprecated | Index | Help
| For the latest news and information visit The GNU Crypto project
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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