]> wagner.pp.ru Git - openssl-gost/engine.git/blobdiff - gost_lcl.h
PSKeyTransport_gost includes UKM
[openssl-gost/engine.git] / gost_lcl.h
index 08120b574b20b4380d1e1d66a22b2487fdb3e1a1..9740994a41c45d2c30e9852a32661437df090e60 100644 (file)
@@ -55,6 +55,7 @@ int register_pmeth_gost(int id, EVP_PKEY_METHOD **pmeth, int flags);
 /* Gost-specific pmeth control-function parameters */
 /* For GOST R34.10 parameters */
 # define param_ctrl_string "paramset"
+# define ukm_ctrl_string "ukmhex"
 # define EVP_PKEY_CTRL_GOST_PARAMSET (EVP_PKEY_ALG_CTRL+1)
 /* For GOST 28147 MAC */
 # define key_ctrl_string "key"
@@ -129,6 +130,7 @@ typedef struct {                /* FIXME incomplete */
 typedef struct PSKeyTransport_st {
     ASN1_OCTET_STRING *psexp;
     X509_PUBKEY       *ephem_key;
+    ASN1_OCTET_STRING *ukm;
 } PSKeyTransport_gost;
 
 DECLARE_ASN1_FUNCTIONS(PSKeyTransport_gost)
@@ -239,7 +241,10 @@ const EVP_CIPHER *cipher_gost_cpacnt();
 const EVP_CIPHER *cipher_gost_cpcnt_12();
 const EVP_CIPHER *cipher_magma_cbc();
 const EVP_CIPHER *cipher_magma_ctr();
+const EVP_CIPHER *cipher_magma_wrap();
+const EVP_CIPHER *cipher_kuznyechik_wrap();
 void cipher_gost_destroy();
+void wrap_ciphers_destroy();
 
 void inc_counter(unsigned char *counter, size_t counter_bytes);