<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум Рутокен &mdash; Crypto API]]></title>
		<link>https://forum.rutoken.ru/topic/1303/</link>
		<atom:link href="https://forum.rutoken.ru/feed/rss/topic/1303" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Crypto API».]]></description>
		<lastBuildDate>Fri, 04 Jun 2010 19:34:30 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2778/#p2778</link>
			<description><![CDATA[<p>Да действительно дело было в параметре CRYPT_VERIFYCONTEXT. Без него в функции CryptAcquireContext все получилось.</p>]]></description>
			<author><![CDATA[null@example.com (GoodMind)]]></author>
			<pubDate>Fri, 04 Jun 2010 19:34:30 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2778/#p2778</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2775/#p2775</link>
			<description><![CDATA[<p>CRYPT_VERIFYCONTEXT в нашем CSP не позволяет использовать только закрытый ключ (как требует документация MSDN).<br />Если CryptAcquireContext был вызван с флагом CRYPT_VERIFYCONTEXT, и был получен хендл реального контейнера, то можно получить и хендл ключа, и сертификат.<br />Ограничения могут быть только при использовании CryptSignHash и т.д.</p><p>В других CSP это может быть не так.</p>]]></description>
			<author><![CDATA[null@example.com (MKurskiy)]]></author>
			<pubDate>Fri, 04 Jun 2010 12:19:17 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2775/#p2775</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2774/#p2774</link>
			<description><![CDATA[<p>Сертификат в контейнере есть, его можно посмотреть через консоль КриптоПро CSP</p>]]></description>
			<author><![CDATA[null@example.com (GoodMind)]]></author>
			<pubDate>Fri, 04 Jun 2010 12:17:20 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2774/#p2774</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2772/#p2772</link>
			<description><![CDATA[<p>Я на некоторое время оставил этот проект и уже не все помню, но, по моему, есть некоторые особенности использования&nbsp; CryptAcquireContext(... CRYPT_VERIFYCONTEXT ...); в части использования параметра CRYPT_VERIFYCONTEXT. Я работал с сертификатами, созданными службой сертификации Windows</p>]]></description>
			<author><![CDATA[null@example.com (Алексей Зикеев)]]></author>
			<pubDate>Fri, 04 Jun 2010 12:12:33 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2772/#p2772</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2771/#p2771</link>
			<description><![CDATA[<p>Сертификат, в рамках CryptoAPI, это свойство ключевой пары - KP_CERTIFICATE.<br />Если в контейнере нет ключей, то контейнер пуст - в нем не может быть сертификата.<br />Это возможно только в том случае, если ключ либо не был сгенерирован, либо не был записан в контейнер.</p>]]></description>
			<author><![CDATA[null@example.com (MKurskiy)]]></author>
			<pubDate>Fri, 04 Jun 2010 12:11:30 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2771/#p2771</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2769/#p2769</link>
			<description><![CDATA[<p>Да, ошибка при обоих значениях AT_KEYEXCHANGE и AT_SIGNATURE. <br />Как тогда можно получить сертификат (имя ключевого контейнера известно)?</p>]]></description>
			<author><![CDATA[null@example.com (GoodMind)]]></author>
			<pubDate>Fri, 04 Jun 2010 12:00:35 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2769/#p2769</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2768/#p2768</link>
			<description><![CDATA[<p>Это зависит от свойств ключевой пары в контейнере.<br />Тип ключевой пары контейнера задается на этапе его создания, либо указан в шаблоне сертификата.<br />Возможных варианта два: AT_KEYEXCHANGE и AT_SIGNATURE.<br />Если при обоих значениях выдается ошибка NTE_NO_KEY, значит в контейнере отсутствует ключевая пара - она либо не сгенерирована, либо не записана в контейнер.</p>]]></description>
			<author><![CDATA[null@example.com (MKurskiy)]]></author>
			<pubDate>Fri, 04 Jun 2010 11:55:42 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2768/#p2768</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2767/#p2767</link>
			<description><![CDATA[<p>Здравствуйте.</p><p>Я никак не могу получить хендл ключевой пары в CryptGetUserKey - что нужно указать в параметре dwKeySpec?<br />Что бы я не указывал, ответ один - NTE_NO_KEY (The key requested by the dwKeySpec parameter does not exist.)</p>]]></description>
			<author><![CDATA[null@example.com (GoodMind)]]></author>
			<pubDate>Fri, 04 Jun 2010 11:45:11 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2767/#p2767</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2547/#p2547</link>
			<description><![CDATA[<p>Все получилось, спасибо большое !</p>]]></description>
			<author><![CDATA[null@example.com (Алексей Зикеев)]]></author>
			<pubDate>Tue, 09 Mar 2010 09:27:22 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2547/#p2547</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2528/#p2528</link>
			<description><![CDATA[<p>Спасибо большое, буду пробовать ! Я шифрую от 10 до 24 байт, так что нет смысла связываться с сессионными ключами.</p>]]></description>
			<author><![CDATA[null@example.com (Алексей Зикеев)]]></author>
			<pubDate>Thu, 25 Feb 2010 13:25:12 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2528/#p2528</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2527/#p2527</link>
			<description><![CDATA[<p>Это можно сделать по средствам CSP.<br />1. Перебрать доступные контейнеры с подключенного Rutoken:<br />&nbsp; &nbsp; 1.1 CryptAcquireContext(... CRYPT_VERIFYCONTEXT ...);<br />&nbsp; &nbsp; 1.2 CryptGetProvParam(... PP_ENUMCONTAINERS...);<br />&nbsp; &nbsp; 1.3 Для каждого контейнера получить хендл ключевой пары - CryptGetUserKey;<br />&nbsp; &nbsp; 1.4 Получить у ключа свойство сертификата - CryptGetKeyParam(... KP_CERTIFICATE...);<br />2. Создать контекст из данных сертификата - CertCreateCertificateContext.<br />3. Получить из контекста сертификата необходимые свойства - CertGetCertificateContextProperty, сравнить с имеющимися.<br />4. Расшифровать данные по средствам CryptAPI и CSP.</p><p>Единственно, не рекомендую Вам использовать открытый ключ ассиметричного алгоритма для шифрования конечных данных - это очень медленная операция по сравнению с симетричным шифрованием.<br />Эфективнее создать по средствам CSP сессионный ключ, зашифровать им данные, а потом выгрузить его из CSP в зашифрованном на открытом ключе RSA, и сохранить рядом с зашифрованными данными. И в открытом виде положить рядом информацию о владельце сертификата.<br />О использовании сессионных ключей лучше посмотреть здесь: <a href="http://msdn.microsoft.com/en-us/library/aa382016(VS.85).aspx">http://msdn.microsoft.com/en-us/library … S.85).aspx</a></p>]]></description>
			<author><![CDATA[null@example.com (MKurskiy)]]></author>
			<pubDate>Thu, 25 Feb 2010 13:12:37 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2527/#p2527</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2526/#p2526</link>
			<description><![CDATA[<p>Может сохранять с зашифрованными данными открытые ключи и сравнивать его с экспортированным с токена посредствам Active CSP ?</p>]]></description>
			<author><![CDATA[null@example.com (Алексей Зикеев)]]></author>
			<pubDate>Thu, 25 Feb 2010 12:28:43 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2526/#p2526</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2525/#p2525</link>
			<description><![CDATA[<p>Для каждого пользователя на сервере сохранены данные, зашифрованные его открытым ключом. Кроме того сохранена информация о Issuer и SerialNumber из того сертификата, который использовался для каждого набора зашифрованных данных. При запуске моей программы необходимо установить чей токен воткнут, и расшифровать соответствующие этому пользователю данные.&nbsp; собственно задача - понять, чьи данные отправлять на расшифровку.</p>]]></description>
			<author><![CDATA[null@example.com (Алексей Зикеев)]]></author>
			<pubDate>Thu, 25 Feb 2010 12:26:45 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2525/#p2525</guid>
		</item>
		<item>
			<title><![CDATA[Re: Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2524/#p2524</link>
			<description><![CDATA[<p>Добрый день.<br />Алексей, подскажите, какая перед Вами стоит задача? что Вам необходимо получить в итоге?</p><p>Дело в том, что функция CertOpenStore работает с локальным хранилищем.<br />В рамках интерфейса CryptoAPI в драйверах Rutoken реализован интерфейс Cryptographic Service Provider (CSP), с помощью которого можно получить сертификат как свойство ключевой пары, и зарегестрировать его в локальном хранилище, в нужном разделе.<br />Кроме того, сертификаты регистрируются в локальном хранилище автоматически после подключения Rutoken по средствам Certificate Propogation Service.</p>]]></description>
			<author><![CDATA[null@example.com (MKurskiy)]]></author>
			<pubDate>Thu, 25 Feb 2010 12:10:45 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2524/#p2524</guid>
		</item>
		<item>
			<title><![CDATA[Crypto API]]></title>
			<link>https://forum.rutoken.ru/post/2520/#p2520</link>
			<description><![CDATA[<p>Добрый день ! Подскажите ,пожалуйста, как средствами CryptoApi открыть сертификат с RuToken ? Т.е. хочется сделать CertOpenStore, но чтобы она открыла именно токен, находящийся на данный момент в компьютере.</p>]]></description>
			<author><![CDATA[null@example.com (Алексей Зикеев)]]></author>
			<pubDate>Wed, 24 Feb 2010 08:58:21 +0000</pubDate>
			<guid>https://forum.rutoken.ru/post/2520/#p2520</guid>
		</item>
	</channel>
</rss>
