Поделиться через


Тест сертификации minidriver смарт-карт

Этот автоматизированный тест проверяет работу смарт-карта мини-накопителей и связанных смарт-карт.

Смарт-карта мини-накопители — это программные библиотеки DLL, которые загружаются поставщиком базовых служб шифрования Майкрософт (Base CSP) и поставщиком хранилища ключей смарт-карт Майкрософт (SCKSP), чтобы обеспечить доступ к функциональным возможностям связанных смарт-карта. Для поставщиков интеллектуальных карта эти мини-накопители предоставляют более простой способ реализации функций интеллектуального карта в операционных системах Microsoft Windows, чем при разработке традиционного поставщика служб шифрования (CSP). (Исторически смарт-карта мини-накопители также назывались модулями смарт-карта или модулями смарт-карт карта.)

Этот тест выполняет проверку функциональности, нагрузки, производительности и надежности в интеллектуальном карта мини-накопителе. Он вызывает Microsoft BaseCSP и поставщик хранилища ключей смарт-карт Майкрософт и напрямую обращается к методам карта minidriver для проверки правильности работы карта мини-накопителя и связанного карта. Он также использует Resource Manager смарт-карты для прямого доступа к карта.

Сведения о тесте

   
Характеристики
  • Device.Input.SmartCardMiniDriver.SupportMultipleInstancesOnASystem
  • Device.Input.SmartCardMiniDriver.DoNotStopWhenResourcesAreUnavailable
  • Device.Input.SmartCardMiniDriver.SpecsAndCertifications
Платформы
  • Windows 10, клиентские выпуски (x86)
  • Windows 10, клиентские выпуски (x64)
  • Windows Server 2016 (x64)
  • Windows 10, клиентские выпуски (Arm64)
Поддерживаемые выпуски
  • Windows 10
  • Windows 10 версии 1511
  • Windows 10, версия 1607
  • Windows 10 версии 1703
  • Windows 10 версии 1709
  • Windows 10 версии 1803
  • Windows 10, версия 1809
  • Windows 10 версии 1903
  • Следующее обновление до Windows 10
Ожидаемое время выполнения (в минутах) 180
Категория Совместимость
Время ожидания (в минутах) 10800
Требуется перезагрузка false
Требуется специальная конфигурация false
Тип automatic

 

Дополнительная документация

Тесты в этой области функций могут содержать дополнительную документацию, включая предварительные требования, сведения о настройке и устранении неполадок, которые можно найти в следующих разделах:

Запуск теста

Перед запуском теста выполните настройку теста, как описано в разделе Требования к тестированию: Предварительные требования к тестированию чтения смарт-карт.

Кроме того, для этого теста требуется следующее оборудование.

  • Модули чтения смарт-карта, сертифицированные по WHQL

Устранение неполадок

Общие сведения об устранении неполадок при тестировании HLK см. в статье Устранение неполадок тестов HLK в Windows.

Сведения об устранении неполадок см. в разделе Устранение неполадок с тестированием Device.Input.

Кроме того, сведения об устранении неполадок, связанных с интеллектуальными карта, см. на следующих веб-сайтах:

Дополнительные сведения

Этот тест находится в Windows HLK Studio как единое задание, хотя вы также можете запустить средство за пределами среды Windows HLK Studio. Скопируйте двоичные файлы из расположения, указанного ниже, в каталог по своему выбору, и оттуда можно запустить средство тестирования. Кроме того, может потребоваться скопировать общую библиотеку Wttlog.dll в каталог выполнения. Эта библиотека DLL устанавливается вместе с клиентским приложением Windows HLK.

Запуск средства тестирования за пределами Windows HLK обеспечивает большую гибкость по сравнению с DTM, так как вы можете выбирать тесты по отдельности. Дополнительные сведения см. в описании командной строки далее в этом документе.

Если вы запускаете тест из Windows HLK, вам потребуется только один клиентский компьютер. В документации windows HLK объясняется, как настроить контроллер Windows HLK, Windows HLK Studio и клиентское приложение Windows HLK на тестовом компьютере.

Приведенные ниже сведения относятся к компьютеру, на котором выполняется тест, независимо от того, выполняете ли вы тесты в среде HLK Windows или за ее пределами.

