Ошибки в шифровании дешифровании AES C++
Пытаюсь зашифровать и расшифровать строку методом AES_ECB. Использую библиотеку TinyAes. Шифруется нормально, (дешифровал на сайте) а дешифруется через раз. Подскажите, что делаю не так?
void AES_buffer::EncryptAES_ECB(const AES_key &key)
{
if (buf.size() % 16 == 0)
{
(*this) << uint8_t(0);
}
AES_ctx ctx;
AES_init_ctx(&ctx, key);
for (int i = 0; i < length(); i += aes_size)
AES_ECB_encrypt(&ctx, (*this) + i);
}
void AES_buffer::DecryptAES_ECB(const AES_key &key)
{
AES_ctx ctx;
AES_init_ctx(&ctx, key);
for (int i = 0; i < length(); i += aes_size)
AES_ECB_decrypt(&ctx, (*this) + i);
}