ABY Framework  1.0
Arithmetic Bool Yao Framework
 All Classes Files Functions Variables Enumerations Enumerator Macros
Classes | Typedefs | Enumerations | Functions | Variables
crypto.h File Reference

Crypto primitive class. More...

#include <openssl/evp.h>
#include <openssl/sha.h>
#include <fstream>
#include <sys/stat.h>
#include <fcntl.h>
#include "../typedefs.h"
#include "../constants.h"
#include "gmp-pk-crypto.h"
#include "ecc-pk-crypto.h"
#include "../socket.h"
Include dependency graph for crypto.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  prf_state_ctx
 
class  crypto
 

Typedefs

typedef EVP_CIPHER_CTX AES_KEY_CTX
 

Enumerations

enum  bc_mode { ECB, CBC }
 

Functions

void sha1_hash (uint8_t *resbuf, uint32_t noutbytes, uint8_t *inbuf, uint32_t ninbytes, uint8_t *hash_buf)
 
void sha256_hash (uint8_t *resbuf, uint32_t noutbytes, uint8_t *inbuf, uint32_t ninbytes, uint8_t *hash_buf)
 
void sha512_hash (uint8_t *resbuf, uint32_t noutbytes, uint8_t *inbuf, uint32_t ninbytes, uint8_t *hash_buf)
 
void gen_secure_random (uint8_t *dest, uint32_t nbytes)
 
void gen_rnd_bytes (prf_state_ctx *prf_state, uint8_t *resbuf, uint32_t nbytes)
 
seclvl get_sec_lvl (uint32_t symsecbits)
 

Variables

const uint8_t ZERO_IV [AES_BYTES] = { 0 }
 
const uint8_t const_seed [] = { 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF }
 

Detailed Description

Crypto primitive class.

Author
micha.nosp@m.el.z.nosp@m.ohner.nosp@m.@ec-.nosp@m.sprid.nosp@m.e.de