為何公鑰私鑰不可互相推導?
01-01
在數字簽名中,客戶B持有簽名方A的公鑰,可以解開A的簽名,得到正確的明文,那既然知道明文,知道密文,難道不能計算出A的私鑰嗎?類似的,B用A的公鑰加密了明文,難道卻不知道還原的辦法嗎?
如果講歐拉定理、費馬小定理之類的數學知識題主能夠明白,恐怕也不會來問這個問題了。
你知道模運算吧?
A mod B = C7 mod 3 = 116 mod 3 = 1另外,通過公鑰並不是完全不能推算出私鑰。密碼學中一般表述為:通過公鑰推算私鑰在計算上是困難的。就是說理論上並不是完全不可行,在實踐上非常困難。
對於目前的非對稱演算法,私鑰可以推導出公鑰,而公鑰不能推導出私鑰,這是由數學難題決定的,RSA的對應數學難題是大數的因子分解。
推薦閱讀:
※一個優秀的程序員應該學完哪些計算機理論的知識?
※如何對集合中的數據進行壓縮?
※谷歌從 Ingress 遊戲中搜集的地理數據有哪些用途,是否可能用于軍事?
※該如何作一條已知曲線的等距曲線?
※為什麼Python比C++慢很多?