X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=dsa%2Fdsa.h;h=b7dacc3faab1398847bd0dc82b4113b5d4fce22e;hb=1bbc0b5dde579de9ef7dbc24278811703b55bf8b;hp=6a894f6c8e0d487b164c6d7efb208efa1e971b5b;hpb=b8d6b2bd3ddea45506f584c7d44fe5fff0557ed1;p=avr-crypto-lib.git diff --git a/dsa/dsa.h b/dsa/dsa.h index 6a894f6..b7dacc3 100644 --- a/dsa/dsa.h +++ b/dsa/dsa.h @@ -32,6 +32,7 @@ typedef struct{ typedef bigint_t dsa_pubkey_t; typedef bigint_t dsa_privkey_t; + typedef struct{ bigint_t r; bigint_t s; @@ -43,6 +44,8 @@ typedef struct{ dsa_domainparameters_t domain; } dsa_ctx_t; +typedef uint8_t(*rand_func_ptr_t)(void); + #define DSA_SIGNATURE_OK 1 #define DSA_SIGNATURE_FAIL 0 @@ -50,7 +53,7 @@ uint8_t dsa_sign_bigint(dsa_signature_t* s, const bigint_t* m, const dsa_ctx_t* ctx, const bigint_t* k); uint8_t dsa_sign_message(dsa_signature_t* s, const void* m, uint16_t m_len_b, const hfdesc_t* hash_desc, const dsa_ctx_t* ctx, - const uint8_t(*rand_in)(void)); + const rand_func_ptr_t rand_in); uint8_t dsa_verify_bigint(const dsa_signature_t* s, const bigint_t* m, const dsa_ctx_t* ctx); uint8_t dsa_verify_message(const dsa_signature_t* s, const void* m, uint16_t m_len_b,