❶ c盤里的SKFAPI是什麼意思
《智能IC卡及智能密碼鑰匙密碼應用介面規范》標准中公布了訪問國密硬體的C語言API (下面簡稱SKF API),GmSSL通過ENGINE機制訪問支持國密SKF API的國產密碼硬體。 准確的說法應該是smart key function
❷ 簽名密文數據生成異常
如果想要充分理解RSA簽名密鑰對,我們必須知道簽名密鑰對是什麼,簽名的意義,以及生成的簽名密鑰對存在哪裡,以及整個簽名密鑰對的生成實現過程。
簽名:
簽名的定義需要自己在網上查找相關資料充分理解,這里不做詳細定義性介紹,有一定基礎後便可以理解這里的簽名驗簽過程。我們收到的數據是(數據密文和數據簽名作為一個整體數據塊)經過會話密鑰加密後數據,我們得到此密文後首先用會話密鑰對密文進行解密,得到圖中左側原文和簽名數據。然後對原始數據進行摘要運算,摘要運算只需要演算法和設備句柄不需要密鑰;然後再用簽名公鑰對簽名數據解密,得到傳輸來的摘要數據;最後比對兩個摘要是否正確,確定數據是否被篡改過。簽名過程後面會在詳細介紹
簽名密鑰對:非對稱演算法密鑰對,包括簽名公鑰和簽名私鑰成對出現,公鑰用來進行驗簽操作,私鑰用來進行簽名操作;簽名密鑰對必須UKEY內生成,加密密鑰對要外面安全導入。
簽名密鑰對的存儲:存儲也就是說如何能夠准確找到某個簽名密鑰對,PC端通過尋找設備句柄找到設備,然後通過尋找應用ID找到某個應用,在通過容器ID找到存儲簽名密鑰對的容器,最後根據密鑰ID找到索要使用的簽名密鑰對。這個過程是不變的,無論是CSP開發還是國密dll開發,原理不變,尋找方法改變而已。
生成簽名密鑰對的實現過程:
1:枚舉設備,連接設備,得到設備句柄
2:通過設備句柄,應用名打開應用,打開容器
3:然後調用生成RSA簽名密鑰函數介面實現:
函數原型 ULONG DEVAPI SKF_GenRSAKeyPair (HCONTAINER hContainer, ULONG ulBitsLen, RSAPUBLICKEYBLOB *pBlob)
功能描述 生成 RSA 簽名密鑰對並輸出簽名公鑰。
參數 hContainer [IN] 容器句柄。
ulBitsLen [IN] 密鑰模長。
pBlob [OUT] 返回的 RSA 公鑰數據結構。
容器句柄里存儲的是設備句柄,應用ID,容器ID;輸出的是簽名公鑰數據,不是公鑰句柄。一定要注意流程和句柄存儲位置。
❸ 國密中 SKF是什麼縮寫
《智能IC卡及智能密碼鑰匙密碼應用介面規范》標准中公布了訪問國密硬體的C語言API (下面簡稱SKF API),GmSSL通過ENGINE機制訪問支持國密SKF API的國產密碼硬體。
准確的說法應該是smart key function