mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-30 21:21:10 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
| *   Byte-oriented AES-256 implementation.
 | |
| *   All lookup tables replaced with 'on the fly' calculations.
 | |
| *
 | |
| *   Copyright (c) 2007-2009 Ilya O. Levin, http://www.literatecode.com
 | |
| *   Other contributors: Hal Finney
 | |
| *
 | |
| *   Permission to use, copy, modify, and distribute this software for any
 | |
| *   purpose with or without fee is hereby granted, provided that the above
 | |
| *   copyright notice and this permission notice appear in all copies.
 | |
| *
 | |
| *   THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | |
| *   WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | |
| *   MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | |
| *   ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | |
| *   WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 | |
| *   ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 | |
| *   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | |
| */
 | |
| 
 | |
| #ifndef AES_256_H
 | |
| #define AES_256_H
 | |
| 
 | |
| #include "typedefs.h"
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
|     typedef struct {
 | |
|         uint8_t key[32];
 | |
|         uint8_t enckey[32];
 | |
|         uint8_t deckey[32];
 | |
|     } aes256_context;
 | |
| 
 | |
| 
 | |
|     void aes256_init(aes256_context *, uint8_t * /* key */);
 | |
|     void aes256_done(aes256_context *);
 | |
|     void aes256_encrypt_ecb(aes256_context *, uint8_t * /* plaintext */);
 | |
|     void aes256_decrypt_ecb(aes256_context *, uint8_t * /* cipertext */);
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif
 | 
