智慧卡迷你驅動程式認證測試
此自動化測試會驗證智慧卡迷你驅動程式和相關聯智慧卡的作業。
智慧卡迷你驅動程式是由 Microsoft 基礎密碼編譯服務提供者 (基底 CSP) 和 Microsoft 智慧卡金鑰儲存提供者 (SCKSP) 載入的軟體 DLL,可存取相關聯智慧卡的功能。 對於智慧卡廠商,這些迷你驅動程式提供更簡單的方式,在 Microsoft Windows 作業系統上實作智慧卡功能,比開發傳統的密碼編譯服務提供者 (CSP) 。 (過去,智慧卡迷你驅動程式也稱為智慧卡模組或智慧卡模組。)
此測試會在智慧卡迷你驅動程式上執行功能、壓力、效能和可靠性測試。 它會呼叫 Microsoft BaseCSP 和 Microsoft 智慧卡金鑰儲存提供者,並直接存取卡片迷你驅動程式方法,以測試卡片迷你驅動程式和相關聯卡片的作業正確性。 它也會使用智慧卡Resource Manager直接存取卡片。
測試詳細資料
規格 |
|
平台 |
|
支援的版本 |
|
預期的執行時間 (以分鐘為單位) | 180 |
類別 | 相容性 |
以分鐘為單位的逾時 () | 10800 |
需要重新開機 | false |
需要特殊設定 | false |
類型 | automatic |
其他檔
此功能區域中的測試可能會有其他檔,包括必要條件、設定和疑難排解資訊,可在下列主題中找到 () :
執行測試
執行測試之前,請先完成測試設定,如測試需求: 智慧卡讀取器測試必要條件中所述。
此外,此測試需要下列硬體。
- 經 WHQL 認證的智慧卡閱讀機
疑難排解
如需 HLK 測試失敗的一般疑難排解,請參閱 針對 Windows HLK 測試失敗進行疑難排解。
如需疑難排解資訊,請參閱 針對 Device.Input Testing 進行疑難排解。
此外,如需智慧卡特定的疑難排解資訊,請參閱下列網站:
詳細資訊
這項測試位於 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 用戶端應用程式。
下列資訊適用于正在執行測試的電腦,不論您是在 Windows HLK 環境內部或外部執行測試。
若要執行測試,您必須在電腦上安裝智慧卡迷你驅動程式,並在登錄中註冊。 (Also, for more information about certifying on a 64-bit version of the operating system, see the next section, "Certifying on a 64-bit version of the operating system"). 如果您的智慧卡裝置具有 ISO 7816 ID-1 尺寸,您必須使用符合電腦/SC 標準的 WHQL 認證智慧卡閱讀機進行認證。
若要執行測試,您必須在電腦上有兩個相同的智慧卡,而且兩者都必須處於備妥狀態,其中備妥是由 Windows 基礎密碼編譯服務提供者的智慧卡 Minidriver 規格所定義, (Base CSP) 和智慧卡金鑰儲存提供者 (KSP) 。
執行的測試取決於智慧卡迷你驅動程式的功能。 智慧卡迷你驅動程式的功能可以在名為 cmck_config.xml 的特定組態檔中,為測試控管定義,您必須將其放入 C:\SmartCardMinidriverTest 目錄中。 此檔案的描述和範例如下。
在典型的測試回合中,如果找不到組態檔,測試會要求您確認繼續使用預設值。 不過,針對標誌提交,您必須提供符合迷你驅動程式和卡片組合功能的組態檔。
預設索引鍵值如下所示:
預設使用者釘選為 0000。
挑戰/回應的預設管理金鑰都是零。
在 64 位版本的作業系統上認證
當您在 64 位版本的作業系統上認證時,也必須在系統上安裝 32 位版本的 minidriver DLL。 您可以將 DLL 放在 %systemroot%\syswow64 子目錄中。 您必須將 32 位版本的 DLL 登錄專案放在 HKEY_LOCAL_MACHINE\SOFTWARE\wow6432Node\Microsoft\Cryptography\Calais\SmartCards之下。
執行使用迷你驅動程式的 32 位應用程式時,它會載入 32 位版本的 minidriver。
智慧卡迷你驅動程式的 INF 檔案
當您提出認證提交時,必須提供 .inf 檔案。 以下是 x86 架構的 .inf 檔案範例:
[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"
智慧卡迷你驅動程式組態檔描述 (cmck_config.xml)
CMCK_config.xml包含下列 V5、V6 和 V7 區段,視您支援的迷你驅動程式版本 V5/V6/V7 而定。 請注意:V5/V6/V7 關鍵字是大寫的。
<CMCKConfig>
<V5>...</V5>
<V6>...</V6>
<V7>...</V7>
</CMCKConfig>
每個區段都會填入以下所述的 XML 標籤。 另請注意,每個區段可能會有不同的設定,視迷你驅動程式針對該版本支援的內容而定。
您可以在 結構中 (組態檔的每個區段中設定下列值,如) 所示:
<Version > 是定義組態檔版本號碼的必要欄位。 目前,預期的版本是 V6 和 V7 區段的 CMCK XML 組態檔 「2」,V5 區段則為 「1」。
<CardDefaults > 包含用於認證執行和一般測試回合的參數。
<DefaultPins > - 必須用於驗證相關函式的釘選值
<PinEntry >< RoleID > - 允許的值:1 - 7
<PinEntry >< 類型 > - 允許的值:「AlphanumericPinType」、「ChallengeResponsePinType」、「EmptyPinType」、「ExternalPinType」
<PinEntry >< 值 > - 針腳的空間分隔十六進位位元組清單。 預設值:「0x30 0x30 0x30 0x30」 (為 「0000」)
<PinEntry >< 封鎖 > [BOOLEAN] - 如果卡片支援在錯誤釘選出現太多次時封鎖這類使用者的卡片,則為狀態。 預設 「True」。
<PinEntry >< 連結 > [BOOLEAN] - 指出此針腳已連結至另一個針腳,也就是變更一個針腳會使另一個針腳變更。 預設 「False」。
<PinEntry >< AllowZeroLength > [BOOLEAN] - 如果卡片允許針腳空白,則為狀態。 預設 「False」。
<CardSupports > -定義卡片或卡片迷你驅動程式支援的選擇性功能,例如演算法、金鑰類型等等。 測試將涵蓋支援的功能。
<MinimumVersion > [DWORD] 包含卡片 minidriver 所支援之內容CARD_DATA結構的最低版本。 如需詳細資訊,請參閱智慧卡 Minidriver 規格。 允許的值為 「4」、「5」、「6」、「7」。
<CurrentVersion > [DWORD] 包含設計卡片迷你驅動程式的內容CARD_DATA結構版本。 如需詳細資訊,請參閱智慧卡 Minidriver 規格。 允許的值為 「5」、「6」、「7」。
<如果卡片 minidriver 支援在 CAPI 下載入,則 LoadUnderCAPI > [BOOLEAN] 為 「True」,否則為 「False」。
<如果卡片 minidriver 支援在 CNG 下載入,則 LoadUnderCNG > [BOOLEAN] 為 「True」,否則為 「False」。 請注意,至少兩個屬性的其中一個必須是 「True」 (CAPI 或 CNG) 。
<如果卡片 minidriver 支援金鑰匯入,則 KeyImport > [BOOLEAN] 為 「True」,否則為 「False」。
<KeyTypes > 包含卡片 minidriver 支援的金鑰類型空間分隔清單。 允許的值是 ECC 金鑰的 「AT_ECDH_P256」、「AT_ECDH_P384」、「AT_ECDH_P521」、「AT_ECDSA_P256」、「AT_ECDSA_P384」,或 ECC 金鑰的 「AT_ECDSA_P521」 和 「AT_SIGNATURE」 或 「AT_KEYEXCHANGE」。 <如果支援卡片填補,則 OnCardPadding > [BOOLEAN] 為 「True」,否則為 「False」。
<PaddingAlgorithms > 包含以空格分隔的卡片填補演算法清單, (只有在 OnCardPadding > 為 「True」 ) 時才 < 有效。 允許的值為 「CARD_PADDING_NONE」、「CARD_PADDING_PKCS1」 和 「CARD_PADDING_PSS」。
<SignHashAlgorithms > 包含卡片 minidriver 支援在 CARD_SIGNING_INFO 結構中 (簽署 aiHashAlg 的雜湊演算法空間分隔清單) 。 允許的值為 「CALG_MD2」、「CALG_MD4」、「CALG_MD5」、「CALG_SHA」、「CALG_SHA1」、「CALG_SHA_256」、「CALG_SHA_384」 和 CALG_SHA_512」。 如需詳細資訊,請參閱智慧卡 Minidriver 規格。
<SignHashFlags > 包含卡片 minidriver 支援的 CryptSignHash 旗標空間分隔清單。 允許的值是 「CRYPT_NOHASHOID」 和 「CRYPT_X931_FORMAT」。
<當卡片 minidriver 支援 CARD_SIGNING_INFO 結構中 dwSigningFlags 的CARD_BUFFER_SIZE_ONLY值時,SignReturnBufferSize > [BOOLEAN] 為 「True」。 如需詳細資訊,請參閱智慧卡 Minidriver 規格。
<KDFTypes > 包含卡片 minidriver 支援的金鑰衍生函式空間分隔清單。 允許的值為 「HASH」、「HMAC」、「TLS_PRF」 和 「SP800_56A_CONCAT」。 如需詳細資訊,請參閱智慧卡 Minidriver 規格。
<KDFHashAlgorithms > 包含卡片 minidriver 針對金鑰衍生函式所支援的雜湊演算法空間分隔清單, (KDF) 。 智慧卡 Minidriver 規格包含更多詳細資料。 允許的值是在 bcrypt.h 標頭檔中定義,而且是 BCRYPT_XXXX_ALGORITHM 定義 (的值,例如「SHA256」 (BCRYPT_SHA256_ALGORITHM) 或 「MD5」 (BCRYPT_MD5_ALGORITHM) ) 。
<如果卡片迷你驅動程式只支援 2 鍵 3DES,則使用2Key3DES > [BOOLEAN] 為 「True」。 當此值為 「False」 時,表示卡片迷你驅動程式使用預設的 3 鍵 3DES。 預設值為 「False」。
<KDFHMACFlag > [BOOLEAN] 為 「True」,如果卡片 minidriver 支援具有 BCRYPT_KDF_HMAC KDF_USE_SECRET_AS_HMAC_KEY_FLAG旗標的 ( (請參閱 MSDN CNG 上提供的加密新一代 () 檔,以取得詳細資訊) 。 當此值為 「False」 時,測試會提供明確的 HMAC 金鑰,且不會設定受影響測試的KDF_USE_SECRET_AS_HMAC_KEY_FLAG旗標。
<ChallengePadding > [BOOLEAN] 如果卡片挑戰資料的傳回包含填補位,則為 「True」。 預設值為 「False」。
<SupportsCardGetChallenge > [BOOLEAN] - 如果 CM 支援 CardGetChallenge API, (這是用於唯讀卡片) 。
<SupportsCardAuthenticateChallenge > [BOOLEAN] - 「True」 如果 CM 支援 CardAuthenticateChallenge API (這是用於唯讀卡片) 。
<SupportsCardGetChallengeEx > [BOOLEAN] - 如果 CM 支援 CardGetChallengeEx API, (這是用於唯讀卡片) 。
<SupportsCardUnblockPin > [BOOLEAN] - 如果 CM 支援 CardUnblockPin API (這是用於唯讀卡片) ,則為 「True」。
<SupportsCardChangeAuthenticator > [BOOLEAN] - 如果 CM 支援 CardChangeAuthenticator API, (這是用於唯讀卡片) 。
<SupportsCardChangeAuthenticatorEx > [BOOLEAN] - 如果 CM 支援 CardChangeAuthenticatorEx API, (這是用於唯讀卡片) 。
<TestSuiteDefaults > 包含只會影響測試回合的參數。 (認證執行會使用自己的預設值。)
<INF > 包含智慧卡 PnP 中使用的 INF 檔案相關資訊。
- <INFFile > 包含智慧卡 PnP INF 檔案的位置和檔案名,符合要測試的智慧卡/迷你驅動程式。 這是內建 PIV/GICS 類別 minidriver 以外的所有迷你驅動程式的必要專案。
<記錄 > 包含適用于測試回合的記錄選項
<LogFile > 包含 XML 記錄檔的位置和檔案名。 預設值為 「CMCK_log.xml」 (這表示檔案將會在目前的目錄中建立) 。 請注意,將會覆寫記錄檔。
<LogToConsole > [BOOLEAN] 會在主控台上顯示記錄以及寫入記錄檔時為 「True」。 預設值為 「True」。
<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 < 命令 > [options] |
執行測試。 |
注意
針對此測試二進位檔的命令列說明,請輸入 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 |