scapy.layers.tls.crypto.cipher_aead

Authenticated Encryption with Associated Data ciphers.

RFC 5288 introduces new ciphersuites for TLS 1.2 which are based on AES in Galois/Counter Mode (GCM). RFC 6655 in turn introduces AES_CCM ciphersuites. The related AEAD algorithms are defined in RFC 5116. Later on, RFC 7905 introduced cipher suites based on a ChaCha20-Poly1305 construction.

exception scapy.layers.tls.crypto.cipher_aead.AEADTagError[源代码]

基类:Exception

Raised when MAC verification fails.

class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_128_CCM(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:_AEADCipher

cipher_cls[源代码]

AESCCM 的别名

key_len = 16
name = 'AES_128_CCM'
tag_len = 16
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_128_CCM_8(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_AES_128_CCM

name = 'AES_128_CCM_8'
tag_len = 8
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_128_CCM_8_TLS13(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_AES_128_CCM_TLS13

name = 'AES_128_CCM_8_TLS13'
tag_len = 8
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_128_CCM_TLS13(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:_AEADCipher_TLS13

cipher_cls[源代码]

AESCCM 的别名

fixed_iv_len = 12
key_len = 16
name = 'AES_128_CCM_TLS13'
tag_len = 16
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_128_GCM(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:_AEADCipher

key_len = 16
name = 'AES_128_GCM'
pc_cls[源代码]

AES 的别名

pc_cls_mode[源代码]

GCM 的别名

tag_len = 16
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_128_GCM_TLS13(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:_AEADCipher_TLS13

fixed_iv_len = 12
key_len = 16
name = 'AES_128_GCM_TLS13'
pc_cls[源代码]

AES 的别名

pc_cls_mode[源代码]

GCM 的别名

tag_len = 16
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_256_CCM(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_AES_128_CCM

key_len = 32
name = 'AES_256_CCM'
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_256_CCM_8(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_AES_128_CCM_8

key_len = 32
name = 'AES_256_CCM_8'
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_256_GCM(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_AES_128_GCM

key_len = 32
name = 'AES_256_GCM'
class scapy.layers.tls.crypto.cipher_aead.Cipher_AES_256_GCM_TLS13(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_AES_128_GCM_TLS13

key_len = 32
name = 'AES_256_GCM_TLS13'
class scapy.layers.tls.crypto.cipher_aead.Cipher_CHACHA20_POLY1305(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:Cipher_CHACHA20_POLY1305_TLS13

This TLS 1.2 cipher actually uses TLS 1.3 logic, as per RFC 7905. Changes occur at the record layer (in record.py).

name = 'CHACHA20_POLY1305'
class scapy.layers.tls.crypto.cipher_aead.Cipher_CHACHA20_POLY1305_TLS13(key=None, fixed_iv=None, nonce_explicit=None)[源代码]

基类:_AEADCipher_TLS13

cipher_cls[源代码]

ChaCha20Poly1305 的别名

fixed_iv_len = 12
key_len = 32
name = 'CHACHA20_POLY1305_TLS13'
nonce_explicit_len = 0
tag_len = 16