Чтобы запустить тест, на компьютере должен быть установлен интеллектуальный карта мини-накопитель и зарегистрирован в реестре. (Кроме того, дополнительные сведения о сертификации в 64-разрядной версии операционной системы см. в следующем разделе, "Сертификация в 64-разрядной версии операционной системы"). Если устройство интеллектуального карта имеет форм-фактор ISO 7816 ID-1, необходимо использовать для сертификации сертифицированное интеллектуальное карта средство чтения WHQL, совместимое с PC/SC.

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

Выполняемые тесты зависят от возможностей интеллектуального карта мини-накопителя. Возможности смарт-карта мини-драйвера можно определить для средства тестирования в определенном файле конфигурации с именем cmck_config.xml, который необходимо поместить в каталог C:\SmartCardMinidriverTest. Ниже приведены описание этого файла и пример.

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

Значения ключей по умолчанию:

  • Пин-код пользователя по умолчанию — 0000.

  • Ключ администрирования по умолчанию для запроса или ответа — это все нули.

Сертификация в 64-разрядной версии операционной системы

При сертификации в 64-разрядной версии операционной системы в системе также должна быть установлена 32-разрядная версия библиотеки DLL мини-драйвера. Библиотеку DLL можно поместить в подкаталог %systemroot%\syswow64. Необходимо поместить записи реестра для 32-разрядной версии библиотеки DLL в HKEY_LOCAL_MACHINE\SOFTWARE\wow6432Node\Microsoft\Cryptography\Calais\SmartCards.

При выполнении 32-разрядного приложения, использующего мини-диск, загружается 32-разрядная версия мини-драйвера.

INF-файл для мини-драйвера интеллектуального карта

При отправке сертификации необходимо предоставить INF-файл. Ниже приведен пример INF-файла для архитектуры x86:

[Version]
Signature="$Windows NT$"
Class=SmartCard
ClassGuid={990A2BD7-E738-46c7-B26F-1CF8FB9F1391}
Provider=%ProviderName%
CatalogFile=delta.cat
DriverVer=06/21/2006,6.1.6473.1 

[DefaultInstall]
CopyFiles=System32_CopyFiles
AddReg=MiniDriver_AddReg

[Manufacturer]
%ProviderName%=CompanyName,NTx86,NTx86.6.1 

[CompanyName.NTx86]
%ScSuperCardDeviceName%=ScSuperCard_Install,SCFILTER\CID_51FF0800 

[CompanyName.NTx86.6.1]
%ScSuperCardDeviceName%=ScSuperCard61_Install,SCFILTER\CID_51FF0800 

[SourceDisksFiles]
supercm.dll=1

[SourceDisksNames]
1 = %MediaDescription% 

[ScSuperCard_Install.NT]
CopyFiles=System32_CopyFiles
AddReg=MiniDriver_AddReg 

[ScSuperCard61_Install.NT]
CopyFiles=System32_CopyFiles
AddReg=MiniDriver_AddReg 

[SCSuperCard61_Install.NT.Services]
Include=umpass.infNeeds=UmPass.Services

[UMPassService_Install]
DisplayName=%umpass.SVCDESC%

; Friendly Name of the Service
ServiceType    = 1                    ;SERVICE_KERNEL_DRIVER
StartType      = 3                    ;SERVICE_DEMAND_START
ErrorControl   = 1                    ;SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\umpass.sys
LoadOrderGroup = Extended Base

[System32_CopyFiles]
supercm.dll

[MiniDriver_AddReg]
HKLM,%SmartCardName%,"ATR",0x00000001,3b,04,51,ff,08,00
HKLM,%SmartCardName%,"ATRMask",0x00000001,ff,ff,ff,ff,ff,ff
HKLM,%SmartCardName%,"Crypto Provider",0x00000000,"Microsoft Base Smart Card Crypto Provider"
HKLM,%SmartCardName%,"Smart Card Key Storage Provider",0x00000000,"Microsoft Smart Card Key Storage Provider"
HKLM,%SmartCardName%,"80000001",0x00000000,%SmartCardCardModule%

[DestinationDirs]
System32_CopyFiles=10,system32

[FriendlyName]
ScFriendlyName="Super Card"
; =================== Generic ==================================

