/Arduino/libraries/AES-128_V10/AES-128_V10.h

https://github.com/CongducPham/LowCostLoRaGw · C Header · 51 lines · 10 code · 4 blank · 37 comment · 0 complexity · 0b152c0fde5825cc591a409edf6ba850 MD5 · raw file

  1. /******************************************************************************************
  2. * Copyright 2015, 2016 Ideetron B.V.
  3. *
  4. * This program is free software: you can redistribute it and/or modify
  5. * it under the terms of the GNU Lesser General Public License as published by
  6. * the Free Software Foundation, either version 3 of the License, or
  7. * (at your option) any later version.
  8. *
  9. * This program is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. * GNU Lesser General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public License
  15. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  16. ******************************************************************************************/
  17. /******************************************************************************************
  18. *
  19. * File: AES-128_V10.h
  20. * Author: Gerben den Hartog
  21. * Compagny: Ideetron B.V.
  22. * Website: http://www.ideetron.nl/LoRa
  23. * E-mail: info@ideetron.nl
  24. ******************************************************************************************/
  25. /****************************************************************************************
  26. *
  27. * Created on: 20-10-2015
  28. * Supported Hardware: ID150119-02 Nexus board with RFM95
  29. *
  30. * Firmware Version 1.0
  31. * First version
  32. ****************************************************************************************/
  33. #ifndef AES128_V10_H
  34. #define AES128_V10_H
  35. /*
  36. ********************************************************************************************
  37. * FUNCTION PORTOTYPES
  38. ********************************************************************************************
  39. */
  40. void AES_Encrypt(unsigned char *Data, unsigned char *Key);
  41. void AES_Add_Round_Key(unsigned char *Round_Key);
  42. unsigned char AES_Sub_Byte(unsigned char Byte);
  43. void AES_Shift_Rows();
  44. void AES_Mix_Collums();
  45. void AES_Calculate_Round_Key(unsigned char Round, unsigned char *Round_Key);
  46. void Send_State();
  47. #endif