From 82d1ac30943cbe9223f024466404e7be720379b6 Mon Sep 17 00:00:00 2001 From: boggard Date: Wed, 12 Jul 2017 21:01:56 +0300 Subject: [PATCH] Variable has renamed and documentation has changed --- README.gost | 6 ++++-- gost_ameth.c | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/README.gost b/README.gost index d6d5464..74c5eb2 100644 --- a/README.gost +++ b/README.gost @@ -81,8 +81,10 @@ And section which describes configuration of the engine should contain default_algorithms = ALL CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet -If you want use unmask private key format, you must add: - PK_PARAMS = UNMASK +BouncyCastle cryptoprovider has some problems with private key parsing from PrivateKeyInfo, +so if you want to use old private key representation format, which supported by BC, +you must add: + PK_PARAMS = LEGACY_PK_WRAP to [gost_section] Where engine_id parameter specifies name of engine (should be "gost"). diff --git a/gost_ameth.c b/gost_ameth.c index b2d6aba..437362c 100644 --- a/gost_ameth.c +++ b/gost_ameth.c @@ -19,7 +19,7 @@ #include "gost_lcl.h" #include "e_gost_err.h" -#define PK_UNMASK_PARAM "UNMASK" +#define PK_WRAP_PARAM "LEGACY_PK_WRAP" /* * Pack bignum into byte buffer of given size, filling all leading bytes by @@ -443,7 +443,7 @@ static int priv_encode_gost(PKCS8_PRIV_KEY_INFO *p8, const EVP_PKEY *pk) /* unmasked private key */ const char *pk_param = get_gost_engine_param(GOST_PARAM_PK_PARAMS); - if(pk_param != NULL && strcmp(pk_param, PK_UNMASK_PARAM) == 0) { + if(pk_param != NULL && strcmp(pk_param, PK_WRAP_PARAM) == 0) { ASN1_STRING *octet = NULL; int priv_len = 0; unsigned char *priv_buf = NULL; -- 2.39.5