<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум Рутокен &mdash; CryptoAPI: Как программно установить PIN-код]]></title>
	<link rel="self" href="https://forum.rutoken.ru/feed/atom/topic/953/" />
	<updated>2015-04-29T16:00:35Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.rutoken.ru/topic/953/</id>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8291/#p8291" />
			<content type="html"><![CDATA[<p>Эта константа не входит в SDK - забудьте, извините, это я наплошал.<br />Используйте PP_SMARTCARD_READER</p>]]></content>
			<author>
				<name><![CDATA[Кирилл Мещеряков]]></name>
				<uri>https://forum.rutoken.ru/user/6786/</uri>
			</author>
			<updated>2015-04-29T16:00:35Z</updated>
			<id>https://forum.rutoken.ru/post/8291/#p8291</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8287/#p8287" />
			<content type="html"><![CDATA[<p>1. Ответьте на этот вопрос тоже, пожалуйста.<br />2. Видимо не Spok :) Спасибо, помогло.</p>]]></content>
			<author>
				<name><![CDATA[Spok]]></name>
				<uri>https://forum.rutoken.ru/user/9757/</uri>
			</author>
			<updated>2015-04-28T17:14:00Z</updated>
			<id>https://forum.rutoken.ru/post/8287/#p8287</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8285/#p8285" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Spok пишет:</cite><blockquote><p>if( !CryptSetProvParam(hCryptProv, PP_SMARTCARD_READER, (const BYTE*)&quot;Activ Co. ruToken 0&quot;, NULL))</p></blockquote></div><p>неправильно скопировали имя :)<br />&quot;Aktiv Co. ruToken 0&quot; - через букву К</p>]]></content>
			<author>
				<name><![CDATA[Кирилл Мещеряков]]></name>
				<uri>https://forum.rutoken.ru/user/6786/</uri>
			</author>
			<updated>2015-04-28T10:52:46Z</updated>
			<id>https://forum.rutoken.ru/post/8285/#p8285</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8282/#p8282" />
			<content type="html"><![CDATA[<p>Добрый день.</p><p>1. В каком файле объявлен PP_RTCSP_CURRENT_READER и как можно получить этот файл?</p><p>2. Правильно ли я задал имя ридера? Если да, то почему возникает ошибка? <br />if( !CryptSetProvParam(hCryptProv, PP_SMARTCARD_READER, (const BYTE*)&quot;Activ Co. ruToken 0&quot;, NULL))<br />{<br />&nbsp; &nbsp; dwError = GetLastError() ; //Ошибка с кодом 0x80100017<br />&nbsp; &nbsp; return;<br />}<br />P.S в панели управления мой RuToken виден именно с этим именем ридера.</p>]]></content>
			<author>
				<name><![CDATA[Spok]]></name>
				<uri>https://forum.rutoken.ru/user/9757/</uri>
			</author>
			<updated>2015-04-28T09:39:42Z</updated>
			<id>https://forum.rutoken.ru/post/8282/#p8282</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8266/#p8266" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Spok пишет:</cite><blockquote><p>Здравствуйте,</p><p>По этой ссылке <a href="https://forum.rutoken.ru/post/3582/#p3582">https://forum.rutoken.ru/post/3582/#p3582</a> вы пишете:<br />На нашем сайте выложена новая версия драйверов Рутокен&nbsp; v. 2.81.00.0424<br />Доработан криптопровайдер. Реализована возможность работы без отображения пользовательского интерфейса.</p><p>Имею: <br />RuToken S с драйверами 2.100.00.0542, <br />Windows 2008 R2.</p><br /><p>Вызываю:</p><p>#define MYPROV TEXT(&quot;Aktiv Rutoken CSP v1.0&quot;)<br />const BYTE pin[] = {0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x00};<br />DWORD dwError = 0;<br />HCRYPTPROV hCryptProv = NULL;</p><p>if( !CryptAcquireContext(&nbsp; &nbsp; &amp;hCryptProv, NULL, MYPROV, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT | CRYPT_SILENT))<br />{<br />&nbsp; &nbsp; dwError = GetLastError();<br />&nbsp; &nbsp; &nbsp; &nbsp; return;<br />}</p><p>if( !CryptSetProvParam(hCryptProv, PP_KEYEXCHANGE_PIN, pin, NULL))<br />{<br />&nbsp; &nbsp; &nbsp; &nbsp;dwError = GetLastError() ; //Ошибка с кодом 13<br />}</p><p>Почему возникает ошибка?</p></blockquote></div><p>Перед вызовом CryptSetProvParam(hCryptProv, PP_KEYEXCHANGE_PIN, pin, NULL) надо вызвать CryptSetProvParam с параметром PP_RTCSP_CURRENT_READER или PP_SMARTCARD_READER, указав имя ридера, на который надо залогиниться.</p>]]></content>
			<author>
				<name><![CDATA[Vladimir Ivanov]]></name>
				<uri>https://forum.rutoken.ru/user/179/</uri>
			</author>
			<updated>2015-04-25T12:47:46Z</updated>
			<id>https://forum.rutoken.ru/post/8266/#p8266</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/8261/#p8261" />
			<content type="html"><![CDATA[<p>Здравствуйте,</p><p>По этой ссылке <a href="https://forum.rutoken.ru/post/3582/#p3582">https://forum.rutoken.ru/post/3582/#p3582</a> вы пишете:<br />На нашем сайте выложена новая версия драйверов Рутокен&nbsp; v. 2.81.00.0424<br />Доработан криптопровайдер. Реализована возможность работы без отображения пользовательского интерфейса.</p><p>Имею: <br />RuToken S с драйверами 2.100.00.0542, <br />Windows 2008 R2.</p><br /><p>Вызываю:</p><p>#define MYPROV TEXT(&quot;Aktiv Rutoken CSP v1.0&quot;)<br />const BYTE pin[] = {0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x00};<br />DWORD dwError = 0;<br />HCRYPTPROV hCryptProv = NULL;</p><p>if( !CryptAcquireContext(&nbsp; &nbsp; &amp;hCryptProv, NULL, MYPROV, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT | CRYPT_SILENT))<br />{<br />&nbsp; &nbsp; dwError = GetLastError();<br />&nbsp; &nbsp; &nbsp; &nbsp; return;<br />}</p><p>if( !CryptSetProvParam(hCryptProv, PP_KEYEXCHANGE_PIN, pin, NULL))<br />{<br />&nbsp; &nbsp; &nbsp; &nbsp;dwError = GetLastError() ; //Ошибка с кодом 13<br />}</p><p>Почему возникает ошибка?</p>]]></content>
			<author>
				<name><![CDATA[Spok]]></name>
				<uri>https://forum.rutoken.ru/user/9757/</uri>
			</author>
			<updated>2015-04-24T13:24:26Z</updated>
			<id>https://forum.rutoken.ru/post/8261/#p8261</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1963/#p1963" />
			<content type="html"><![CDATA[<p>Какую техническую документацию Вы имеете в виду?<br />Описание функций CSP есть в MSDN, это криптографический интерфейс CryptoAPI 2.0.<br />Aktiv Rutoken CSP соответствует этому интерфейсу.</p>]]></content>
			<author>
				<name><![CDATA[MKurskiy]]></name>
				<uri>https://forum.rutoken.ru/user/17/</uri>
			</author>
			<updated>2009-08-14T13:12:36Z</updated>
			<id>https://forum.rutoken.ru/post/1963/#p1963</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1962/#p1962" />
			<content type="html"><![CDATA[<p>А существует ли техническая документация с описанием всех процедур/функций, вы можете её предоставить?</p>]]></content>
			<author>
				<name><![CDATA[AlexeyG]]></name>
				<uri>https://forum.rutoken.ru/user/6644/</uri>
			</author>
			<updated>2009-08-14T12:50:54Z</updated>
			<id>https://forum.rutoken.ru/post/1962/#p1962</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1959/#p1959" />
			<content type="html"><![CDATA[<p>К сожалению, не могу ответить на этот ворпос.</p>]]></content>
			<author>
				<name><![CDATA[MKurskiy]]></name>
				<uri>https://forum.rutoken.ru/user/17/</uri>
			</author>
			<updated>2009-08-13T12:18:45Z</updated>
			<id>https://forum.rutoken.ru/post/1959/#p1959</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1958/#p1958" />
			<content type="html"><![CDATA[<p>А когда примерно будет реализован этот функционал на уровне вашего API?</p>]]></content>
			<author>
				<name><![CDATA[Bolat]]></name>
				<uri>https://forum.rutoken.ru/user/401/</uri>
			</author>
			<updated>2009-08-13T10:01:24Z</updated>
			<id>https://forum.rutoken.ru/post/1958/#p1958</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1957/#p1957" />
			<content type="html"><![CDATA[<p>Нет, в данном случае кэширование происходить стандартными средствами не должно.<br />Т.е. Outlook не вызывает функцию CryptSetProvParam с флагом PP_SIGNATURE_PIN или PP_KEYEXCHANGE_PIN, алгоритм работы предусматривает, что пользователь будет вводить PIN при подписании каждого письма.</p><p>Однако можно сделать кэширование пин-кода на уровне нашего API, которое используется Aktiv Rutoken CSP. Это предмет будущих разработок. Этот функционал обязательно будет реализован.</p><p>Сейчас кэширование реализовано только в CSP.<br />Алгоритм работы такой:<br />1. Для кэширования пин-кода приложение должно вызвать CryptSetProvParam с флагом PP_SIGNATURE_PIN или PP_KEYEXCHANGE_PIN, и в pbData передать пин-код.<br />2. Сброс закэшированного пин-кода осуществляется вызовом той же функции с pbData == NULL, либо по отключению Rutoken.</p><p>До сброса пин-кода можно вызывать CryptReleaseContext, CryptAcquireContext и любые другие функции. До явного сброса пин-кода, он не будет запрашиваться у пользователя, и будет использован закэшированный.</p>]]></content>
			<author>
				<name><![CDATA[MKurskiy]]></name>
				<uri>https://forum.rutoken.ru/user/17/</uri>
			</author>
			<updated>2009-08-13T08:24:36Z</updated>
			<id>https://forum.rutoken.ru/post/1957/#p1957</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1956/#p1956" />
			<content type="html"><![CDATA[<p>А как проверить кэшируется PIN код или нет?<br />В OUTLOOK когда я подписываю несколько писем поочереди у меня на каждом письме запрашивает PIN код.<br />При этом я приложение не закрываю. Должно ли кэшироваться в данном случае?</p>]]></content>
			<author>
				<name><![CDATA[Bolat]]></name>
				<uri>https://forum.rutoken.ru/user/401/</uri>
			</author>
			<updated>2009-08-13T05:18:57Z</updated>
			<id>https://forum.rutoken.ru/post/1956/#p1956</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1952/#p1952" />
			<content type="html"><![CDATA[<p>Да, так и должно быть.<br />Дата сборки текущей релизной версии драйверов 16.04.2008. Подписан драйвер был 01.07.2008.<br />Драйвер долгое время не требовал изменений. Очередная версия будет выпущена скоро, всвязи с выходом Windows 7.</p>]]></content>
			<author>
				<name><![CDATA[MKurskiy]]></name>
				<uri>https://forum.rutoken.ru/user/17/</uri>
			</author>
			<updated>2009-08-11T06:51:20Z</updated>
			<id>https://forum.rutoken.ru/post/1952/#p1952</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1951/#p1951" />
			<content type="html"><![CDATA[<p>Я так и сделал, удалил через панель управления старые драйвера, перегрузил компьютер, поставил новыую бета версию, и снова перегрузил.<br />Дата изменения файлов в директории C:\WINDOWS\system32\Aktiv Co\rtUSB - 2008 года, так и должно быть?</p>]]></content>
			<author>
				<name><![CDATA[Bolat]]></name>
				<uri>https://forum.rutoken.ru/user/401/</uri>
			</author>
			<updated>2009-08-11T05:18:59Z</updated>
			<id>https://forum.rutoken.ru/post/1951/#p1951</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CryptoAPI: Как программно установить PIN-код]]></title>
			<link rel="alternate" href="https://forum.rutoken.ru/post/1947/#p1947" />
			<content type="html"><![CDATA[<p>Утилита SetupDrv больше не используется.<br />Удалите драйвера из апплета панели управления, и установите заново.<br />Если потребуется перезагрузка - дистрибутив об этом уведомит.</p>]]></content>
			<author>
				<name><![CDATA[MKurskiy]]></name>
				<uri>https://forum.rutoken.ru/user/17/</uri>
			</author>
			<updated>2009-08-07T15:27:36Z</updated>
			<id>https://forum.rutoken.ru/post/1947/#p1947</id>
		</entry>
</feed>
