/** * \file * \author Egor Tensin * \date 2015 * \copyright This file is licensed under the terms of the MIT License. * See LICENSE.txt for details. */ #pragma once #include "data.h" void __fastcall raw_aes128_expand_key_schedule( AesBlock128 key, Aes128KeySchedule* key_schedule); void __fastcall raw_aes128_invert_key_schedule( Aes128KeySchedule* key_schedule, Aes128KeySchedule* inverted_schedule); AesBlock128 __fastcall raw_aes128ecb_encrypt( AesBlock128 plain, Aes128KeySchedule* key_schedule); AesBlock128 __fastcall raw_aes128ecb_decrypt( AesBlock128 cypher, Aes128KeySchedule* inverted_schedule); AesBlock128 __fastcall raw_aes128cbc_encrypt( AesBlock128 plain, Aes128KeySchedule* key_schedule, AesBlock128* iv); AesBlock128 __fastcall raw_aes128cbc_decrypt( AesBlock128 cypher, Aes128KeySchedule* inverted_schedule, AesBlock128* iv); void __fastcall raw_aes192_expand_key_schedule( AesBlock128 key_lo, AesBlock128 key_hi, Aes192KeySchedule* key_schedule); void __fastcall raw_aes192_invert_key_schedule( Aes192KeySchedule* key_schedule, Aes192KeySchedule* inverted_schedule); AesBlock128 __fastcall raw_aes192ecb_encrypt( AesBlock128 plain, Aes192KeySchedule* key_schedule); AesBlock128 __fastcall raw_aes192ecb_decrypt( AesBlock128 cypher, Aes192KeySchedule* inverted_schedule); AesBlock128 __fastcall raw_aes192cbc_encrypt( AesBlock128 plain, Aes192KeySchedule* key_schedule, AesBlock128 *iv); AesBlock128 __fastcall raw_aes192cbc_decrypt( AesBlock128 cypher, Aes192KeySchedule* inverted_schedule, AesBlock128 *iv); void __fastcall raw_aes256_expand_key_schedule( AesBlock128 key_lo, AesBlock128 key_hi, Aes256KeySchedule* key_schedule); void __fastcall raw_aes256_invert_key_schedule( Aes256KeySchedule* key_schedule, Aes256KeySchedule* inverted_schedule); AesBlock128 __fastcall raw_aes256ecb_encrypt( AesBlock128 plain, Aes256KeySchedule* key_schedule); AesBlock128 __fastcall raw_aes256ecb_decrypt( AesBlock128 cypher, Aes256KeySchedule* inverted_schedule); AesBlock128 __fastcall raw_aes256cbc_encrypt( AesBlock128 plain, Aes256KeySchedule* key_schedule, AesBlock128 *iv); AesBlock128 __fastcall raw_aes256cbc_decrypt( AesBlock128 cypher, Aes256KeySchedule* inverted_schedule, AesBlock128 *iv);