## org.h2.security
Interface BlockCipher

All Known Implementing Classes:
  AES, XTEA

    public interface BlockCipher

A block cipher is a data encryption algorithm that operates on blocks.

Field Summary
`static int` `ALIGN` Blocks sizes are always multiples of this number.

Method Summary
`void` `decrypt(byte[] bytes, int off, int len)` Decrypt a number of bytes.
`void` `encrypt(byte[] bytes, int off, int len)` Encrypt a number of bytes.
`int` `getKeyLength()` Get the length of the key in bytes.
`void` `setKey(byte[] key)` Set the encryption key used for encrypting and decrypting.

Field Detail

### ALIGN

    static final int ALIGN

  Blocks sizes are always multiples of this number.

  See Also:
    Constant Field Values

Method Detail

### setKey

    void setKey(byte[] key)

  Set the encryption key used for encrypting and decrypting.

  Parameters:
    `key` - the key

### encrypt

    void encrypt(byte[] bytes,
                 int off,
                 int len)

  Encrypt a number of bytes. This is done in-place, that means the bytes are overwritten.

  Parameters:
    `bytes` - the byte array
    `off` - the start index
    `len` - the number of bytes to encrypt

### decrypt

    void decrypt(byte[] bytes,
                 int off,
                 int len)

  Decrypt a number of bytes. This is done in-place, that means the bytes are overwritten.

  Parameters:
    `bytes` - the byte array
    `off` - the start index
    `len` - the number of bytes to decrypt

### getKeyLength

    int getKeyLength()

  Get the length of the key in bytes.

  Returns:
    the length of the key