Atom Лента - Форум КриптоПро - Тема:OpenSSL + ГОСТ (gostengy и gost_capi) - 10Форум КриптоПро - Atom Лентаurn:https:--www-cryptopro-ru:AtomLenta:ForumKriptoPro:Tema:OpenSSL+GOST(gostengyigost_capi)-10:1Copyright 2024 Форум КриптоПро2024-03-29T14:56:56Zhttps://www.cryptopro.ru/forum2/Images/YAFLogo.pngForum Adminhttps://www.cryptopro.ruforum@cryptopro.ruМаксим Коллегинhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=3&name=Максим КоллегинМаксим Коллегинhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=3&name=Максим КоллегинCPSharpUserhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=27035&name=CPSharpUserslava trifonovhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=66111&name=slava trifonovМаксим Коллегинhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=3&name=Максим Коллегинhalifikhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=64127&name=halifikМаксим Коллегинhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=3&name=Максим Коллегинhalifikhttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=64127&name=halifikDenisekathttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=63642&name=DenisekatDees7https://www.cryptopro.ru/forum2/default.aspx?g=profile&u=46664&name=Dees7two_oceanshttps://www.cryptopro.ru/forum2/default.aspx?g=profile&u=36490&name=two_oceansYetAnotherForum.NETurn:https:--www-cryptopro-ru:ftPosts:st1:meid145178:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer_Alt" width="100%"><tr><td>Добрый день. Развитие gostengy прекращено. Для подписи файлов рекомендуем использовать cryptcp.</td></tr></table>2024-01-18T14:04:12+03:002024-01-18T14:04:12+03:00Максим Коллегин<table class="content postContainer_Alt" width="100%"><tr><td>Добрый день. Развитие gostengy прекращено. Для подписи файлов рекомендуем использовать cryptcp.</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid145177:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer" width="100%"><tr><td>Здравствуйте,<br /><br />В заголовке темы написано: "Вместо openssl+gostengy/gost_capi надо использовать легализованный в КриптоПро CSP 5.0 R2 патч на nginx". Предположим, что нет задачи использования HTTP-сервера. Стоит задача подписи файлов внутри собственной программы, работающей в ОС семейства Linux. Допустимо ли в настоящее время использовать связку openssl + gostengy? Выходят ли новые версии gostengy или развитие продукта полностью прекращено?<br /><br />Заранее спасибо за ответ.</td></tr></table>2024-01-18T14:01:38+03:002024-01-18T14:01:38+03:00CPSharpUser<table class="content postContainer" width="100%"><tr><td>Здравствуйте,<br /><br />В заголовке темы написано: "Вместо openssl+gostengy/gost_capi надо использовать легализованный в КриптоПро CSP 5.0 R2 патч на nginx". Предположим, что нет задачи использования HTTP-сервера. Стоит задача подписи файлов внутри собственной программы, работающей в ОС семейства Linux. Допустимо ли в настоящее время использовать связку openssl + gostengy? Выходят ли новые версии gostengy или развитие продукта полностью прекращено?<br /><br />Заранее спасибо за ответ.</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid140673:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer_Alt" width="100%"><tr><td>Подскажите пожалуйста, как использовать OpenSSL + ГОСТ для проверки открепленной подписи в собственном приложении (msvc, windows)?<br />Из командной строки в винде и дебиане подпись проверяется успешно. <br />Как встроить проверку в приложение не используя openssl.exe, а только lib и dll?</td></tr></table>2023-04-28T10:34:23+03:002023-04-28T10:34:23+03:00slava trifonov<table class="content postContainer_Alt" width="100%"><tr><td>Подскажите пожалуйста, как использовать OpenSSL + ГОСТ для проверки открепленной подписи в собственном приложении (msvc, windows)?<br />Из командной строки в винде и дебиане подпись проверяется успешно. <br />Как встроить проверку в приложение не используя openssl.exe, а только lib и dll?</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid140033:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer" width="100%"><tr><td>Запросите в техподдержке патч для актуального nginx. </td></tr></table>2023-03-29T14:04:20+03:002023-03-29T14:04:20+03:00Максим Коллегин<table class="content postContainer" width="100%"><tr><td>Запросите в техподдержке патч для актуального nginx. </td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid140032:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer_Alt" width="100%"><tr><td>Да видел, используем уже но там nginx 1.18 но у него много CVE</td></tr></table>2023-03-29T13:45:19+03:002023-03-29T13:45:19+03:00halifik<table class="content postContainer_Alt" width="100%"><tr><td>Да видел, используем уже но там nginx 1.18 но у него много CVE</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid140031:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer" width="100%"><tr><td>Мы не проверяли. Обратите внимание на второе сообщение в теме. </td></tr></table>2023-03-29T13:38:43+03:002023-03-29T13:38:43+03:00Максим Коллегин<table class="content postContainer" width="100%"><tr><td>Мы не проверяли. Обратите внимание на второе сообщение в теме. </td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid139982:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer_Alt" width="100%"><tr><td>Коллеги, а будет работать под nginx 1.22 ? </td></tr></table>2023-03-27T22:18:27+03:002023-03-27T22:18:27+03:00halifik<table class="content postContainer_Alt" width="100%"><tr><td>Коллеги, а будет работать под nginx 1.22 ? </td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid136798:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer" width="100%"><tr><td>Добрый день!<br /><br />Неделю изучал тему по форуму, но так и не смог решить задачу - прошу помощи.<br />Задача настроить авторизацию через госуслуги в приложении работающим в контейнере под линуксом(ubuntu 20.04).<br /><br />Затык в формировании параметра secret_client при сборке url на авторизацию в ЕСИА.<br />Собрав все параметры пытаюсь подписать их в cmd:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">openssl smime -engine gost -keyform ENGINE -sign -md sha256 -in {f_in} -signer keys/my_public_cert.crt -inkey keys/my_private.key -out {f_out} -outform DER</code></pre>
</div></div><br />Но все время проблемы с обращением к ключевому контейнеру:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">engine "gost" set.
cannot load signing key file from engine
139762635445568:error:2609607D:engine routines:ENGINE_load_private_key:no load function:../crypto/engine/eng_pkey.c:71:
unable to load signing key file</code></pre>
</div></div><br />конфиг файл найденный по: <span class="highlight">openssl version -d</span><br />дописал только в конец:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">[openssl_def]
engines = engine_section
[engine_section]
gost = gost_section
[gost_section]
engine_id = gost
default_algorithms = ALL
CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet</code></pre>
</div></div><br />руководствуясь этими комментариями: <a rel="nofollow" href="https://habr.com/ru/post/550664/" title="https://habr.com/ru/post/550664/">https://habr.com/ru/post/550664/</a><br />Соответственно у меня:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">openssl engine gost
(gost) Reference implementation of GOST engine</code></pre>
</div></div><br /><br />Находил подобные на форуме, но ответов решающих мою проблему не нашел/понял.<br />Относительно сертификата и закрытого ключа: они экспортированы в pfx файл на рабочей машине под win10 и разложены openssl:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">openssl pkcs12 -in certificate.pfx -clcerts -nokeys -out certificate.crt
openssl pkcs12 -in certificate.pfx -nocerts -out key-encrypted.key</code></pre>
</div></div><br />Ясно что в 3х соснах заблудился.. Не сочтите за труд указать верный путь ясно.</td></tr></table>2022-11-14T10:00:00+03:002022-11-14T10:00:00+03:00Denisekat<table class="content postContainer" width="100%"><tr><td>Добрый день!<br /><br />Неделю изучал тему по форуму, но так и не смог решить задачу - прошу помощи.<br />Задача настроить авторизацию через госуслуги в приложении работающим в контейнере под линуксом(ubuntu 20.04).<br /><br />Затык в формировании параметра secret_client при сборке url на авторизацию в ЕСИА.<br />Собрав все параметры пытаюсь подписать их в cmd:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">openssl smime -engine gost -keyform ENGINE -sign -md sha256 -in {f_in} -signer keys/my_public_cert.crt -inkey keys/my_private.key -out {f_out} -outform DER</code></pre>
</div></div><br />Но все время проблемы с обращением к ключевому контейнеру:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">engine "gost" set.
cannot load signing key file from engine
139762635445568:error:2609607D:engine routines:ENGINE_load_private_key:no load function:../crypto/engine/eng_pkey.c:71:
unable to load signing key file</code></pre>
</div></div><br />конфиг файл найденный по: <span class="highlight">openssl version -d</span><br />дописал только в конец:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">[openssl_def]
engines = engine_section
[engine_section]
gost = gost_section
[gost_section]
engine_id = gost
default_algorithms = ALL
CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet</code></pre>
</div></div><br />руководствуясь этими комментариями: <a rel="nofollow" href="https://habr.com/ru/post/550664/" title="https://habr.com/ru/post/550664/">https://habr.com/ru/post/550664/</a><br />Соответственно у меня:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">openssl engine gost
(gost) Reference implementation of GOST engine</code></pre>
</div></div><br /><br />Находил подобные на форуме, но ответов решающих мою проблему не нашел/понял.<br />Относительно сертификата и закрытого ключа: они экспортированы в pfx файл на рабочей машине под win10 и разложены openssl:<br /><div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-bash">openssl pkcs12 -in certificate.pfx -clcerts -nokeys -out certificate.crt
openssl pkcs12 -in certificate.pfx -nocerts -out key-encrypted.key</code></pre>
</div></div><br />Ясно что в 3х соснах заблудился.. Не сочтите за труд указать верный путь ясно.</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid131259:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer_Alt" width="100%"><tr><td><div class="quote"><span class="quotetitle">Автор: two_oceans <a href="/forum2/default.aspx?g=posts&m=131240#post131240"><img src="/forum2/Themes/soclean/icon_latest_reply.gif" title="Перейти к цитате" alt="Перейти к цитате" /></a></span><blockquote>Если дата в контейнере прошла, но ключ экспортируемый: попробуйте через certmgr экспортировать в pfx и импортировать обратно</div></div><br />действительно ключи были просрочены.<br />Удалось починить таким способом только 1 сайт. второй все равно ругается, хотя ключ теперь не expired<br /><br /><div class="quote"><span class="quotetitle">Автор: two_oceans <a href="/forum2/default.aspx?g=posts&m=131240#post131240"><img src="/forum2/Themes/soclean/icon_latest_reply.gif" title="Перейти к цитате" alt="Перейти к цитате" /></a></span><blockquote>Проверьте есть ли еще какие-то даты кроме процитированных в выводе. Если срок закрытого ключа есть в сертификате и он прошел - с этим ничего не сделать, нужен новый сертификат. <br /></div></div><br /><br />В выводе certmgr -list или какой то другой команды? list никакх дополнительных полей с датами.</td></tr></table>2022-02-08T21:13:07+03:002022-02-08T21:13:07+03:00Dees7<table class="content postContainer_Alt" width="100%"><tr><td><div class="quote"><span class="quotetitle">Автор: two_oceans <a href="/forum2/default.aspx?g=posts&m=131240#post131240"><img src="/forum2/Themes/soclean/icon_latest_reply.gif" title="Перейти к цитате" alt="Перейти к цитате" /></a></span><blockquote>Если дата в контейнере прошла, но ключ экспортируемый: попробуйте через certmgr экспортировать в pfx и импортировать обратно</div></div><br />действительно ключи были просрочены.<br />Удалось починить таким способом только 1 сайт. второй все равно ругается, хотя ключ теперь не expired<br /><br /><div class="quote"><span class="quotetitle">Автор: two_oceans <a href="/forum2/default.aspx?g=posts&m=131240#post131240"><img src="/forum2/Themes/soclean/icon_latest_reply.gif" title="Перейти к цитате" alt="Перейти к цитате" /></a></span><blockquote>Проверьте есть ли еще какие-то даты кроме процитированных в выводе. Если срок закрытого ключа есть в сертификате и он прошел - с этим ничего не сделать, нужен новый сертификат. <br /></div></div><br /><br />В выводе certmgr -list или какой то другой команды? list никакх дополнительных полей с датами.</td></tr></table>urn:https:--www-cryptopro-ru:ftPosts:st1:meid131240:1OpenSSL + ГОСТ (gostengy и gost_capi)<table class="content postContainer" width="100%"><tr><td>Проверьте есть ли еще какие-то даты кроме процитированных в выводе. Если срок закрытого ключа есть в сертификате и он прошел - с этим ничего не сделать, нужен новый сертификат. <br /><br />Если же других дат в сертификате нет (или еще не прошли) - подозрение на срок ключа в контейнере. Наличие ограничения в контейнере можно проверить утилитой csptest, поменяйте под свою ОС по необходимости<div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-markup">csptest -keyset -container имя_контейнера</code></pre>
</div></div><br />Если дата в контейнере прошла, но ключ экспортируемый: попробуйте через certmgr экспортировать в pfx и импортировать обратно, это должно установить дату действия закрытого ключа в контейнере на 457 дней позднее текущей даты. Возможно такой экспорт-импорт проще будет сделать на Windows. Совсем удалять дату действия закрытого ключа из контейнера для такого долгоиграющего сертификата не даст эффекта, поменять прямо нельзя (штатного способа нет, а ручное вмешательство нарушает контроль целостности контейнера). К слову, -loadext у меня срабатывает только для сертификатов, так что через него не меняется.</td></tr></table>2022-02-08T11:58:50+03:002022-02-08T11:58:50+03:00two_oceans<table class="content postContainer" width="100%"><tr><td>Проверьте есть ли еще какие-то даты кроме процитированных в выводе. Если срок закрытого ключа есть в сертификате и он прошел - с этим ничего не сделать, нужен новый сертификат. <br /><br />Если же других дат в сертификате нет (или еще не прошли) - подозрение на срок ключа в контейнере. Наличие ограничения в контейнере можно проверить утилитой csptest, поменяйте под свою ОС по необходимости<div class="code"><strong>Код:</strong><div class="innercode"><pre class="line-numbers"><code class="language-markup">csptest -keyset -container имя_контейнера</code></pre>
</div></div><br />Если дата в контейнере прошла, но ключ экспортируемый: попробуйте через certmgr экспортировать в pfx и импортировать обратно, это должно установить дату действия закрытого ключа в контейнере на 457 дней позднее текущей даты. Возможно такой экспорт-импорт проще будет сделать на Windows. Совсем удалять дату действия закрытого ключа из контейнера для такого долгоиграющего сертификата не даст эффекта, поменять прямо нельзя (штатного способа нет, а ручное вмешательство нарушает контроль целостности контейнера). К слову, -loadext у меня срабатывает только для сертификатов, так что через него не меняется.</td></tr></table>