AES block cipher algorithm implementation.  
 More...
#include <aes.hpp>
 | 
|   | AES (const uint8_t key[4 *K]) | 
|   | 
|   | AES (const AES &other) | 
|   | 
| virtual  | ~AES () | 
|   | 
| void  | cipher (const std::array< uint8_t, 16 > &input, std::array< uint8_t, 16 > &output) | 
|   | 
| void  | decipher (const std::array< uint8_t, 16 > &input, std::array< uint8_t, 16 > &output) | 
|   | 
| virtual void  | cipher (const std::array< uint8_t, B > &input, std::array< uint8_t, B > &output)=0 | 
|   | 
| virtual void  | decipher (const std::array< uint8_t, B > &input, std::array< uint8_t, B > &output)=0 | 
|   | 
template<std::size_t K, std::size_t R>
class anch::crypto::AES< K, R >
AES block cipher algorithm implementation. 
This class only implements the key management and the cipher/decipher of one block.
See standard specification for more details (http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf).
- Since
 - 0.1
 
- Author
 - Vincent Lachenal 
 
 
template<std::size_t K, std::size_t R> 
 
AES constructor
- Parameters
 - 
  
  
 
 
 
template<std::size_t K, std::size_t R> 
 
AES copy constructor.
This constructor will copy the expanded key to avoid to compute it another time.
- Parameters
 - 
  
  
 
 
 
template<std::size_t K, std::size_t R> 
 
 
template<std::size_t K, std::size_t R> 
  
  
      
        
          | void anch::crypto::AES< K, R >::cipher  | 
          ( | 
          const std::array< uint8_t, 16 > &  | 
          input,  | 
         
        
           | 
           | 
          std::array< uint8_t, 16 > &  | 
          output  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Cipher a block
- Parameters
 - 
  
    | input | the block to cipher  | 
    | output | the ciphered block  | 
  
   
 
 
template<std::size_t K, std::size_t R> 
  
  
      
        
          | void anch::crypto::AES< K, R >::decipher  | 
          ( | 
          const std::array< uint8_t, 16 > &  | 
          input,  | 
         
        
           | 
           | 
          std::array< uint8_t, 16 > &  | 
          output  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Decipher a block
- Parameters
 - 
  
    | input | the block to decipher  | 
    | output | the deciphered block  | 
  
   
 
 
The documentation for this class was generated from the following file:
- anch-crypto/inc/crypto/cipher/aes.hpp