aboutsummaryrefslogtreecommitdiff
path: root/openssl/demos/engines/zencod/hw_zencod.h
diff options
context:
space:
mode:
Diffstat (limited to 'openssl/demos/engines/zencod/hw_zencod.h')
-rw-r--r--openssl/demos/engines/zencod/hw_zencod.h257
1 files changed, 128 insertions, 129 deletions
diff --git a/openssl/demos/engines/zencod/hw_zencod.h b/openssl/demos/engines/zencod/hw_zencod.h
index 415c9a6be..a2510453a 100644
--- a/openssl/demos/engines/zencod/hw_zencod.h
+++ b/openssl/demos/engines/zencod/hw_zencod.h
@@ -4,140 +4,139 @@
* for "zencod" ENGINE integration in OpenSSL project.
*/
+#ifndef _HW_ZENCOD_H_
+# define _HW_ZENCOD_H_
- #ifndef _HW_ZENCOD_H_
-#define _HW_ZENCOD_H_
+# include <stdio.h>
-#include <stdio.h>
-
-#ifdef __cplusplus
+# ifdef __cplusplus
extern "C" {
-#endif /* __cplusplus */
+# endif /* __cplusplus */
-#define ZENBRIDGE_MAX_KEYSIZE_RSA 2048
-#define ZENBRIDGE_MAX_KEYSIZE_RSA_CRT 1024
-#define ZENBRIDGE_MAX_KEYSIZE_DSA_SIGN 1024
-#define ZENBRIDGE_MAX_KEYSIZE_DSA_VRFY 1024
+# define ZENBRIDGE_MAX_KEYSIZE_RSA 2048
+# define ZENBRIDGE_MAX_KEYSIZE_RSA_CRT 1024
+# define ZENBRIDGE_MAX_KEYSIZE_DSA_SIGN 1024
+# define ZENBRIDGE_MAX_KEYSIZE_DSA_VRFY 1024
/* Library version computation */
-#define ZENBRIDGE_VERSION_MAJOR(x) (((x) >> 16) | 0xff)
-#define ZENBRIDGE_VERSION_MINOR(x) (((x) >> 8) | 0xff)
-#define ZENBRIDGE_VERSION_PATCH(x) (((x) >> 0) | 0xff)
-#define ZENBRIDGE_VERSION(x, y, z) ((x) << 16 | (y) << 8 | (z))
-
-/*
- * Memory type
- */
-typedef struct zencod_number_s {
- unsigned long len;
- unsigned char *data;
-} zen_nb_t;
-
-#define KEY zen_nb_t
-
-
-/*
- * Misc
- */
-typedef int t_zencod_lib_version (void);
-typedef int t_zencod_hw_version (void);
-typedef int t_zencod_test (void);
-typedef int t_zencod_dump_key (FILE *stream, char *msg, KEY *key);
-
-
-/*
- * Key management tools
- */
-typedef KEY *t_zencod_new_number (unsigned long len, unsigned char *data);
-typedef int t_zencod_init_number (KEY *n, unsigned long len, unsigned char *data);
-typedef unsigned long t_zencod_bytes2bits (unsigned char *n, unsigned long bytes);
-typedef unsigned long t_zencod_bits2bytes (unsigned long bits);
-
-
-/*
- * RSA API
- */
+# define ZENBRIDGE_VERSION_MAJOR(x) (((x) >> 16) | 0xff)
+# define ZENBRIDGE_VERSION_MINOR(x) (((x) >> 8) | 0xff)
+# define ZENBRIDGE_VERSION_PATCH(x) (((x) >> 0) | 0xff)
+# define ZENBRIDGE_VERSION(x, y, z) ((x) << 16 | (y) << 8 | (z))
+
+ /*
+ * Memory type
+ */
+ typedef struct zencod_number_s {
+ unsigned long len;
+ unsigned char *data;
+ } zen_nb_t;
+
+# define KEY zen_nb_t
+
+ /*
+ * Misc
+ */
+ typedef int t_zencod_lib_version(void);
+ typedef int t_zencod_hw_version(void);
+ typedef int t_zencod_test(void);
+ typedef int t_zencod_dump_key(FILE *stream, char *msg, KEY * key);
+
+ /*
+ * Key management tools
+ */
+ typedef KEY *t_zencod_new_number(unsigned long len, unsigned char *data);
+ typedef int t_zencod_init_number(KEY * n, unsigned long len,
+ unsigned char *data);
+ typedef unsigned long t_zencod_bytes2bits(unsigned char *n,
+ unsigned long bytes);
+ typedef unsigned long t_zencod_bits2bytes(unsigned long bits);
+
+ /*
+ * RSA API
+ */
/* Compute modular exponential : y = x**e | n */
-typedef int t_zencod_rsa_mod_exp (KEY *y, KEY *x, KEY *n, KEY *e);
-/* Compute modular exponential : y1 = (x | p)**edp | p, y2 = (x | p)**edp | p, y = y2 + (qinv * (y1 - y2) | p) * q */
-typedef int t_zencod_rsa_mod_exp_crt (KEY *y, KEY *x, KEY *p, KEY *q,
- KEY *edp, KEY *edq, KEY *qinv);
-
-
-/*
- * DSA API
- */
-typedef int t_zencod_dsa_do_sign (unsigned int hash, KEY *data, KEY *random,
- KEY *p, KEY *q, KEY *g, KEY *x, KEY *r, KEY *s);
-typedef int t_zencod_dsa_do_verify (unsigned int hash, KEY *data,
- KEY *p, KEY *q, KEY *g, KEY *y,
- KEY *r, KEY *s, KEY *v);
-
-
-/*
- * DH API
- */
- /* Key generation : compute public value y = g**x | n */
-typedef int t_zencod_dh_generate_key (KEY *y, KEY *x, KEY *g, KEY *n, int gen_x);
-typedef int t_zencod_dh_compute_key (KEY *k, KEY *y, KEY *x, KEY *n);
-
-
-/*
- * RNG API
- */
-#define ZENBRIDGE_RNG_DIRECT 0
-#define ZENBRIDGE_RNG_SHA1 1
-typedef int t_zencod_rand_bytes (KEY *rand, unsigned int flags);
-
-
-/*
- * Math API
- */
-typedef int t_zencod_math_mod_exp (KEY *r, KEY *a, KEY *e, KEY *n);
-
-
-
-
-/*
- * Symetric API
- */
+ typedef int t_zencod_rsa_mod_exp(KEY * y, KEY * x, KEY * n, KEY * e);
+ /*
+ * Compute modular exponential : y1 = (x | p)**edp | p, y2 = (x | p)**edp
+ * | p, y = y2 + (qinv * (y1 - y2) | p) * q
+ */
+ typedef int t_zencod_rsa_mod_exp_crt(KEY * y, KEY * x, KEY * p, KEY * q,
+ KEY * edp, KEY * edq, KEY * qinv);
+
+ /*
+ * DSA API
+ */
+ typedef int t_zencod_dsa_do_sign(unsigned int hash, KEY * data,
+ KEY * random, KEY * p, KEY * q, KEY * g,
+ KEY * x, KEY * r, KEY * s);
+ typedef int t_zencod_dsa_do_verify(unsigned int hash, KEY * data, KEY * p,
+ KEY * q, KEY * g, KEY * y, KEY * r,
+ KEY * s, KEY * v);
+
+ /*
+ * DH API
+ */
+ /* Key generation : compute public value y = g**x | n */
+ typedef int t_zencod_dh_generate_key(KEY * y, KEY * x, KEY * g, KEY * n,
+ int gen_x);
+ typedef int t_zencod_dh_compute_key(KEY * k, KEY * y, KEY * x, KEY * n);
+
+ /*
+ * RNG API
+ */
+# define ZENBRIDGE_RNG_DIRECT 0
+# define ZENBRIDGE_RNG_SHA1 1
+ typedef int t_zencod_rand_bytes(KEY * rand, unsigned int flags);
+
+ /*
+ * Math API
+ */
+ typedef int t_zencod_math_mod_exp(KEY * r, KEY * a, KEY * e, KEY * n);
+
+ /*
+ * Symetric API
+ */
/* Define a data structure for digests operations */
-typedef struct ZEN_data_st
-{
- unsigned int HashBufferSize ;
- unsigned char *HashBuffer ;
-} ZEN_MD_DATA ;
-
-/*
- * Functions for Digest (MD5, SHA1) stuff
- */
-/* output : output data buffer */
-/* input : input data buffer */
-/* algo : hash algorithm, MD5 or SHA1 */
-/* typedef int t_zencod_hash ( KEY *output, const KEY *input, int algo ) ;
- * typedef int t_zencod_sha_hash ( KEY *output, const KEY *input, int algo ) ;
- */
-/* For now separate this stuff that mad it easier to test */
-typedef int t_zencod_md5_init ( ZEN_MD_DATA *data ) ;
-typedef int t_zencod_md5_update ( ZEN_MD_DATA *data, const KEY *input ) ;
-typedef int t_zencod_md5_do_final ( ZEN_MD_DATA *data, KEY *output ) ;
-
-typedef int t_zencod_sha1_init ( ZEN_MD_DATA *data ) ;
-typedef int t_zencod_sha1_update ( ZEN_MD_DATA *data, const KEY *input ) ;
-typedef int t_zencod_sha1_do_final ( ZEN_MD_DATA *data, KEY *output ) ;
-
-
-/*
- * Functions for Cipher (RC4, DES, 3DES) stuff
- */
+ typedef struct ZEN_data_st {
+ unsigned int HashBufferSize;
+ unsigned char *HashBuffer;
+ } ZEN_MD_DATA;
+
+ /*
+ * Functions for Digest (MD5, SHA1) stuff
+ */
+ /* output : output data buffer */
+ /* input : input data buffer */
+ /* algo : hash algorithm, MD5 or SHA1 */
+ /*-
+ * typedef int t_zencod_hash ( KEY *output, const KEY *input, int algo ) ;
+ * typedef int t_zencod_sha_hash ( KEY *output, const KEY *input, int algo ) ;
+ */
+ /* For now separate this stuff that mad it easier to test */
+ typedef int t_zencod_md5_init(ZEN_MD_DATA *data);
+ typedef int t_zencod_md5_update(ZEN_MD_DATA *data, const KEY * input);
+ typedef int t_zencod_md5_do_final(ZEN_MD_DATA *data, KEY * output);
+
+ typedef int t_zencod_sha1_init(ZEN_MD_DATA *data);
+ typedef int t_zencod_sha1_update(ZEN_MD_DATA *data, const KEY * input);
+ typedef int t_zencod_sha1_do_final(ZEN_MD_DATA *data, KEY * output);
+
+ /*
+ * Functions for Cipher (RC4, DES, 3DES) stuff
+ */
/* output : output data buffer */
/* input : input data buffer */
/* key : rc4 key data */
/* index_1 : value of index x from RC4 key structure */
/* index_2 : value of index y from RC4 key structure */
-/* Be carefull : RC4 key should be expanded before calling this method (Should we provide an expand function ??) */
-typedef int t_zencod_rc4_cipher ( KEY *output, const KEY *input, const KEY *key,
- unsigned char *index_1, unsigned char *index_2, int mode ) ;
+ /*
+ * Be carefull : RC4 key should be expanded before calling this method
+ * (Should we provide an expand function ??)
+ */
+ typedef int t_zencod_rc4_cipher(KEY * output, const KEY * input,
+ const KEY * key, unsigned char *index_1,
+ unsigned char *index_2, int mode);
/* output : output data buffer */
/* input : input data buffer */
@@ -147,14 +146,14 @@ typedef int t_zencod_rc4_cipher ( KEY *output, const KEY *input, const KEY *key,
/* iv : initial vector */
/* mode : xdes mode (encrypt or decrypt) */
/* Be carefull : In DES mode key_1 = key_2 = key_3 (as far as i can see !!) */
-typedef int t_zencod_xdes_cipher ( KEY *output, const KEY *input, const KEY *key_1,
- const KEY *key_2, const KEY *key_3, const KEY *iv, int mode ) ;
+ typedef int t_zencod_xdes_cipher(KEY * output, const KEY * input,
+ const KEY * key_1, const KEY * key_2,
+ const KEY * key_3, const KEY * iv,
+ int mode);
+# undef KEY
-#undef KEY
-
-#ifdef __cplusplus
+# ifdef __cplusplus
}
-#endif /* __cplusplus */
-
-#endif /* !_HW_ZENCOD_H_ */
+# endif /* __cplusplus */
+#endif /* !_HW_ZENCOD_H_ */