<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум Рутокен &mdash; Не получается создать открытый ключ на токене]]></title>
		<link>https://forum.rutoken.ru/topic/2621/</link>
		<atom:link href="https://forum.rutoken.ru/feed/rss/topic/2621" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Не получается создать открытый ключ на токене».]]></description>
		<lastBuildDate>Thu, 27 Apr 2017 09:41:53 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10814/#p10814</link>
			<description><![CDATA[<p>Добрый день, Владимир. На данный момент все стало понятно. Благодарю за помощь.</p>]]></description>
			<author><![CDATA[null@example.com (uzater)]]></author>
			<pubDate>Thu, 27 Apr 2017 09:41:53 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10814/#p10814</guid>
		</item>
		<item>
			<title><![CDATA[Re: Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10813/#p10813</link>
			<description><![CDATA[<p>Добрый день, <strong>uzater</strong>.</p><p>Импорт ключей (даже открытой части) ГОСТ 34.10-01 и ГОСТ 34.10-12 запрещен регулятором - ФСБ. </p><p>Если Ваша цель выработка общего ключа и дальнейшего шифрования данных, то специально для Вас был создан алгоритм VKO (<a href="https://ru.wikipedia.org/wiki/ГОСТ_Р_34.10-2012">https://ru.wikipedia.org/wiki/ГОСТ_Р_34.10-2012</a>). Он позволяет сделать общие ключи без импорта открытого ключа. Смотрите наш пример - sdk\pkcs11\samples\Standard\VKO-GOST34.10-2001 или sdk\pkcs11\samples\Standard\VKO-GOST34.10-2012</p><p>Что касается сценарий - создания подписи при помощи одного устройства и ее проверки при помощи другого - к сожалению, проверку можно сделать только программно. Это достаточно странно, но это не наше желание, а требование регулятора.</p>]]></description>
			<author><![CDATA[null@example.com (Владимир Салыкин)]]></author>
			<pubDate>Thu, 27 Apr 2017 07:53:25 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10813/#p10813</guid>
		</item>
		<item>
			<title><![CDATA[Re: Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10810/#p10810</link>
			<description><![CDATA[<p>По поводу сертификатов - тут я наврал немного. Для его создания необходим и закрытый ключ, просто из извлеченного с токена открытого ключа его создать не получится.<br />Но суть в том, что у меня был готовый контейнер PKCS#12, созданный ранее при помощи OpenSSL, я его импортировал на токен, на нем появился открытый ключ RSA с атрибутом CKA_TOKEN = true, то есть возможность создать ключ как объект токена присутствует.<br /></p><div class="quotebox"><blockquote><p>Я правильно понимаю, что вы хотите сгенерировать ключевую пару на одном токене, а затем создать копию открытого ключа?</p></blockquote></div><p>Да, генерировать пару на одном устройстве и перенести открытый ключ на другой токен (точно такой же Рутокен ЭЦП 2.0 Flash). Например, для создания подписи при помощи одного устройства и ее проверки при помощи другого, или для выработки общего ключа и дальнейшего шифрования данных.<br />В общем, можно задать вопрос проще. Как распространять открытые ключи между устройствами? Может быть и правда есть другие варианты и Вы их подскажете.</p><p>Update. Немного покопался, почитал стандарт pkcs11, взял оттуда шаблон создания публичного ключа RSA, и все заработало. Видимо, возившись с 34.10 не все правильно делал с RSA. (В вашей документации шаблон аналогичный, только небольшая неточность, параметр CKK_RSA указан как CKK_GENERIC_RSA, остальное аналогично стандарту). В общем, создать открытый ключ RSA как объект токена получилось. А вот с ГОСТ 34.10-01 и ГОСТ 34.10-12 по прежнему все та же ошибка.</p>]]></description>
			<author><![CDATA[null@example.com (uzater)]]></author>
			<pubDate>Wed, 26 Apr 2017 16:04:39 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10810/#p10810</guid>
		</item>
		<item>
			<title><![CDATA[Re: Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10806/#p10806</link>
			<description><![CDATA[<p>Добрый день, <strong>uzater</strong>.</p><p>Как создавали сертификат с помощью OpenSSL?<br />Я правильно понимаю, что вы хотите сгенерировать ключевую пару на одном токене, а затем создать копию открытого ключа? Нам очень поможет, если Вы расскажете подробнее, что у Вас за проект и что Вы хотите сделать. Возможно есть более простые варианты.</p>]]></description>
			<author><![CDATA[null@example.com (Владимир Салыкин)]]></author>
			<pubDate>Wed, 26 Apr 2017 10:47:13 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10806/#p10806</guid>
		</item>
		<item>
			<title><![CDATA[Re: Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10800/#p10800</link>
			<description><![CDATA[<p>Добрый день.<br />Генерация ключевой пары при помощи вызова C_GenerateKeyPair происходит успешно (34.10-01, 34.10-12, RSA). Далее возникает необходимость извлечь значение открытого ключа и записать его на другой токен. Получение значения ключа (CKA_VALUE, вызов функции C_GetAttributeValue) также происходит без проблем. Но вот создание объекта типа ключ с таким значением на другом токене (функция C_CreateObject) завершается с описанной выше ошибкой (но как объект сессии ключ создается успешно).<br />Если сторонники средствами (например, OpenSSL) создать сертификат, затем через утилиту Панель управления Рутокен импортировать этот сертификат на токен и программно найти содержащиеся на нем ключи, то открытый ключ из сертификата будет присутствовать на устройстве, и значение атрибута CKA_TOKEN у него будет равняться True. Как я предполагаю, происходит как раз создание объекта типа сертификат и объекта типа открытый ключ, привязанного к созданному сертификату. Из этого можно сделать вывод, что создать открытый ключ с заданным значением как объект токена возможно. Но при использовании описанного вами в документации шаблона параметров создания ключа возникает ошибка (аналогично и при создании ключа RSA).<br />По сути, есть неудобный способ генерации ключевой пары, извлечения открытого ключа, создания сертификата с этом ключом, импорт сертификата на другое устройство с помощью вашей утилиты. Но хотелось бы следать все программно, и без создания сертификатов. Тем более, этот способ описан в документации. Надеюсь, эту проблему можно решить.</p>]]></description>
			<author><![CDATA[null@example.com (uzater)]]></author>
			<pubDate>Tue, 25 Apr 2017 14:21:16 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10800/#p10800</guid>
		</item>
		<item>
			<title><![CDATA[Re: Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10799/#p10799</link>
			<description><![CDATA[<p>Добрый день.<br />Попробуйте запустить наш пример из SDK - sdk\pkcs11\samples\Standard\CreateGOST34.10-2001<br />Получится создать пару?</p>]]></description>
			<author><![CDATA[null@example.com (Владимир Салыкин)]]></author>
			<pubDate>Tue, 25 Apr 2017 11:56:17 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10799/#p10799</guid>
		</item>
		<item>
			<title><![CDATA[Не получается создать открытый ключ на токене]]></title>
			<link>https://forum.rutoken.ru/post/10779/#p10779</link>
			<description><![CDATA[<p>Использую Рутокен ЭЦП 2.0 Flash.<br />Не получается создать на устройстве открытый ключ.<br />В документации (ссылка: <a href="https://developer.rutoken.ru/pages/viewpage.action?pageId=3178529">https://developer.rutoken.ru/pages/view … Id=3178529</a>) описан шаблон создания открытого ключа ГОСТ Р 34.10-2001<br /></p><div class="codebox"><pre><code>CK_OBJECT_CLASS your_class = CKO_PUBLIC_KEY;
CK_KEY_TYPE keyType = CKK_GOSTR3410;
CK_UTF8CHAR label[] = “A GOST R34.10-2001 public_key object”;
CK_BYTE gostR3410params_oid[] = {0x06, 0x07, 0x2a, 0x85, 0x03, 0x02, 0x02, 0x23, 0x00};
CK_BYTE gostR3411params_oid[] = {0x06, 0x07, 0x2a, 0x85, 0x03, 0x02, 0x02, 0x1e, 0x00};
CK_BYTE gost28147params_oid[] = {0x06, 0x07, 0x2a, 0x85, 0x03, 0x02, 0x02, 0x1f, 0x00};
CK_BYTE value[64] = {...};
CK_BBOOL IsTrue = CK_TRUE;

CK_ATTRIBUTE template[] = {
    {CKA_CLASS, &amp;your_class, sizeof(your_class)},
    {CKA_KEY_TYPE, &amp;keyType, sizeof(keyType)},
    {CKA_TOKEN, &amp;IsTrue, sizeof(IsTrue)},
    {CKA_LABEL, label, sizeof(label)-1},
    {CKA_GOSTR3410PARAMS, gostR3410params_oid, sizeof(gostR3410params_oid)},
    {CKA_GOSTR3411PARAMS, gostR3411params_oid, sizeof(gostR3411params_oid)},
    {CKA_GOST28147_PARAMS, gost28147params_oid, sizeof(gost28147params_oid)},
    {CKA_VALUE, value, sizeof(value)}
};</code></pre></div><p>При создании - ошибка CKR_TEMPLATE_INCONSISTENT. Аналогично и при использовании ГОСТ 34.10-2012. При задании в false значения атрибута CKA_TOKEN ключ создается без ошибки. Подскажите, в чем может быть проблема?</p>]]></description>
			<author><![CDATA[null@example.com (uzater)]]></author>
			<pubDate>Sat, 22 Apr 2017 13:32:57 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/10779/#p10779</guid>
		</item>
	</channel>
</rss>
