openssh_key.cipher.confidentiality.AES256_CTRCipher

class openssh_key.cipher.confidentiality.AES256_CTRCipher

Bases: openssh_key.cipher.confidentiality.AESCipher, openssh_key.cipher.confidentiality.CTRCipher

The Advanced Encryption Standard (the Rijndael block cipher) with a key length of 256 bits, under the counter mode of operation initialized with a given initialization vector.

__init__()

Methods

ALGORITHM()

MODE()

__init__()

decrypt(kdf, passphrase, cipher_bytes)

Decrypts the given ciphertext bytes using the given options of a key derivation function and the given passphrase to derive the encryption key.

decrypt_with_key_iv(cipher_bytes, ...)

Decrypts the given ciphertext bytes using the given cipher key and initialization vector.

encrypt(kdf, passphrase, plain_bytes)

Encrypts the given plaintext bytes using the given options of a key derivation function and the given passphrase to derive the encryption key.

encrypt_with_key_iv(plain_bytes, cipher_key, ...)

Encrypts the given plaintext bytes using the given cipher key and initialization vector.

get_algorithm()

The AES encryption algorithm.

get_block_size()

The value 16, the cipher block size of AES.

get_iv_length()

The initialization vector length for this cipher in bytes.

get_key_length()

The value 32, the length in bytes of the cipher key.

get_mode()

The counter mode of operation.

Attributes

BLOCK_SIZE

The block size for this cipher.

IV_LENGTH

The initialization vector length for this cipher in bytes.

KEY_LENGTH

The key length for this cipher in bytes.

classmethod decrypt(kdf, passphrase, cipher_bytes)

Decrypts the given ciphertext bytes using the given options of a key derivation function and the given passphrase to derive the encryption key.

Parameters
  • kdf (KDFOptions) – The options of a key derivation function.

  • passphrase (str) – The passphrase from which the cipher key is derived.

  • cipher_bytes (bytes) – Ciphertext bytes to be decrypted.

Return type

bytes

Returns

Plaintext bytes.

classmethod decrypt_with_key_iv(cipher_bytes, cipher_key, initialization_vector)

Decrypts the given ciphertext bytes using the given cipher key and initialization vector.

Parameters
  • cipher_bytes (bytes) – Ciphertext bytes to be encrypted.

  • cipher_key (bytes) – The cipher key.

  • initialization_vector (bytes) – The initialization vector. For some ciphers, this need only be a nonce.

Return type

bytes

Returns

Plaintext bytes.

classmethod encrypt(kdf, passphrase, plain_bytes)

Encrypts the given plaintext bytes using the given options of a key derivation function and the given passphrase to derive the encryption key.

Parameters
  • kdf (KDFOptions) – The options of a key derivation function.

  • passphrase (str) – The passphrase from which the cipher key is derived.

  • plain_bytes (bytes) – Plaintext bytes to be encrypted.

Return type

bytes

Returns

Ciphertext bytes.

classmethod encrypt_with_key_iv(plain_bytes, cipher_key, initialization_vector)

Encrypts the given plaintext bytes using the given cipher key and initialization vector.

Parameters
  • plain_bytes (bytes) – Plaintext bytes to be encrypted.

  • cipher_key (bytes) – The cipher key.

  • initialization_vector (bytes) – The initialization vector. For some ciphers, this need only be a nonce.

Return type

bytes

Returns

Ciphertext bytes.

classmethod get_algorithm()

The AES encryption algorithm.

Return type

Callable[[bytes], CipherAlgorithm]

classmethod get_block_size()

The value 16, the cipher block size of AES.

Return type

int

abstract classmethod get_iv_length()

The initialization vector length for this cipher in bytes. Defaults to the block size.

Return type

int

static get_key_length()

The value 32, the length in bytes of the cipher key.

Return type

int

classmethod get_mode()

The counter mode of operation.

Return type

Callable[[bytes], Mode]