7.2 訪問控制
7.2 訪問控制
7.2.1 概述
訪問控制主要完成設備認證、PIN碼管理和安全狀態管理等操作。訪問控制系列函數如表所17:
表17 訪問控制系列函數
| 函數名稱 | 功能 |
|---|---|
| SKF_ChangeDevAuthKey | 修改設備認證密鑰 |
| SKF_DevAuth | 設備認證 |
| SKF_ChangePIN | 修改PIN |
| SKF_GetPINInfo | 獲得PIN碼信息 |
| SKF_VerifyPIN | 校驗PIN |
| SKF_UnblockPIN | 解鎖PIN |
| SKF_ClearSecueState | 清除應用安全狀態 |
7.2.2 修改設備認證密鑰
原型 ULONG DEVAPI SKF_ChangeDevAuthKey (DEVHANDLE hDev, BYTE *pbKeyValue, ULONG ulKeyLen)
功能描述 更改設備認證密鑰。
參數 hDev [IN] 連接時返回的設備句柄。
pbKeyValue [IN] 密鑰值。
ulKeyLen [IN] 密鑰長度。
返回值 SAR_OK: 成功。
其他: 錯誤碼。
7.2.3 設備認證
原型 ULONG DEVAPI SKF_DevAuth (DEVHANDLE hDev, BYTE *pbAuthData,ULONG ulLen)
功能描述 設備認證是設備對應用程序的認證。認證過程參見8.2.3。
參數 hDev [IN] 連接時返回的設備句柄。
pbAuthData [IN] 認證數據。
ulLen [IN] 認證數據的長度。
返回值 SAR_OK: 成功。
7.2.4 修改PIN
原型 ULONG DEVAPI SKF_ChangePIN (HAPPLICATION hApplication, ULONG ulPINType, LPSTR szOldPin,LPSTR szNewPin,ULONG *pulRetryCount)
功能描述 調用該函數可以修改Administrator PIN和User PIN的值。
如果原PIN碼錯誤導致驗證失敗,該函數會返回相應PIN碼的剩余重試次數,當剩余次數為0時,表示PIN已經被鎖死。
參數 hApplication [IN] 應用句柄。
ulPINType [IN] PIN類型,可為ADMIN_TYPE或USER_TYPE。
szOldPin [IN] 原PIN值。
szNewPin [IN] 新PIN值。
pulRetryCount [OUT] 出錯后重試次數。
返回值 SAR_OK: 成功。
7.2.5 獲取PIN信息
原型 ULONG DEVAPI SKF_GetPINInfo(HAPPLICATION hApplication, ULONG ulPINType, ULONG *pulMaxRetryCount, ULONG *pulRemainRetryCount, BOOL *pbDefaultPin)
功能描述 獲取PIN碼信息,包括最大重試次數、當前剩余重試次數,以及當前PIN碼是否為出廠默認PIN碼。
參數 hApplication [IN] 應用句柄。
ulPINType [IN] PIN類型。
pulMaxRetryCount [OUT] 最大重試次數。
pulRemainRetryCount [OUT] 當前剩余重試次數,當為0時表示已鎖死。
pbDefaultPin [OUT] 是否為出廠默認PIN碼。
返回值 SAR_OK: 成功。
7.2.6 校驗PIN
原型 ULONG DEVAPI SKF_VerifyPIN (HAPPLICATION hApplication, ULONG ulPINType, LPSTR szPIN, ULONG *pulRetryCount)
功能描述 校驗PIN碼。校驗成功后,會獲得相應的權限,如果PIN碼錯誤,會返回PIN碼的重試次數,當重試次數為0時表示PIN碼已經鎖死。
參數 hApplication [IN] 應用句柄。
ulPINType [IN] PIN類型。
szPIN [IN] PIN值。
pulRetryCount [OUT] 出錯后返回的重試次數。
返回值 SAR_OK: 成功。
7.2.7 解鎖PIN
原型 ULONG DEVAPI SKF_UnblockPIN (HAPPLICATION hApplication, LPSTR szAdminPIN, LPSTR szNewUserPIN,ULONG *pulRetryCount)
功能描述 當用戶的PIN碼鎖死后,通過調用該函數來解鎖用戶PIN碼。
解鎖后,用戶PIN碼被設置成新值,用戶PIN碼的重試次數也恢復到原值。
參數 hApplication [IN] 應用句柄。
szAdminPIN [IN] 管理員PIN碼。
szNewUserPIN [IN] 新的用戶PIN碼。
pulRetryCount [OUT] 管理員PIN碼錯誤時,返回剩余重試次數。
返回值 SAR_OK: 成功。
其他: 錯誤碼。
7.2.8 清除應用安全狀態
原型 ULONG DEVAPI SKF_ClearSecureState (HAPPLICATION hApplication)
功能描述 清除應用當前的安全狀態。
參數 hApplication [IN] 應用句柄。
返回值 SAR_OK: 成功。
GB/T 35291-2017 信息安全技術 智能密碼鑰匙應用接口規范
推薦文章: