The Advanced Encryption Standard (AES), also known by its original name Rijndael, is a specification for the encryption of electronic data established by the U.S. National Institute of Standards and Technology (NIST) in 2001. The algorithm described by AES is a symmetric-key algorithm, meaning the same key is used for both encrypting and decrypting the data. AES is based on a design principle known as a substitution–permutation network, and is efficient for both software and hardware implementation. For AES, NIST selected three members of the Rijndael family, each with a block size of 128 bits, but three different key lengths: 128, 192 and 256 bits. AES 128 is a very common - and highly regarded - stream cypher key length. AES is included in the ISO/IEC 18033-3 standard. AES became effective as a U.S. federal government standard on May 26, 2002, after approval by the U.S. Secretary of Commerce. AES is available in many different encryption packages, and is the first (and only) publicly accessible cipher approved by the U.S. National Security Agency (NSA) for top secret information when used in an NSA approved cryptographic module. Adding a certain amount of drama - especially in the world of DRM - is the potential application of AES in two distinct forms - CTR and CBC - which basically define how keys for successive blocks of content relate to each other. Apple championed the use of AES-CBC within the HLS specification, whereas Microsoft championed AES-CTR in SmoothStreaming. The reconciliation of these original choices has now been decided in favor of AES-CBC within the CMAF and CENC standardization processes, leading to the beneficial prospect of a single CMAF protected video container format to support all device streams.