Shaka Packager SDK
|
Class which implements AES-CBC (Cipher block chaining) decryption. More...
#include <aes_decryptor.h>
Public Member Functions | |
AesCbcDecryptor (CbcPaddingScheme padding_scheme) | |
AesCbcDecryptor (CbcPaddingScheme padding_scheme, ConstantIvFlag constant_iv_flag) | |
AesCryptor implementation overrides. | |
bool | InitializeWithIv (const std::vector< uint8_t > &key, const std::vector< uint8_t > &iv) override |
size_t | RequiredOutputSize (size_t plaintext_size) override |
Public Member Functions inherited from shaka::media::AesCryptor | |
AesCryptor (ConstantIvFlag constant_iv_flag) | |
bool | SetIv (const std::vector< uint8_t > &iv) |
void | UpdateIv () |
const std::vector< uint8_t > & | iv () const |
bool | use_constant_iv () const |
bool | Crypt (const std::vector< uint8_t > &text, std::vector< uint8_t > *crypt_text) |
bool | Crypt (const std::string &text, std::string *crypt_text) |
bool | Crypt (const uint8_t *text, size_t text_size, uint8_t *crypt_text) |
bool | Crypt (const uint8_t *text, size_t text_size, uint8_t *crypt_text, size_t *crypt_text_size) |
Additional Inherited Members | |
Public Types inherited from shaka::media::AesCryptor | |
enum | ConstantIvFlag { kUseConstantIv , kDontUseConstantIv } |
Static Public Member Functions inherited from shaka::media::AesCryptor | |
static bool | GenerateRandomIv (FourCC protection_scheme, std::vector< uint8_t > *iv) |
Protected Types inherited from shaka::media::AesCryptor | |
enum | CipherMode { kCtrMode , kCbcMode } |
Protected Member Functions inherited from shaka::media::AesCryptor | |
bool | SetupCipher (size_t key_size, CipherMode mode) |
Protected Attributes inherited from shaka::media::AesCryptor | |
mbedtls_cipher_context_t | cipher_ctx_ |
Class which implements AES-CBC (Cipher block chaining) decryption.
Definition at line 25 of file aes_decryptor.h.
|
explicit |
Creates a AesCbcDecryptor with continous cipher block chain across Crypt calls.
padding_scheme | indicates the padding scheme used. Currently supported schemes: kNoPadding, kPkcs5Padding, kCtsPadding. |
Definition at line 19 of file aes_decryptor.cc.
shaka::media::AesCbcDecryptor::AesCbcDecryptor | ( | CbcPaddingScheme | padding_scheme, |
ConstantIvFlag | constant_iv_flag | ||
) |
padding_scheme | indicates the padding scheme used. Currently supported schemes: kNoPadding, kPkcs5Padding, kCtsPadding. |
constant_iv_flag | indicates whether a constant iv is used, kUseConstantIv means that the same iv is used for all Crypt calls until iv is changed via SetIv; otherwise, iv is updated internally and there is a continuous cipher block chain across Crypt calls util iv is changed explicitly via SetIv or UpdateIv functions. |
Definition at line 22 of file aes_decryptor.cc.
|
overridevirtual |
Initialize the cryptor with specified key and IV.
Implements shaka::media::AesCryptor.
Definition at line 34 of file aes_decryptor.cc.