Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
OpenSSL: DH параметры в X509 03.09.03 12:53 Число просмотров: 2824
Автор: lunc <Alexander Krizhanovsky> Статус: Member
|
Может кто сталкивался с проблеммой паковки DH ключей в X509.
Делаю так:
EVP_PKEY *key = EVP_PKEY_new();
DH *dh = DH_new();
X509 *x = X509_new();
while (RAND_status() != 1) {
RAND_seed(dh, 512);
}
dh = DH_generate_parameters(128,DH_GENERATOR_2,NULL,NULL);
DH_generate_key(dh);
EVP_PKEY_assign_DH(key, dh);
// Возвращает код ошибки - 0
X509_set_pubkey(x,pub_key);
Любопытно то, что X509_set_pubkey вызывает (фактически возвращает) X509_PUBKEY_set в которой содкржится проверка ключа:
if ((i=i2d_PublicKey(pkey,NULL)) <= 0) goto err;
i2d_PublicKey выглядит следующим образом:
int i2d_PublicKey(EVP_PKEY *a, unsigned char **pp)
{
switch (a->type)
{
#ifndef OPENSSL_NO_RSA
case EVP_PKEY_RSA:
return(i2d_RSAPublicKey(a->pkey.rsa,pp));
#endif
#ifndef OPENSSL_NO_DSA
case EVP_PKEY_DSA:
return(i2d_DSAPublicKey(a->pkey.dsa,pp));
#endif
default:
ASN1err(ASN1_F_I2D_PUBLICKEY,ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE);
return(-1);
}
}
То есть DH здесь вообще не поддерживается...
Других функций для паковки ключа в сертификат я не нашел....
|
- OpenSSL: DH параметры в X509 - lunc 03.09.03 12:53 [2824]
|
|
|