[Strings]
ProviderName="ACME"
MediaDescription="Super Card Mini Driver Installation Disk"
SCSuperCardDeviceName="Super Card Mini-driver"
SmartCardName="SOFTWARE\Microsoft\Cryptography\Calais\SmartCards\Super Card"
SmartCardCardModule="supercm.dll"
umpass.SVCDESC = "Microsoft UMPass Driver" Inf file sample for x64 architecture: [Version]
Signature="$Windows NT$"
Class=SmartCard
ClassGuid={990A2BD7-E738-46c7-B26F-1CF8FB9F1391}
Provider=%ProviderName%
CatalogFile=delta.cat
DriverVer=06/21/2006,6.1.6473.1 

[DefaultInstall]
CopyFiles=System32_CopyFiles
CopyFiles=Syswow64_CopyFiles
AddReg=MiniDriver_AddReg 

[Manufacturer]
%ProviderName%=CompanyName,NTamd64,NTamd64.6.1 

[CompanyName.NTamd64]
%ScSuperCardDeviceName%=ScSuperCard_Install,SCFILTER\CID_51FF0800 

[CompanyName.NTamd64.6.1]
%ScSuperCardDeviceName%=ScSuperCard61_Install,SCFILTER\CID_51FF0800 

[SourceDisksFiles]
supercm64.dll=1
supercm.dll=1

[SourceDisksNames]
1 = %MediaDescription% 

[ScSuperCard_Install.NT]
CopyFiles=System32_CopyFiles
CopyFiles=Syswow64_CopyFiles
AddReg=MiniDriver_AddReg 

[ScSuperCard61_Install.NT]
CopyFiles=System32_CopyFiles
CopyFiles=Syswow64_CopyFiles
AddReg=MiniDriver_AddReg 

[SCSuperCard61_Install.NT.Services]
Include=umpass.inf
Needs=UmPass.Services

[UMPassService_Install]
DisplayName    = %umpass.SVCDESC%

; Friendly Name of the Service
ServiceType    = 1                    ;SERVICE_KERNEL_DRIVER
StartType      = 3                    ;SERVICE_DEMAND_START
ErrorControl   = 1                    ;SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\umpass.sys
LoadOrderGroup = Extended Base

[System32_CopyFiles]
supercm.dll,supercm64.dll

[Syswow64_CopyFiles]
supercm.dll

[MiniDriver_AddReg]
HKLM,%SmartCardName%,"ATR",0x00000001,3b,04,51,ff,08,00
HKLM,%SmartCardName%,"ATRMask",0x00000001,ff,ff,ff,ff,ff,ff
HKLM,%SmartCardName%,"Crypto Provider",0x00000000,"Microsoft Base Smart Card Crypto Provider"
HKLM, %SmartCardName%,"Smart Card Key Storage Provider",0x00000000,"Microsoft Smart Card Key Storage Provider"
HKLM,%SmartCardName%,"80000001",0x00000000,%SmartCardCardModule%
HKLM,%SmartCardNameWOW64%,"ATR",0x00000001,3b,04,51,ff,08,00
HKLM,%SmartCardNameWOW64%,"ATRMask",0x00000001,ff,ff,ff,ff,ff,ff
HKLM,%SmartCardNameWOW64%,"Crypto Provider",0x00000000,"Microsoft Base Smart Card Crypto Provider"
HKLM,%SmartCardNameWOW64%,"Smart Card Key Storage Provider",0x00000000,"Microsoft Smart Card Key Storage Provider"
HKLM,%SmartCardNameWOW64%,"80000001",0x00000000,%SmartCardCardModule% 

[DestinationDirs]
System32_CopyFiles=10,system32
Syswow64_CopyFiles=10,syswow64 

[FriendlyName]
ScFriendlyName="Super Card" 
; =================== Generic ==================================

[Strings]
ProviderName="ACME"
MediaDescription="Super Card Mini Driver Installation Disk"
SCSuperCardDeviceName="Super Card Mini-driver"
SmartCardName="SOFTWARE\Microsoft\Cryptography\Calais\SmartCards\Super Card"
SmartCardNameWOW64="SOFTWARE\Wow6432Node\Microsoft\Cryptography\Calais\SmartCards\Microsoft Virtual Card"
SmartCardCardModule="supercm.dll"
SmartCardCardModule64="supercm64.dll"
umpass.SVCDESC = "Microsoft UMPass Driver"

Описание файла конфигурации minidriver смарт-карты (cmck_config.xml)

