<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Рутокен &mdash; Rutoken + openssl windows]]></title>
	<link rel="self" href="https://forum.rutoken.ru/feed/atom/topic/4557/" />
	<updated>2025-02-14T10:45:17Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.rutoken.ru/topic/4557/</id>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27246/#p27246" />
			<content type="html"><![CDATA[<p>Добрый день!</p><div class="quotebox"><cite>slpodpishi пишет:</cite><blockquote><p>правильно ли я понимаю, что ее можно использовать для получения нужного мне cms pkcs7 если:<br />1) вычислить хэш подписанных данных<br />2) создать атрибуты для подписи в формате ASN.1<br />3) создать сырую подпись для созданных атрибутов<br />4) вручную собрать через синтаксис ASN.1 нужный мне pkcs7</p></blockquote></div><p>Все верно.</p><div class="quotebox"><cite>slpodpishi пишет:</cite><blockquote><p>Если логика правильная - вы случайно не встречали какой-либо пакет, который поддерживает такую сборку?</p></blockquote></div><p>Встречал:<br />* библиотека или утилита openssl, к которым подключен rtengine (утилита -- <a href="https://dev.rutoken.ru/pages/viewpage.action?pageId=180715764">https://dev.rutoken.ru/pages/viewpage.a … =180715764</a> ; программный интерфейс можно посмотреть в SDK: <a href="https://www.rutoken.ru/support/download/get/sdk.html">https://www.rutoken.ru/support/download/get/sdk.html</a> -- директория sdk/openssl);<br />* библиотека rtpkcs11ecp с функцией расширения C_EX_PKCS7Sign: <a href="https://dev.rutoken.ru/pages/viewpage.action?pageId=3178555#id-%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D1%8F-C_EX_PKCS7Sign()">https://dev.rutoken.ru/pages/viewpage.a … KCS7Sign()</a><br />* библиотека pki-core-cpp: <a href="https://dev.rutoken.ru/pages/viewpage.action?pageId=20119788">https://dev.rutoken.ru/pages/viewpage.a … d=20119788</a></p><p>До тех пор, пока неясны ограничения, исключающие эти варианты, сложно порекомендовать что-то другое.</p>]]></content>
			<author>
				<name><![CDATA[Евгений Мироненко]]></name>
				<uri>https://forum.rutoken.ru/user/8673/</uri>
			</author>
			<updated>2025-02-14T10:45:17Z</updated>
			<id>https://forum.rutoken.ru/post/27246/#p27246</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27245/#p27245" />
			<content type="html"><![CDATA[<p>Вы будете смеяться, но все заработало сегодня утром.<br />Сел делать по вашей инструкции скрины и при первом запуске оно уже показало engine set rtengine, чего я и добивался.<br />Как я понял, проблема была в том, что после установки всех нужных библиотек машину не перегрузили, так как это сервер 1С и организация работала, а я нахожусь от машины в паре тысяч километров.<br />Вчера ночью машину ребутнули сами владельцы машины и все сегодня завелось идеально.<br />подпись формируется и нормально работает.</p><p>Спасибо еще раз за помощь.</p><p>и уже в качестве факультатива проконсультируйте по вот такому вопросу.<br />Вы мне рекомендовали для диагностики пакет OpenSC - я его вставил в свой пакет, чтобы он уже был, он работает без установки в ОС, просто из папки.<br />с помощью утилиты OpenSC у меня получилось сделать сырую подпись.</p><p>сертификат ключа есть уже в отдельном файле.</p><p>правильно ли я понимаю, что ее можно использовать для получения нужного мне cms pkcs7 если:<br />1) вычислить хэш подписанных данных<br />2) создать атрибуты для подписи в формате ASN.1<br />3) создать сырую подпись для созданных атрибутов<br />4) вручную собрать через синтаксис ASN.1 нужный мне pkcs7</p><br /><p>Если логика правильная - вы случайно не встречали какой-либо пакет, который поддерживает такую сборку?<br />ибо писать это на php я буду не быстро.</p><p>Спасибо.</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-02-14T10:18:08Z</updated>
			<id>https://forum.rutoken.ru/post/27245/#p27245</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27234/#p27234" />
			<content type="html"><![CDATA[<p>Добрый день!</p><div class="quotebox"><cite>slpodpishi пишет:</cite><blockquote><p>но когда я делаю вызов openssl для подписи = получаю ошибку invalid engine rtengine:</p><p><a href="https://forum.rutoken.ru/uploads/images/2025/02/0b2d1d6c03a2f987e9975eaae62a998a.png">https://forum.rutoken.ru/uploads/images … 2a998a.png</a></p><p>помогите советом куда копать.</p></blockquote></div><p>Чтобы исключить вероятность недопонимания и опечаток, хотелось бы попросить на таком же скриншоте показать последовательный вызов следующих команд в одном терминале cmd.exe:</p><div class="codebox"><pre><code>set OPENSSL_CONF=C:\sign1c\openssl.cnf

echo %OPENSSL_CONF%

type %OPENSSL_CONF%

openssl engine -v

REM В этой команде нужно исправить значение XXXXXX на реальный пин-код
openssl cms -sign -binary -nosmimecap -in 1.txt -out 1.res -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP?pin-value=XXXXXX&quot; -engine rtengine -signer certfile.crt</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Евгений Мироненко]]></name>
				<uri>https://forum.rutoken.ru/user/8673/</uri>
			</author>
			<updated>2025-02-13T16:09:49Z</updated>
			<id>https://forum.rutoken.ru/post/27234/#p27234</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27229/#p27229" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Алексей Кийко пишет:</cite><blockquote><p>1. После создания/изменения конфигурационного файла openssl, вы применяли следующую команду?<br />(замените \path\to\openssl.cnf на путь к вашему конфигурационному файлу)</p><p>set OPENSSL_CONF=C:\path\to\openssl.cnf</p></blockquote></div><p>да, применял.<br />Хотя это всего лишь установка переменной окружения в операционной системе.<br />перед запуском я проверяю ее, что она установлена</p><p>C:\sign1c&gt;echo %OPENSSL_CONF%<br />с:\sign1c\openssl.cnf</p><br /><div class="quotebox"><cite>Алексей Кийко пишет:</cite><blockquote><p>OPENSSL_CONF=C:\path\to\openssl.cnf openssl cms -sign -binary -nosmimecap -in 1.txt -out 1.res -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP?pin-value=XXXXXX&quot; -engine rtengine -signer certfile.crt</p></blockquote></div><p>в таком виде оно дает ошибку о неизвестной команде OPENSSL_CONF<br />а если добавить перед ней set - то в итоге она установит неправильно переменную окруженя, считая, что переменная окружения - весь текст после знака &quot;=&quot;</p><p>C:\sign1c&gt;echo %OPENSSL_CONF%<br />C:\sign1c\openssl.cnf openssl cms -sign -binary -nosmimecap -in 1.txt -out 1.res -outform PEM -keyform engine -inkey pkcs11:model=Rutoken%20ECP -engine rtengine -signer certfile.crt</p><br /><div class="quotebox"><cite>Алексей Кийко пишет:</cite><blockquote><p>openssl cms -sign -binary -nosmimecap -in 1.txt -out 1.res -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP?pin-value=XXXXXX&quot; -engine dynamic -pre SO_PATH:c:\sign1c\lib\rtengine.dll -pre ID:rtengine -pre LIST_ADD:1 -pre LOAD -pre pkcs11_path:rtpkcs11ecp.dll -signer certfile.crt</p></blockquote></div><p>это приводит вот к такому результату</p><p>engine &quot;dynamic&quot; set.<br />cms: Unrecognized flag pre</p><p>я реально не понимаю почему оно не грузит engine, хотя динамическая загрузка работает без ошибок</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-02-13T09:11:22Z</updated>
			<id>https://forum.rutoken.ru/post/27229/#p27229</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27223/#p27223" />
			<content type="html"><![CDATA[<p>Добрый день.</p><p>1. После создания/изменения конфигурационного файла openssl, вы применяли следующую команду?<br />(замените \path\to\openssl.cnf на путь к вашему конфигурационному файлу)</p><p>set OPENSSL_CONF=C:\path\to\openssl.cnf</p><p>Если нет, попробуйте её применить и попробовать заново ввести команду для подписи.</p><p>2. Попробуйте указать путь к конфигурационному файлу openssl перед командой для подписания (замените \path\to\openssl.cnf на путь к вашему конфигурационному файлу):</p><p>OPENSSL_CONF=C:\path\to\openssl.cnf openssl cms -sign -binary -nosmimecap -in 1.txt -out 1.res -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP?pin-value=XXXXXX&quot; -engine rtengine -signer certfile.crt</p><p>3. Попробуйте указать путь к библиотеке rtengine в команде для подписания файла:</p><p>openssl cms -sign -binary -nosmimecap -in 1.txt -out 1.res -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP?pin-value=XXXXXX&quot; -engine dynamic -pre SO_PATH:c:\sign1c\lib\rtengine.dll -pre ID:rtengine -pre LIST_ADD:1 -pre LOAD -pre pkcs11_path:rtpkcs11ecp.dll -signer certfile.crt</p>]]></content>
			<author>
				<name><![CDATA[Алексей Кийко]]></name>
				<uri>https://forum.rutoken.ru/user/14510/</uri>
			</author>
			<updated>2025-02-12T13:17:07Z</updated>
			<id>https://forum.rutoken.ru/post/27223/#p27223</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27222/#p27222" />
			<content type="html"><![CDATA[<p>Добрый день.<br />перенес пакет на комп заказчика.<br />Начало выдавать ошибку invalid engine rtengine</p><p>что имеем у заказчика на машине:</p><p>Вот openssl.cnf</p><br /><p>-----------------------------8&lt;----------------------------<br />[ openssl_def ]<br />engines = engine_section</p><p>[ engine_section ]<br />rtengine = rtengine_section<br />gost = gost_section</p><p>[ rtengine_section ]<br />dynamic_path = &quot;c:\\sign1c\\lib\\rtengine.dll&quot;<br />#enable_rand = yes<br />#pkcs11_path = &quot;c:\sign1c\lib\rtpkcs11ecp.dll&quot;<br />pkcs11_path = &quot;c:\\windows\\system32\\rtpkcs11ecp.dll&quot;</p><p>#rand_token = pkcs11:model=Rutoken%20ECP<br />default_algorithms = ALL</p><br /><p>[gost_section]</p><p>engine_id = gost<br />dynamic_path = ./gost.dll<br />default_algorithms = ALL</p><p>-----------------------------8&lt;----------------------------</p><p>Вот вызов openssl с динамичным вызовом библиотек Engine, он проходит нормально</p><p>openssl.exe engine dynamic -pre SO_PATH:C:\sign1c\lib\rtengine.dll -pre ID:rtengine -pre LIST_ADD:1 -pre LOAD -pre pkcs11_path:rtpkcs11ecp.dll<br />(dynamic) Dynamic engine loading support<br />[Success]: SO_PATH:C:\sign1c\lib\rtengine.dll<br />[Success]: ID:rtengine<br />[Success]: LIST_ADD:1<br />[Success]: LOAD<br />[Success]: pkcs11_path:rtpkcs11ecp.dll<br />Loaded: (rtengine) Rutoken engine</p><br /><p>но когда я делаю вызов openssl для подписи = получаю ошибку invalid engine rtengine:</p><p><span class="postimg"><a class="fancybox fancybox.image" rel="group" href="https://forum.rutoken.ru/uploads/images/2025/02/0b2d1d6c03a2f987e9975eaae62a998a.png"><img class="fb_img" src="https://forum.rutoken.ru/uploads/previews/2025/02/0b2d1d6c03a2f987e9975eaae62a998a.png" alt="" /></a></span></p><br /><p>помогите советом куда копать.</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-02-12T12:01:46Z</updated>
			<id>https://forum.rutoken.ru/post/27222/#p27222</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27013/#p27013" />
			<content type="html"><![CDATA[<p>Готового решения у нас нет.<br />Могу предложить только использовать API Рутокен плагин для получения информации об устройстве.<br />Подробнее можно прочитать в документации:<br /><a href="https://plugin.api.rutoken.ru/CryptoPlugin.html#getDeviceInfo">https://plugin.api.rutoken.ru/CryptoPlu … DeviceInfo</a><br /><a href="https://plugin.api.rutoken.ru/CryptoPlugin.html#enumerateKeys">https://plugin.api.rutoken.ru/CryptoPlu … merateKeys</a><br /><a href="https://plugin.api.rutoken.ru/CryptoPlugin.html#getKeyInfo">https://plugin.api.rutoken.ru/CryptoPlu … getKeyInfo</a></p>]]></content>
			<author>
				<name><![CDATA[Алексей Кийко]]></name>
				<uri>https://forum.rutoken.ru/user/14510/</uri>
			</author>
			<updated>2025-01-24T14:11:43Z</updated>
			<id>https://forum.rutoken.ru/post/27013/#p27013</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27010/#p27010" />
			<content type="html"><![CDATA[<p>Спасибо большое, все получилось.<br />Есть ли какая то команда клиента JS, чтобы достать полный URI для нужного токена?</p><p>проще говоря, чтобы бухгалтер на моей странице увидела перечень параметров, скопировала нужный URI и без бубна запустилась командная строка?<br />т.е. для сложных случаев можно будет просто запускать OpenSC - но не всем бухгалтерам это будет под силу с первого или второго раза.</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-01-24T11:38:48Z</updated>
			<id>https://forum.rutoken.ru/post/27010/#p27010</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27009/#p27009" />
			<content type="html"><![CDATA[<p>Чтобы не вводить PIN-код вручную, нужно в команде openssl в разделе pkcs11-uri добавить параметр &quot;?pin-value=123456&quot;, где 123456 - это ваш актуальный PIN-код Рутокена.</p><p>В вашем случае, команда будет выглядеть следующим образом:<br />openssl cms -sign -binary -nosmimecap -in etalon.file -out signed_cms -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP?pin-value=123456&quot; -engine rtengine -signer xn.crt</p>]]></content>
			<author>
				<name><![CDATA[Алексей Кийко]]></name>
				<uri>https://forum.rutoken.ru/user/14510/</uri>
			</author>
			<updated>2025-01-24T10:48:23Z</updated>
			<id>https://forum.rutoken.ru/post/27009/#p27009</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/27007/#p27007" />
			<content type="html"><![CDATA[<p>Спасибо за помощь, команда<br />openssl cms -sign -binary -nosmimecap -in etalon.file -out signed_cms -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP&quot; -engine rtengine -signer xn.crt</p><p>полностью рабочая и создается PEM с сертификатом.<br />Но не решена самая главная часть - оно запрашивает ручной ввод ПИН.</p><p>создание подписи работает только при &quot;pkcs11:model=Rutoken%20ECP&quot;</p><p>если указать <br />&quot;pkcs11:model=Rutoken%20ECP;&quot; - то получаем сразу ошибку (т.е. добавление в конце параметра точки с запятой обрушает систему с той же ошибкой.)</p><p>Указание <br />&quot;pkcs11:model=Rutoken%20ECP;pin-value=123456&quot; или <br />&quot;pkcs11:model=Rutoken%20ECP;pin-value=123456;&quot; или<br />&quot;pkcs11:pin-value=123456;&quot;<br />&quot;pkcs11:pin-value=123456&quot;</p><p>приводит к той же ошибке</p><p>cannot load signing key file from engine<br />unable to load signing key file</p><p>есть какой то другой способ указать PIN, чтобы система не падала?</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-01-24T10:29:10Z</updated>
			<id>https://forum.rutoken.ru/post/27007/#p27007</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/26993/#p26993" />
			<content type="html"><![CDATA[<p>Судя по всему, ошибка в конфигурационном файле openssl.cnf<br />Измените путь к библиотеке pkcs11 в данном файле на pkcs11_path = &quot;./lib/rtpkcs11ecp.dll&quot;<br />Так же, закомментируйте строки enable_rand = yes и rand_token = pkcs11:model=Rutoken%20ECP<br />Чтобы раздел файла имел следующий вид:<br />[ rtengine_section ]<br />dynamic_path = &quot;./lib/rtengine.dll&quot;<br />#enable_rand = yes<br />pkcs11_path = &quot;./lib/rtpkcs11ecp.dll&quot;<br />#rand_token = pkcs11:model=Rutoken%20ECP<br />default_algorithms = ALL</p><p>После чего, выполните команду:<br />set OPENSSL_CONF=C:\Путь_до_файла\openssl.cnf</p><p>Так как у вас подключен один Рутокен с одним сертификатом, вы можете использовать команду:<br />openssl cms -sign -binary -nosmimecap -in etalon.file -out signed_cms -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP&quot; -engine rtengine -signer xn.crt</p><p>Если на Рутокене будет несколько сертификатов, нужно будет указывать id ключегой пары.<br />Для этого, придётся конвертировать полученный id из pkcs11-uri с помощью pkcs11-tool и сконвертировать его в формат ASCII.<br />Для этого, можно воспользоваться онлайн конвертаторами: <a href="https://www.rapidtables.com/convert/number/hex-to-ascii.html">https://www.rapidtables.com/convert/num … ascii.html</a></p><p>Подробнее, описано в:<br /><a href="https://dev.rutoken.ru/pages/viewpage.action?pageId=180715764#:~:text=0.7.x.-,%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B9%20%D0%BD%D0%B0%20%D0%A0%D1%83%D1%82%D0%BE%D0%BA%D0%B5%D0%BD%D0%B5,-rtengine%20%D0%BF%D0%BE%D0%B7%D0%B2%D0%BE%D0%BB%D1%8F%D0%B5%D1%82%20%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C">https://dev.rutoken.ru/pages/viewpage.a … 1%82%D1%8C</a></p><br /><p>Так же, при использовании openssl, не нужно указывать раздел object и type в pkcs11-uri. Указание ID закрытого ключа будет достаточно.</p>]]></content>
			<author>
				<name><![CDATA[Алексей Кийко]]></name>
				<uri>https://forum.rutoken.ru/user/14510/</uri>
			</author>
			<updated>2025-01-23T14:17:42Z</updated>
			<id>https://forum.rutoken.ru/post/26993/#p26993</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/26988/#p26988" />
			<content type="html"><![CDATA[<p>Результат эксперимента:</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool -L --module C:\windows\system32\rtpkcs11ecp.dll<br />Available slots:<br />Slot 0 (0x0): Aktiv Rutoken ECP 0<br />&nbsp; token label&nbsp; &nbsp; &nbsp; &nbsp; : Rutoken ECP &lt;no label&gt;<br />&nbsp; token manufacturer : Aktiv Co.<br />&nbsp; token model&nbsp; &nbsp; &nbsp; &nbsp; : Rutoken ECP<br />&nbsp; token flags&nbsp; &nbsp; &nbsp; &nbsp; : login required, rng, SO PIN count low, token initialized, PIN initialized<br />&nbsp; hardware version&nbsp; &nbsp;: 20.5<br />&nbsp; firmware version&nbsp; &nbsp;: 23.2<br />&nbsp; serial num&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;: 3b235b65<br />&nbsp; pin min/max&nbsp; &nbsp; &nbsp; &nbsp; : 6/32<br />&nbsp; uri&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=3b235b65;token=Rutoken%20ECP%20&lt;no%20label&gt;<br />Slot 1 (0x1):<br />&nbsp; (empty)<br />Slot 2 (0x2):<br />&nbsp; (empty)<br />Slot 3 (0x3):<br />&nbsp; (empty)<br />Slot 4 (0x4):<br />&nbsp; (empty)<br />Slot 5 (0x5):<br />&nbsp; (empty)<br />Slot 6 (0x6):<br />&nbsp; (empty)<br />Slot 7 (0x7):<br />&nbsp; (empty)<br />Slot 8 (0x8):<br />&nbsp; (empty)<br />Slot 9 (0x9):<br />&nbsp; (empty)<br />Slot 10 (0xa):<br />&nbsp; (empty)<br />Slot 11 (0xb):<br />&nbsp; (empty)<br />Slot 12 (0xc):<br />&nbsp; (empty)<br />Slot 13 (0xd):<br />&nbsp; (empty)<br />Slot 14 (0xe):<br />&nbsp; (empty)</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool -I --module C:\windows\system32\rtpkcs11ecp.dll<br />Cryptoki version 2.40<br />Manufacturer&nbsp; &nbsp; &nbsp;Aktiv Co.<br />Library&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Rutoken ECP PKCS #11 library (ver 2.14)<br />Using slot 0 with a present token (0x0)</p><br /><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --pin 123456 -t --module C:\windows\system32\rtpkcs11ecp.dll</p><p>Using slot 0 with a present token (0x0)<br />C_SeedRandom() and C_GenerateRandom():<br />&nbsp; seeding (C_SeedRandom) not supported<br />&nbsp; ERR: C_GenerateRandom(buf1,0) failed: CKR_ARGUMENTS_BAD (0x7)<br />Digests:<br />&nbsp; all 4 digest functions seem to work<br />&nbsp; MD5: OK<br />&nbsp; SHA-1: OK<br />&nbsp; SHA256: OK<br />Ciphers: not implemented<br />Signatures (currently only for RSA)<br />&nbsp; testing key 0 (ViPNet PrivateKey)&nbsp; -- non-RSA, skipping<br />Signatures: no private key found in this slot<br />Verify (currently only for RSA)<br />&nbsp; testing key 0 (ViPNet PrivateKey) -- non-RSA, skipping<br />Decryption (currently only for RSA)<br />&nbsp; testing key 0 (ViPNet PrivateKey) -- non-RSA, skipping<br />1 errors</p><br /><br /><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --login --list-objects --type privkey --module C:\windows\system32\rtpkcs11ecp.dll</p><br /><p>Using slot 0 with a present token (0x0)<br />Logging in to &quot;Rutoken ECP &lt;no label&gt;&quot;.<br />Please enter User PIN: <br />Private Key Object; GOSTR3410-2012-256<br />&nbsp; PARAMS OID: 06072a850302022400<br />&nbsp; label:&nbsp; &nbsp; &nbsp; ViPNet PrivateKey<br />&nbsp; ID:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cd2fd3a6000000004050bdab05f2da01<br />&nbsp; Usage:&nbsp; &nbsp; &nbsp; sign, unwrap, derive<br />&nbsp; Access:&nbsp; &nbsp; &nbsp;sensitive, always sensitive, never extractable, local<br />&nbsp; uri:&nbsp; &nbsp; &nbsp; &nbsp; pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=3b235b65;token=Rutoken%20ECP%20&lt;no%20label&gt;;id=%cd2fd3a6000000004050bdab05f2da01;object=ViPNet%20PrivateKey;type=private</p><br /><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --login --list-objects --type privkey --module C:\windows\system32\rtpkcs11ecp.dll</p><br /><p>Using slot 0 with a present token (0x0)<br />Logging in to &quot;Rutoken ECP &lt;no label&gt;&quot;.<br />Please enter User PIN: <br />Private Key Object; GOSTR3410-2012-256<br />&nbsp; PARAMS OID: 06072a850302022400<br />&nbsp; label:&nbsp; &nbsp; &nbsp; ViPNet PrivateKey<br />&nbsp; ID:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cd2fd3a6000000004050bdab05f2da01<br />&nbsp; Usage:&nbsp; &nbsp; &nbsp; sign, unwrap, derive<br />&nbsp; Access:&nbsp; &nbsp; &nbsp;sensitive, always sensitive, never extractable, local<br />&nbsp; uri:&nbsp; &nbsp; &nbsp; &nbsp; pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=3b235b65;token=Rutoken%20ECP%20&lt;no%20label&gt;;id=%cd2fd3a6000000004050bdab05f2<br />da01;object=ViPNet%20PrivateKey;type=private</p><p>Вот тут я подставил URI из вывода OpenSC</p><br /><p>D:\Slava&gt;openssl cms -sign -binary -nosmimecap -in etalon.file -out signed_cms -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=3b235b65;token=Rutoken%20ECP%20&lt;no%20label&gt;;id=%cd2fd3a6000000004050bdab05f2da01;pin-value=123456;object=ViPNet%20PrivateKey;&quot; -engine rtengine -signer xn.crt</p><p>engine &quot;rtengine&quot; set.<br />cannot load signing key file from engine<br />10824:error:8208D0F5:lib(130):parse_attr:wrong uri:C:\j\workspace\rtengine-build\315609d0\engine\standalone\p11_uri.c:114:<br />10824:error:26096080:engine routines:ENGINE_load_private_key:failed loading private key:crypto\engine\eng_pkey.c:78:<br />unable to load signing key file<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ↑</p><p>openssl cms -sign -binary -nosmimecap -in etalon.file -out signed_cms -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=3b235b65;token=Rutoken%20ECP%20&lt;no%20label&gt;;id=%cd2fd3a6000000004050bdab05f2da01;pin-value=123456;object=ViPNet%20PrivateKey;&quot; -engine rtengine -signer xn.crt</p><p>cannot load signing key file from engine<br />10928:error:8208D0F5:lib(130):parse_attr:wrong uri:C:\j\workspace\rtengine-build\315609d0\engine\standalone\p11_uri.c:114:<br />10928:error:26096080:engine routines:ENGINE_load_private_key:failed loading private key:crypto\engine\eng_pkey.c:78:<br />unable to load signing key file</p><br /><p>openssl cms -sign -binary -nosmimecap -in etalon.file -out signed_cms -outform PEM -keyform engine -inkey &quot;pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=3b235b65;token=Rutoken%20ECP%20&lt;no%20label&gt;;pin-value=123456&quot; -engine rtengine -signer xn.crt</p><p>engine &quot;rtengine&quot; set.<br />cannot load signing key file from engine<br />2016:error:8208D0F5:lib(130):parse_attr:wrong uri:C:\j\workspace\rtengine-build\315609d0\engine\standalone\p11_uri.c:114:<br />2016:error:26096080:engine routines:ENGINE_load_private_key:failed loading private key:crypto\engine\eng_pkey.c:78:<br />unable to load signing key file</p><br /><p>А вот командная строка создания подписи через pkcs11-tool, которая успешно прошла и создала мне файл подписи на 64 байта - как я понимаю, это просто сырая подпись в бинарном виде.</p><p>pkcs11-tool --sign --id cd2fd3a6000000004050bdab05f2da01 --mechanism GOSTR3410-2012-256 --input-file etalon.file --output-file data.sig --module C:\windows\system32\rtpkcs11ecp.dll<br />Using slot 0 with a present token (0x0)<br />Logging in to &quot;Rutoken ECP &lt;no label&gt;&quot;.<br />Please enter User PIN: <br />Using signature algorithm GOSTR3410-WITH-GOSTR3411-12-256</p><br /><p>вопрос - как сделать, чтбы стандартный механизм работал или как собрать cms pkcs#7 (detached signature) из сырой подписи?</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-01-23T11:18:25Z</updated>
			<id>https://forum.rutoken.ru/post/26988/#p26988</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/26986/#p26986" />
			<content type="html"><![CDATA[<p><strong>slpodpishi</strong>, обратите внимание, pkcs11-tool необходимо указать --module C:\windows\system32\rtpkcs11ecp.dll <br />без указания библиотеки будет использоваться библиотека opensc-pkcs11.dll, которая не совместима с объектами, созданными через нашу библиотеку.</p>]]></content>
			<author>
				<name><![CDATA[Филиппов Никита]]></name>
				<uri>https://forum.rutoken.ru/user/15532/</uri>
			</author>
			<updated>2025-01-23T10:22:50Z</updated>
			<id>https://forum.rutoken.ru/post/26986/#p26986</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/26984/#p26984" />
			<content type="html"><![CDATA[<p>на ra.rutoken.ru оно показывает вот такое:</p><p><span class="postimg"><a class="fancybox fancybox.image" rel="group" href="https://forum.rutoken.ru/uploads/images/2025/01/4ea37b9766178ef04e543e2d9865d2f0.png"><img class="fb_img" src="https://forum.rutoken.ru/uploads/previews/2025/01/4ea37b9766178ef04e543e2d9865d2f0.png" alt="" /></a></span> </p><br /><br /><p>Я же нормально токеном авторизуюсь и подписываю документы через PLugin в браузере&nbsp; - тут никаких проблем нет.</p><br /><p>Вот все, что я смог добиться от tools</p><br /><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool -I<br />Cryptoki version 3.0<br />Manufacturer&nbsp; &nbsp; &nbsp;OpenSC Project<br />Library&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; OpenSC smartcard framework (ver 0.26)<br />Using slot 3 with a present token (0xc)</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool -L<br />Available slots:<br />Slot 0 (0x0): Aktiv Co. ruToken 0<br />&nbsp; (empty)<br />Slot 1 (0x4): Aktiv Co. ruToken 1<br />&nbsp; (empty)<br />Slot 2 (0x8): Aktiv Co. ruToken 2<br />&nbsp; (empty)<br />Slot 3 (0xc): Aktiv Rutoken ECP 0<br />&nbsp; (token not recognized)</p><br /><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --pin 123456 -t<br />Using slot 3 with a present token (0xc)<br />error: PKCS11 function C_GetTokenInfo failed: rv = CKR_TOKEN_NOT_RECOGNIZED (0xe1)<br />Aborting.</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --pin 123456 -t<br />Using slot 3 with a present token (0xc)<br />error: PKCS11 function C_GetTokenInfo failed: rv = CKR_TOKEN_NOT_RECOGNIZED (0xe1)<br />Aborting.</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --pin 123456 -t -v<br />Using slot 3 with a present token (0xc)<br />error: PKCS11 function C_GetTokenInfo failed: rv = CKR_TOKEN_NOT_RECOGNIZED (0xe1)<br />Aborting.</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --test --login<br />Using slot 3 with a present token (0xc)<br />error: PKCS11 function C_GetTokenInfo failed: rv = CKR_TOKEN_NOT_RECOGNIZED (0xe1)<br />Aborting.</p><p>C:\Program Files\OpenSC Project\OpenSC\tools&gt;pkcs11-tool --login --list-objects --type privkey<br />Using slot 3 with a present token (0xc)<br />error: PKCS11 function C_GetTokenInfo failed: rv = CKR_TOKEN_NOT_RECOGNIZED (0xe1)<br />Aborting.</p>]]></content>
			<author>
				<name><![CDATA[slpodpishi]]></name>
				<uri>https://forum.rutoken.ru/user/15792/</uri>
			</author>
			<updated>2025-01-23T09:50:28Z</updated>
			<id>https://forum.rutoken.ru/post/26984/#p26984</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Rutoken + openssl windows]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/26975/#p26975" />
			<content type="html"><![CDATA[<p><strong>slpodpishi</strong>, <a href="https://github.com/OpenSC/OpenSC/releases">ссылка </a>на их репозиторий.</p>]]></content>
			<author>
				<name><![CDATA[Филиппов Никита]]></name>
				<uri>https://forum.rutoken.ru/user/15532/</uri>
			</author>
			<updated>2025-01-22T13:57:27Z</updated>
			<id>https://forum.rutoken.ru/post/26975/#p26975</id>
		</entry>
</feed>
