iOS 簽名機制

2022-09-11 15:24:44 字數 719 閱讀 7335

上述的 (n,e) 這兩個資料在一起就是公鑰,(n,d) 這兩個資料就是私鑰,滿足用私鑰加密,公鑰解密,或反過來公鑰加密,私鑰解密,也滿足在只暴露公鑰 (只知道 n 和 e)的情況下,要推導出私鑰 (n,d),需要把大整數 n 因數分解。目前因數分解只能靠暴力窮舉,而 n 數字越大,越難以用窮舉計算出因數 p 和 q,也就越安全,當 n 大到二進位制 1024 位或 2048 位時,以目前技術要破解幾乎不可能,所以非常安全。

數字簽名

現在知道了有非對稱加密這東西,那數字簽名是怎麼回事呢?

數字簽名的作用是我對某乙份資料打個標記,表示我認可了這份資料(籤了個名),然後我傳送給其他人,其他人可以知道這份資料是經過我認證的,資料沒有被篡改過。

首先用一種演算法,算出原始資料的摘要。需滿足 a.若原始資料有任何變化,計算出來的摘要值都會變化。 b.摘要要夠短。這裡最常用的演算法是md5。

生成乙份非對稱加密的公鑰和私鑰,私鑰我自己拿著,公鑰公布出去。

對乙份資料,算出摘要後,用私鑰加密這個摘要,得到乙份加密後的資料,稱為原始資料的簽名。把它跟原始資料一起傳送給使用者。

使用者收到資料和簽名後,用公鑰解密得到摘要。同時使用者用同樣的演算法計算原始資料的摘要,對比這裡計算出來的摘要和用公鑰解密簽名得到的摘要是否相等,若相等則表示這份資料中途沒有被篡改過,因為如果篡改過,摘要會變化。

為了實現這些需求,ios 簽名的複雜度也就開始增加了。

蘋果這裡給出的方案是使用了雙層簽名,會比較繞,流程大概是這樣的:

iOS簽名授權機制

幾個重要的概念 1.非對稱加密 非對稱加密演算法需要兩個金鑰 公開金鑰 publickey 和私有金鑰 privatekey 公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密 如果用私有金鑰對資料進行加密,那麼只有用對應的公開金鑰才能解密。私鑰是要保密的,公鑰可以...

ios簽名機制的理解

一 非對稱演算法和數字簽名 區別之前的對稱加密演算法 加密解密用的是同乙個秘鑰 非對稱加密演算法需要兩個秘鑰,即公鑰和私鑰來進行加密和解密,它倆是成對出現的,如果用公鑰加密的內容,只有對應的私鑰才能解密,反之,用私鑰加密的內容,只有對應的公鑰才能解密。相對於對稱演算法,該演算法安全性高,只要私鑰不洩...

iOS 簽名機制與證書

純粹就是總結,很多地方跟參考資料一樣,就是自己手動打一遍,自己親自畫個圖增加理解和加強記憶力,而不只是複製貼上 ios 打包流程也不在此敘述,相信很多人已經對照過各種 並茂的文章一一操作過 即加密金鑰與解密金鑰不同,且成對出現 對外公開的稱為公鑰,這對金鑰生成者才擁有的稱為私鑰 通過私鑰加密的密文只...