X-Git-Url: http://www.wagner.pp.ru/gitweb/?a=blobdiff_plain;f=gost_gost2015.h;fp=gost_gost2015.h;h=797fbca2e08ad4e598d5d0115b8fcd1feca67567;hb=41b4121253a9c0e8d82d3eebcfe728d5d43e1b51;hp=0000000000000000000000000000000000000000;hpb=ff31ce4db29fb59fa607e12d3f45b89191473819;p=openssl-gost%2Fengine.git diff --git a/gost_gost2015.h b/gost_gost2015.h new file mode 100644 index 0000000..797fbca --- /dev/null +++ b/gost_gost2015.h @@ -0,0 +1,22 @@ +#ifndef GOST_GOST2015_H +#define GOST_GOST2015_H + +#include + +#define MAGMA_MAC_MAX_SIZE 8 +#define KUZNYECHIK_MAC_MAX_SIZE 16 + +int gost2015_final_call(EVP_CIPHER_CTX *ctx, EVP_MD_CTX *omac_ctx, size_t mac_size, + unsigned char *encrypted_mac, + int (*do_cipher) (EVP_CIPHER_CTX *ctx, + unsigned char *out, + const unsigned char *in, + size_t inl)); + +/* IV is expected to be 16 bytes*/ +int gost2015_get_asn1_params(const ASN1_TYPE *params, size_t ukm_size, + unsigned char *iv, size_t ukm_offset, unsigned char *kdf_seed); + +int gost2015_set_asn1_params(ASN1_TYPE *params, + const unsigned char *iv, size_t iv_size, const unsigned char *kdf_seed); +#endif