非對稱金鑰
非對稱金鑰也稱為 公開/私密金鑰組,用於非對稱式加密。 非對稱加密主要用於加密和解密 工作階段金鑰 和 數位簽章。 非對稱式加密會使用 公開金鑰加密 演算法。
公開金鑰演算法會使用兩個不同的金鑰: 公開金鑰 和 私密金鑰。 配對的私密金鑰成員必須保持私人且安全。 不過,公開金鑰可以散發給要求它的任何人。 金鑰組的公開金鑰通常會透過 數位憑證來散發。 使用金鑰組的一個金鑰來加密訊息時,需要該組中的其他金鑰才能解密訊息。 因此,如果使用者 A 的公開金鑰是用來加密資料,則只有使用者 A (或可存取使用者 A 私密金鑰的人員,) 才能解密資料。 如果使用者 A 的私密金鑰用來加密資料片段,則只有使用者的公開金鑰會解密資料,因此表示使用者 A (或具有使用者 A 私密金鑰存取權的人員) 進行加密。
如果使用私密金鑰來簽署訊息,則必須使用該組的公開金鑰來驗證簽章。 例如,如果 Alice 想要傳送數位簽署的訊息給某人,她會使用她的私密金鑰簽署訊息,而其他人可以使用她的公開金鑰來驗證她的簽章。 因為可能只有 Alice 可以存取其私密金鑰,所以可以使用 Alice 的公開金鑰來驗證簽章的事實表示 Alice 已建立簽章。
不幸的是,公開金鑰演算法的速度非常慢,大約比對稱演算法慢 1,000 倍。 使用它們來加密大量資料並不實用。 在實務上,公開金鑰演算法是用來加密 工作階段金鑰。 對稱演算法 用於大部分資料的加密/解密。
同樣地,因為簽署訊息實際上會加密訊息,所以使用公開金鑰簽章演算法來簽署大型訊息並不實用。 相反地,固定長度 的雜湊 是由訊息所組成,且雜湊值會帶正負號。 如需詳細資訊,請參閱 雜湊和數位簽章。
每個使用者通常都有兩 個公開/私密金鑰組。 一個金鑰組用來加密工作階段金鑰,另一個用來建立 數位簽章。 這些分別稱為 金鑰交換金鑰組 和 簽章金鑰組。
請注意,雖然大部分 密碼編譯服務提供者 所建立的金鑰容器 (CSP) 包含兩個金鑰組,但這並非必要。 有些 CSP 不會儲存任何 金鑰組 ,而其他 CSP 則儲存兩組以上的金鑰組。
CryptoAPI 中的所有金鑰都會儲存在 CSP 內。 CSP 也負責建立金鑰、終結金鑰,以及使用這些金鑰來執行各種密碼編譯作業。 將金鑰從 CSP 匯出,以便將金鑰傳送給其他使用者,會在 密碼編譯金鑰儲存體和 Exchange中討論。