2012-05-29 32 views

回答

6

每個HSM供應商都支持至少一個加密API。 PKCS#11是一個特別常見的選擇,但還有很多其他選項。例如,OpenSSL通過engine interface支持HSM。

除了它實現的「標準」API之外,供應商通常會公開一個專有API。專有API通常對關鍵安全屬性和密鑰使用提供更高程度的控制,而不是在標準API中表達。

當使用HSM時,通常會發出一條命令,從安全存儲區加載密鑰並將句柄檢索到密鑰對象。該句柄是一個抽象層,它允許HSM在不暴露密鑰材料的情況下安全地執行密鑰操作。

關於您的項目,重要的是您不要簡單地將HSM「推」到解決方案中的某處,以使其看起來很安全。相反,請仔細考慮系統的安全屬性以及密碼學如何幫助您抵禦攻擊。一旦確定了您的攻擊媒介(以及您的相關加密防禦),然後考慮哪些加密API可以支持您的使用案例。只有這樣才能從支持該API的用戶中選擇最好的供應商。

根據我的經驗,標準API只適用於簡單的安全系統。對於複雜的項目,幾乎總是需要使用特定供應商的專有API。在這種情況下,在決定真正滿足您的需求的產品之前,嚴重依賴供應商提供支持和概念驗證。