Options
All
  • Public
  • Public/Protected
  • All
Menu

ChaCha20-Poly1305 Authenticated Encryption with Associated Data.

Defined in RFC7539.

Hierarchy

  • ChaCha20Poly1305

Implements

  • AEAD

Index

Constructors

Properties

Methods

Constructors

constructor

Properties

nonceLength

nonceLength: 12 = NONCE_LENGTH

tagLength

tagLength: 16 = TAG_LENGTH

Methods

clean

  • clean(): this

open

  • open(nonce: Uint8Array, sealed: Uint8Array, associatedData?: Uint8Array, dst?: Uint8Array): Uint8Array | null
  • Authenticates sealed ciphertext (which includes authentication tag) and associated data, decrypts ciphertext and returns decrypted plaintext.

    RFC7539 specifies 12 bytes for nonce. It may be this 12-byte nonce ("IV"), or full 16-byte counter (called "32-bit fixed-common part") and nonce.

    If authentication fails, it returns null.

    If dst is given (it must be of ciphertext length minus tag length), the result will be put into it. Dst and plaintext must not overlap.

    Parameters

    • nonce: Uint8Array
    • sealed: Uint8Array
    • Optional associatedData: Uint8Array
    • Optional dst: Uint8Array

    Returns Uint8Array | null

seal

  • seal(nonce: Uint8Array, plaintext: Uint8Array, associatedData?: Uint8Array, dst?: Uint8Array): Uint8Array
  • Encrypts and authenticates plaintext, authenticates associated data, and returns sealed ciphertext, which includes authentication tag.

    RFC7539 specifies 12 bytes for nonce. It may be this 12-byte nonce ("IV"), or full 16-byte counter (called "32-bit fixed-common part") and nonce.

    If dst is given (it must be the size of plaintext + the size of tag length) the result will be put into it. Dst and plaintext must not overlap.

    Parameters

    • nonce: Uint8Array
    • plaintext: Uint8Array
    • Optional associatedData: Uint8Array
    • Optional dst: Uint8Array

    Returns Uint8Array

Generated using TypeDoc