CMCK_config.xml состоит из следующих разделов для версий V5, V6 и V7 в зависимости от версий V5,V6/V7, поддерживаемых мини-накопителем. Обратите внимание: ключевые слова V5,V6/V7 имеют верхний регистр.

<CMCKConfig>
  <V5>...</V5>
  <V6>...</V6>
  <V7>...</V7>
</CMCKConfig>

Каждый раздел заполняется XML-тегами, описанными ниже. Обратите внимание, что в каждом разделе могут быть разные параметры, которые зависят от того, что мини-диск поддерживает для этих версий.

В каждом разделе файла конфигурации можно задать следующие значения (в структуре, как показано ниже):

  • <Версия> — это обязательное поле, определяющее номер версии файла конфигурации. В настоящее время ожидаемой версией является "2" XML-файла конфигурации CMCK для разделов версии 6 и 7 и "1" для раздела V5.

  • <CardDefaults> содержит параметры, которые используются как для запуска сертификации, так и для обычных тестовых запусков.

    • <DefaultPins — закрепление> значений, которые необходимо использовать для функций, связанных с проверкой подлинности

      <PinEntry><RoleID> — допустимое значение: 1–7

      <Тип> PinEntry><— допустимое значение: "AlphanumericPinType", "ChallengeResponsePinType", "EmptyPinType", "ExternalPinType"

      <PinEntry><Value> — список шестнадцатеричных байтов маркера, разделенных пробелами. Значение по умолчанию: "0x30 0x30 0x30 0x30" (то есть "0000")

      <PinEntry><Blocking> [BOOLEAN] — указывает, поддерживает ли карта блокировку карта для этого типа пользователей, если неправильный пин-код отображается слишком много раз. Значение по умолчанию "True".

      <PinEntry><Linking> [BOOLEAN] — указывает, связан ли этот контакт с другим контактом, т. е. изменение одного контакта приведет к изменению другого. Значение по умолчанию "False".

      <PinEntry><AllowZeroLength> [BOOLEAN] — указывает, допускает ли карта пустое закрепление. Значение по умолчанию "False".

  • <CardSupports> — определяет необязательные функции, поддерживаемые карта или карта мини-накопителем, например алгоритмы, типы ключей и т. д. Тест будет охватывать поддерживаемые функции.

    1. <MinimumVersion> [DWORD] содержит минимальную версию структуры контекста CARD_DATA, которую поддерживает мини-накопитель карта. Дополнительные сведения см. в спецификации мини-драйвера смарт-карт. Допустимое значение : "4", "5", "6", "7".

    2. <CurrentVersion> [DWORD] содержит версию структуры контекста CARD_DATA, для которой был разработан мини-накопитель карта. Дополнительные сведения см. в спецификации мини-драйвера смарт-карт. Допустимое значение : "5", "6", "7".

    3. <LoadUnderCAPI> [BOOLEAN] имеет значение True, если карта minidriver поддерживает загрузку в CAPI, в противном случае — False.

    4. <LoadUnderCNG> [BOOLEAN] имеет значение True, если мини-накопитель карта поддерживает загрузку под CNG, в противном случае — false. Обратите внимание, что по крайней мере один из двух атрибутов должен иметь значение True (CAPI или CNG).

    5. <Параметр KeyImport> [BOOLEAN] имеет значение True, если карта minidriver поддерживает импорт ключа, а в противном случае — false.

    6. <KeyTypes> содержит разделенный пробелами список типов ключей, поддерживаемых мини-накопителем карта. Допустимые значения: "AT_ECDH_P256", "AT_ECDH_P384", "AT_ECDH_P521", "AT_ECDSA_P256", "AT_ECDSA_P384" или "AT_ECDSA_P521" для ключей ECC и "AT_SIGNATURE" или "AT_KEYEXCHANGE" для ключей RSA. <OnCardPadding> [BOOLEAN] имеет значение True, если заполнение по карта поддерживается, в противном случае — false.

    7. <PaddingAlgorithms> содержит разделенный пробелами список поддерживаемых алгоритмов заполнения на карта (допустимо, только если <OnCardPadding> имеет значение True). Допустимые значения: "CARD_PADDING_NONE", "CARD_PADDING_PKCS1" и "CARD_PADDING_PSS".

    8. <SignHashAlgorithms> содержит разделенный пробелами список хэш-алгоритмов, которые мини-накопитель карта поддерживает для подписывания (aiHashAlg в структуре CARD_SIGNING_INFO). Допустимые значения: "CALG_MD2", "CALG_MD4", "CALG_MD5", "CALG_SHA", "CALG_SHA1", "CALG_SHA_256", CALG_SHA_384" и CALG_SHA_512". Дополнительные сведения см. в спецификации мини-накопителя смарт-карт.

    9. <SignHashFlags> содержит разделенный пробелами список флагов CryptSignHash, поддерживаемых мини-накопителем карта. Допустимые значения: "CRYPT_NOHASHOID" и "CRYPT_X931_FORMAT".

    10. <SignReturnBufferSize> [BOOLEAN] имеет значение True, если мини-накопитель карта поддерживает значение CARD_BUFFER_SIZE_ONLY для dwSigningFlags в структуре CARD_SIGNING_INFO. Дополнительные сведения см. в спецификации мини-драйвера смарт-карт.

    11. <KDFTypes> содержит разделенный пробелами список функций, производных от ключей, которые поддерживает карта minidriver. Допустимые значения: "HASH", "HMAC", "TLS_PRF" и "SP800_56A_CONCAT". Дополнительные сведения см. в спецификации мини-драйвера смарт-карт.

    12. <KDFHashAlgorithms> содержит разделенный пробелами список хэш-алгоритмов, которые карта minidriver поддерживает для функций наследования ключей (KDF). Дополнительные сведения см. в спецификации мини-накопителя смарт-карт. Допустимые значения определяются в файле заголовка bcrypt.h и являются значениями для BCRYPT_XXXX_ALGORITHM определяет (например, "SHA256" (BCRYPT_SHA256_ALGORITHM) или "MD5" (BCRYPT_MD5_ALGORITHM)).

    13. <Параметр Uses2Key3DES> [BOOLEAN] имеет значение True, если мини-накопитель карта поддерживает только 2 ключа 3DES. Если это значение равно False, это означает, что карта мини-driver использует 3 ключа 3DES по умолчанию. Значение по умолчанию — False.

    14. <KDFHMACFlag> [BOOLEAN] имеет значение True, если мини-накопитель карта поддерживает функцию получения ключа BCRYPT_KDF_HMAC с флагом KDF_USE_SECRET_AS_HMAC_KEY_FLAG (дополнительные сведения см. в документации по шифрованию следующего поколения (CNG) на сайте MSDN CNG). Если это значение равно False, тест предоставит явный ключ HMAC и не установит флаг KDF_USE_SECRET_AS_HMAC_KEY_FLAG для затронутых тестов.

    15. <ChallengePadding>[BOOLEAN] имеет значение True, если возврат карта данных запроса содержит бит заполнения. Значение по умолчанию — False.

    16. <SupportsCardGetChallenge> [BOOLEAN] — значение True, если CM поддерживает API CardGetChallenge (используется для карточек только для чтения).

    17. <SupportsCardAuthenticateChallenge> [BOOLEAN] — значение True, если CM поддерживает API CardAuthenticateChallenge (используется только для чтения карт).

    18. <SupportsCardGetChallengeEx> [BOOLEAN] — значение True, если CM поддерживает API CardGetChallengeEx (используется для карточек только для чтения).

    19. <SupportsCardUnblockPin> [BOOLEAN] — значение True, если CM поддерживает API CardUnblockPin (используется для карточек только для чтения).

    20. <SupportsCardChangeAuthenticator> [BOOLEAN] — значение True, если CM поддерживает API CardChangeAuthenticator (используется для карточек только для чтения).

    21. <SupportsCardChangeAuthenticatorEx> [BOOLEAN] — значение True, если CM поддерживает API CardChangeAuthenticatorEx (используется только для чтения карт).

  • <TestSuiteDefaults> содержит параметры, влияющие только на тестовые запуски. (При выполнении сертификации используются собственные значения по умолчанию.)

    1. <INF> содержит сведения о INF-файле, который используется в PnP смарт-карты.

      • <INFFile> содержит расположение и имя файла INF-файла смарт-карты PnP, который соответствует тестируемой смарт-карточке или мини-driver. Это обязательное требование для всех мини-драйверов, кроме встроенных мини-драйверов класса PIV/GICS.
    2. <Ведение журнала> содержит параметры ведения журнала, которые применяются к тестовых запусков.

      1. <LogFile> содержит расположение и имя xml-файла журнала. Значение по умолчанию — "CMCK_log.xml" (это означает, что файл будет создан в текущем каталоге). Обратите внимание, что файл журнала будет перезаписан.

      2. <LogToConsole> [BOOLEAN] имеет значение True, если журналы будут отображаться в консоли вместе с записью в файл журнала. Значение по умолчанию — True.

      3. <CertifyLogLevel> указывает уровень журнала (0, 1 или 2). 0 означает минимальное ведение журнала, 1 — вход и выход функции журнала, а 2 — полное ведение журнала. Полное ведение журнала всегда используется при выполнении тестов по отдельности и в основном предназначено для разработки. При отправке логотипа рекомендуется задать для уровня журнала значение 0.

