38 lines
		
	
	
		
			646 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			646 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef iotelic_kdf_H
 | |
| #define iotelic_kdf_H
 | |
| 
 | |
| #include <stdint.h>
 | |
| #include "hash.h"
 | |
| 
 | |
| typedef enum {
 | |
|     KDF_INVALID = -1,
 | |
|     KDF_2 = 0,
 | |
| } KDF_TYPE;
 | |
| 
 | |
| typedef enum {
 | |
|     KDF_ERROR_GENERAL = -1,
 | |
| } KDF_RESULT;
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| int
 | |
| kdf(KDF_TYPE kdf_type,
 | |
|     HASH_TYPE hash_type,
 | |
|     const uint8_t *  input, size_t input_sz,
 | |
|     uint8_t * output, size_t output_sz);
 | |
| 
 | |
| int
 | |
| hkdf(HASH_TYPE hash_type,
 | |
|      const uint8_t *  input, size_t input_sz,
 | |
|      const uint8_t *  salt, size_t salt_sz,
 | |
|      const uint8_t *  info, size_t info_sz,
 | |
|      uint8_t * output, size_t output_sz);
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif // iotelic_kdf_H
 |