информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеСтрашный баг в WindowsАтака на Internet
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Имена и типы криптопровайдеров Crypto API 24.12.06 00:30  
Автор: makeworld Статус: Member
<"чистая" ссылка>
Как соотносятся имена и типы криптопровайдеров? - Каждый криптопровайдер с конкретным именем может поддерживать несколько типов?

	if(CryptAcquireContext(
            &hCryptProv,       
            NULL,             
            NULL,               
            PROV_RSA_AES,
            NULL))     
	{
		printf("A CSP has been acquired. \n");
	}

---

при вызове функции, имя криптопровайдера (третий параметр) не указано. все работает нормально, как я понимаю из-за того, что происходит поиск дефолтового, поддерживающего тип PROV_RSA_AES.

если все же указать имя криптопровайдера, любое из этого списка:
http://msdn2.microsoft.com/en-us/library/aa380243.aspx
в то числе MS_ENH_RSA_AES_PROV и MS_ENHANCED_PROV - контекст создать не удается, т.е. функция возвращает FALSE.

И еще, создав контекст криптопровайдера с типом PROV_RSA_AES, я потом могу сгенерировать ключ DES или 3DES, хотя по идее у этого криптопровайдера нет поддержки этих алгоритмов.

Как все это можно обьяснить?
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach