Expand description
TACT encryption key store and Salsa20/ARC4 decryption. TACT encryption support for BLTE mode-E blocks.
Blizzard uses TACT (Trusted Application Content Transfer) to encrypt
sensitive game data inside BLTE containers. Each encrypted block carries
an encryption header that names the key (a u64 key name), provides an
IV, and identifies the cipher:
- Salsa20 (
S) - the 16-byte TACT key is doubled to 32 bytes and used with an 8-byte nonce derived from the IV. - ARC4 (
A) - RC4 with the standard WoW 1024-byte keystream skip.
Keys are stored in a TactKeyStore which can be populated from the
bundled community-known key list or loaded from a text key file.
Structs§
- Encryption
Header - Parsed encryption header from a BLTE mode-E block.
- Tact
KeyStore - Stores TACT encryption keys (key_name u64 -> 16-byte key value).
Enums§
- Encryption
Algorithm - Encryption algorithm used by a BLTE encrypted block.
Functions§
- decrypt_
block - Decrypt a BLTE mode-E block.
- parse_
encryption_ header - Parse an encryption header from the data following the
Emode byte.