Структура файла конфигурации

В следующем примере кода показан пример файла настройки.


<CMCKConfig>
  <V6>
    <Version>2</Version>
    <CardDefaults>
      <DefaultPins>
        <PinEntry>
          <RoleID>1</RoleID>
          <Type>AlphaNumericPinType</Type>
          <Value>0x30 0x30 0x30 0x30</Value>
          <Blocking>True</Blocking>
          <AllowZeroLength>False</AllowZeroLength>
        </PinEntry>
        <PinEntry> 
          <RoleID>2</RoleID>
          <Type>ChallengeResponsePinType</Type>
          <Value>0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00</Value>
          <Blocking>True</Blocking>
          <AllowZeroLength>False</AllowZeroLength>
        </PinEntry>
        <PinEntry>
          <RoleID>3</RoleID>
          <Type>AlphaNumericPinType</Type>
          <Value>0x30 0x30 0x30 0x30</Value>
          <Blocking>True</Blocking>
          <AllowZeroLength>False</AllowZeroLength>
        </PinEntry>
        <PinEntry>
         <RoleID>4</RoleID>
         <Type>AlphaNumericPinType</Type>
         <Value>0x30 0x30 0x30 0x30</Value>
         <Blocking>True</Blocking>
         <AllowZeroLength>False</AllowZeroLength>
       </PinEntry>
       <PinEntry>
          <RoleID>5</RoleID>
          <Type>AlphaNumericPinType</Type>
          <Value>0x30 0x30 0x30 0x30</Value>
          <Blocking>True</Blocking>
          <AllowZeroLength>False</AllowZeroLength>
       </PinEntry>
       <PinEntry>
         <RoleID>6</RoleID>
         <Type>AlphaNumericPinType</Type>
         <Value>0x30 0x30 0x30 0x30</Value>
         <Blocking>True</Blocking>
         <AllowZeroLength>False</AllowZeroLength>
        </PinEntry>
        <PinEntry>
          <RoleID>7</RoleID>
          <Type>AlphaNumericPinType</Type>
          <Value>0x30 0x30 0x30 0x30</Value>
          <Blocking>True</Blocking>
          <AllowZeroLength>False</AllowZeroLength>
        </PinEntry>
      </DefaultPins>
      <CardSupports>
        <MinimumVersion>4</MinimumVersion>
        <CurrentVersion>6</CurrentVersion>
        <LoadingUnderCAPI>True</LoadingUnderCAPI>
        <LoadingUnderCNG>True</LoadingUnderCNG>
        <KeyImport>True</KeyImport>
        <KeyTypes>AT_SIGNATURE AT_KEYEXCHANGE</KeyTypes>
        <OnCardPadding>False</OnCardPadding>
        <PaddingAlgorithms>CARD_PADDING_PKCS1</PaddingAlgorithms>
        <SignHashAlgorithms>CALG_MD5 CALG_SHA CALG_SHA1 CALG_SHA_256 CALG_SHA_384 CALG_SHA_512</SignHashAlgorithms>
        <SignHashFlags />
        <SignReturnBufferSize>True</SignReturnBufferSize>
        <KDFTypes>HASH</KDFTypes>
        <KDFHashAlgorithms>SHA1 SHA256 SHA384 SHA512</KDFHashAlgorithms>
        <KDFHMACflag>False</KDFHMACflag>
        <SupportsCardGetChallenge>True</SupportsCardGetChallenge>
        <SupportsCardAuthenticateChallenge>True</SupportsCardAuthenticateChallenge>
        <SupportsCardGetChallengeEx>True</SupportsCardGetChallengeEx>
        <SupportsCardUnblockPin>True</SupportsCardUnblockPin>
        <SupportsCardChangeAuthenticator>True</SupportsCardChangeAuthenticator>
        <SupportsCardChangeAuthenticatorEx>True</SupportsCardChangeAuthenticatorEx>
      </CardSupports>
    </CardDefaults>
    <TestSuiteDefaults>
      <INF>
        <INFFile>C:\SmartcardMinidriverTest\minidriver.inf</INFFile>
      </INF>
      <Logging>
        <LogFile>CMCK_log.xml</LogFile>
        <LogToConsole>True</LogToConsole>
      </Logging>
      <TestParams>
        <TestParam>
          <Test>MultiThreaded</Test>
          <Name>t</Name>
          <Value>5</Value>
        </TestParam>
        <TestParam>
          <Test>MultiThreaded</Test>
          <Name>n</Name>
          <Value>5</Value>
        </TestParam>
        <TestParam>
          <Test>NonRepeatingChallenge</Test>
          <Name>n</Name>
          <Value>300</Value>
        </TestParam>
      </TestParams>
    </TestSuiteDefaults>
  </V6>
  <V5>
    <Version>1</Version>
      <CardDefaults>
        <DefaultPins>
          <PinEntry>
            <Type>User</Type>
            <Value>0x30 0x30 0x30 0x30</Value>
            <Blocking>True</Blocking>
            <AllowZeroLength>False</AllowZeroLength>
          </PinEntry>
        </DefaultPins>
        <DefaultKeys>
          <KeyEntry>
            <Type>Admin</Type>
            <Algorithm>3DES</Algorithm>
            <Mode>ECB</Mode>
            <Blocking>True</Blocking>
            <Value>0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00</Value>        </KeyEntry>
        </DefaultKeys>
        <CardSupports>
          <MinimumVersion>4</MinimumVersion>
          <CurrentVersion>6</CurrentVersion>
          <LoadingUnderCAPI>True</LoadingUnderCAPI>
          <LoadingUnderCNG>True</LoadingUnderCNG>
          <KeyImport>True</KeyImport>
          <KeyTypes>AT_SIGNATURE AT_KEYEXCHANGE</KeyTypes>
          <OnCardPadding>False</OnCardPadding>
          <PaddingAlgorithms>CARD_PADDING_NONE</PaddingAlgorithms>
          <SignHashAlgorithms>CALG_MD5 CALG_SHA CALG_SHA1</SignHashAlgorithms>
          <SignHashFlags>CRYPT_NOHASHOID</SignHashFlags>
          <SignReturnBufferSize>False</SignReturnBufferSize>
          <KDFTypes>HASH</KDFTypes>
          <KDFHashAlgorithms>SHA1 SHA256 SHA384 SHA512</KDFHashAlgorithms>
          <KDFHMACflag>False</KDFHMACflag>
      </CardSupports>
    </CardDefaults>
    <TestSuiteDefaults>
      <INF>
        <INFFile>C:\SmartcardMinidriverTest\minidriver.inf</INFFile>
      </INF>
      <Logging>
        <LogFile>CMCK_log.xml</LogFile>
        <LogToConsole>True</LogToConsole>
      </Logging>
      <TestParams>
        <TestParam>
          <Test>MultiThreaded</Test>
          <Name>t</Name>
          <Value>5</Value>
        </TestParam>
        <TestParam>
          <Test>MultiThreaded</Test>
            <Name>n</Name>
            <Value>5</Value>
        </TestParam>
        <TestParam>
          <Test>NonRepeatingChallenge</Test>
            <Name>n</Name>
            <Value>300</Value>
        </TestParam>
      </TestParams>
    </TestSuiteDefaults>
  </V5>
</CMCKConfig>

Синтаксис команд

Параметр команды Описание

команда> cmck <[параметры]

Запускает тест.

Примечание

   В справке командной строки для этого тестового двоичного файла введите cmck help [command]

 

Список файлов

Файл Расположение

cmck.exe

<[testbinroot]>\nttest\dstest\security\core\bin\credentials\smartcard

cmck_simuse.exe

<[testbinroot]>\nttest\dstest\security\core\bin\credentials\smartcard

intrcptr.dll

<[testbinroot]>\nttest\dstest\security\core\bin\credentials\smartcard

 

Параметры

Имя параметра Описание параметра
WDKDeviceID
LLU_NetAccessOnly