Public-Key
RSASSA-PKCS1-v1_5 的簽名操作需要私鑰。表面限制,還是公共參數在數學上無法做到這一點?
在 RSASSA-PKCS1-v1_5 的情況下,僅僅是密碼庫和 API 被設計為僅在表面上確定它具有私鑰時才簽名,還是公鑰在數學上無法簽名?或者也許以這種方式詢問我對密鑰對以及如何使用它們做出了一些重大的錯誤假設?
簽名方案的設計要求擁有私鑰才能對消息進行簽名。孤立的公鑰只允許驗證簽名。
將此與公鑰加密方案進行比較,在公鑰加密方案中,私鑰是解密所需的,而孤立的公鑰只能加密消息。
有關如何形式化非對稱簽名方案的更多詳細資訊,請查看任何標準教科書的相應部分,例如The Joy of Cryptography 的第 13.3 章。
在研究基於 RSA 的簽名方案時要記住的另一件事是,雖然簽名操作與教科書 RSA 的加密操作有些相似,但必須注意不要將兩者混為一談。一方面,簽名操作使用私鑰,而加密操作使用公鑰。此外,實際方案中使用的填充類型存在顯著差異。有關更多資訊,請參見例如此答案。