X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=gost89.h;h=2bf75c117e50334b43716c6789442f561c1b7dcc;hb=bdd018198b30328b39a82108efc0d13065888dda;hp=9f36905e43903243f42b7a867118fa9470c4e568;hpb=7ce996d12c96ffb936ec22f0a8b826c64516699f;p=openssl-gost%2Fengine.git diff --git a/gost89.h b/gost89.h index 9f36905..2bf75c1 100644 --- a/gost89.h +++ b/gost89.h @@ -33,6 +33,7 @@ typedef struct { /* Cipher context includes key and preprocessed substitution block */ typedef struct { + u4 master_key[8]; u4 key[8]; u4 mask[8]; /* Constant s-boxes -- set up in gost_init(). */ @@ -62,6 +63,8 @@ void gostdecrypt(gost_ctx * c, const byte * in, byte * out); void gost_key(gost_ctx * c, const byte * k); /* Set key into context */ void magma_key(gost_ctx * c, const byte * k); +/* Set master 256-bit key to be used in TLSTREE calculation into context */ +void magma_master_key(gost_ctx *c, const byte *k); /* Get key from context */ void gost_get_key(gost_ctx * c, byte * k); /* Set S-blocks into context */ @@ -78,7 +81,7 @@ int gost_mac(gost_ctx * ctx, int mac_len, const unsigned char *data, * Compute MAC of given length in bits from data, using non-zero 8-byte IV * (non-standard, for use in CryptoPro key transport only */ -int gost_mac_iv(gost_ctx * c, int mac_len, const unsigned char *iv, +int gost_mac_iv(gost_ctx * ctx, int mac_len, const unsigned char *iv, const unsigned char *data, unsigned int data_len, unsigned char *mac); /* Perform one step of MAC calculation like gostcrypt */