Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
OpenSSL: DSA подпись для X509 18.08.03 10:37 [amirul, cybervlad]
Автор: lunc <Alexander Krizhanovsky> Статус: Member
|
Для подписи сертификата использую
X509_sign(x, priv_key, EVP_sha1());
priv_key описывается так:
EVP_PKEY *priv_key = EVP_PKEY_new();
Если в priv_key засунуть RSA ключ - все нормально, если DSA, то все валится.
Ключ генерится так:
DSA *dsa = DSA_new();
EVP_PKEY *priv_key = EVP_PKEY_new();
dsa = DSA_generate_parameters(128, NULL, 0, NULL, NULL, 0, NULL);
while (RAND_status() != 1) {
RAND_seed(dsa, 128);
}
DSA_generate_key(dsa);
EVP_PKEY_assign_DSA(priv_key, dsa);
Такой ключ нормально вставляется в поле открытогно ключа сертификата, но подписать им не получается.
Вчем дело?
Может я неправильно выставляю, prng? Вроде разница между подписью RSA и DSA только в этом....
|
|
2 cybervlad: Я модерил не за офтопик, а за кросспостинг 18.08.03 17:21
Автор: amirul <Serge> Статус: The Elderman
|
Если не согласен, объясни, на фига два совершенно одинаковых поста на разных бордах? :-)
|
| |
я второго не видел... 18.08.03 17:41
Автор: cybervlad <cybervlad> Статус: Elderman
|
> Если не согласен, объясни, на фига два совершенно > одинаковых поста на разных бордах? :-) ну, я бы на его месте запостил в крипту и програминг, ибо вопрос на стыке.
|
| |
прошу прощения 18.08.03 17:24
Автор: lunc <Alexander Krizhanovsky> Статус: Member Отредактировано 18.08.03 17:25 Количество правок: 1
|
> Если не согласен, объясни, на фига два совершенно > одинаковых поста на разных бордах? :-)
Прошу прощения....
На программинге я запостил эту тему давольно давно и небыло ответов. До этого у меня пару раз были проблеммы с OpenSSL и я их постил на Crypto - более успешно.
Еще раз прошу прощения, но мне очень срочно надо решить эту траблу, сроки поджимают...
|
|
OpenSSL: DSA подпись для X509 18.08.03 16:05
Автор: lunc <Alexander Krizhanovsky> Статус: Member
|
Пробовал через EVP:
EVP_MD_CTX *ctx_sig = EVP_MD_CTX_create();
EVP_SignInit(ctx_sig, EVP_sha1());
EVP_SignUpdate(ctx_sig, data_in, 8);
EVP_SignFinal(ctx_sig, data_sign, &sign_len, priv_key)
здесь unsigned char data_in[8] = "0123456";
EVP_SignFinal(...) возвращает 0 (все плохо).
|
| |
OpenSSL: DSA подпись для X509 18.08.03 19:40
Автор: lunc <Alexander Krizhanovsky> Статус: Member
|
Проблемма решена.
Вместо EVP_sha() или EVP_sha1() надо юзать EVP_dss() или EVP_dss1() - для SHA хэша. RFC2792 говорит, о том, что в настоящее время можно исаользовать с DSA только SHA хэш.
|
|
|