Language: TypeScript
Label: safe
CWE: CWE-331 \u2014 Insufficient Entropy
The product uses an algorithm or scheme that produces insufficient entropy, leaving patterns or clusters of values that are more likely to occur than others.

Code:
  async decryptArrayBuffer(key, ciphertext) {
    const abIv = ciphertext.slice(0, 16);
    if (ciphertext.slice(WebCryptography.IV_LENGTH).byteLength <= 0) throw new Error('decryption error: empty content');
    const data = await crypto.subtle.decrypt(
      { name: 'AES-CBC', iv: abIv },
      key,
      ciphertext.slice(WebCryptography.IV_LENGTH),
    );
    return data;
  }