公鑰密碼學

公鑰密碼學——或稱非對稱密碼學——是一種密碼系統,其中金鑰成對出現。一個金鑰執行的轉換隻能用另一個金鑰撤銷。其中一個金鑰(私鑰)保密,而另一個金鑰公開。

數字簽名

當用於數字簽名時,私鑰用於簽名,公鑰用於驗證。這意味著任何人都可以驗證簽名,但只有相應私鑰的所有者才能生成它。

加密

當用於加密時,公鑰用於加密,私鑰用於解密。這使得公鑰加密系統比對稱加密系統具有優勢:加密金鑰可以公開。任何人都可以向私鑰所有者加密訊息,但只有私鑰所有者才能解密它。

然而,公鑰加密系統通常比對稱演算法慢得多,並且它們可以加密的訊息大小與金鑰大小成正比,因此它們不適用於長訊息。

因此,常見的做法是加密系統使用對稱演算法加密訊息,然後使用公鑰系統加密對稱金鑰。這種安排可以兼具兩種系統的優點。

常見的公鑰密碼系統

常用的公鑰密碼系統有 RSA(用於簽名和加密)、DSA(用於簽名)和 Diffie-Hellman(用於金鑰協商)。

橢圓曲線密碼學為這些密碼系統提供了另一種方法,其優勢在於使用相對較小的金鑰大小、更快的操作以及更小的儲存和傳輸。流行的橢圓曲線演算法包括 橢圓曲線 Diffie-Hellman橢圓曲線數字簽名演算法,開發者通常會將其縮寫為 ECDHECDSA

另見