iOS開發(fā)之簽名原理

導讀

iOS App 簽名的原理
RSA算法原理(一)
RSA算法原理(二)

對稱加密

過程如下:

  • 數(shù)據(jù)發(fā)送方選擇一種加密規(guī)則對數(shù)據(jù)進行加密豆瘫,然后通過網絡發(fā)送給數(shù)據(jù)接收方
  • 數(shù)據(jù)接收方接收到數(shù)據(jù)后通過同一套加密規(guī)則铝耻,對剛發(fā)送過來的數(shù)據(jù)進行解密,然后得到原始數(shù)據(jù)

特性:

  • 全程只維護一個密鑰
  • 容易破解,數(shù)據(jù)不安全
  • 方式和過程簡單阁最,效率快,并且加密的數(shù)據(jù)量大

以上就是對稱加密,這種算法規(guī)則也被叫做對稱加密算法睡雇。但是有一個很大的問題就是數(shù)據(jù)發(fā)送方必須將加密的密鑰告知給數(shù)據(jù)接收方,大家可能會有疑問了饮醇,這怎么會是一個問題呢它抱?比如說我們可以直接告訴對方嘛,開個碰頭會啥的朴艰,但是這可能是現(xiàn)實生活中观蓄,而我們使用的場景是在網路世界中混移,你不可能在QQ上告訴對方吧,所以保存和傳遞密鑰蜘腌,就成了最頭疼的問題沫屡。

非對稱加密

過程如下:

  • 乙方生成兩把密鑰(公鑰和私鑰)。公鑰是公開的撮珠,任何人都可以獲得沮脖,私鑰則是保密的。
  • 甲方獲取數(shù)據(jù)發(fā)送方的公鑰芯急,然后用它對信息加密勺届。
  • 乙方得到加密后的信息,用私鑰解密娶耍。

特性:

  • 數(shù)據(jù)發(fā)送方會產生一對密鑰免姿,分為公鑰和私鑰
  • 公鑰加密的只有私鑰可以解,私鑰加密的只有公鑰可以解
  • 傳輸過程中一般只傳輸公鑰榕酒,公鑰對外公開胚膊,大家都可以拿到,私鑰保存在數(shù)據(jù)發(fā)送方
  • 加密數(shù)據(jù)量一般比較小想鹰,所以基本上會和MD5一起使用紊婉,MD5對數(shù)據(jù)加密成摘要信息,然后再用公鑰或者私鑰對摘要信息進行加密

以上就是非對稱加密辑舷。

順帶聊聊MD5

MD5:Message-Digest Algorithm 5(信息-摘要算法5)喻犁,用于確保信息傳輸完整一致。是計算機廣泛使用的雜湊算法之一(又譯摘要算法何缓、哈希算法)肢础,主流編程語言普遍已有MD5實現(xiàn)。將數(shù)據(jù)(如漢字)運算為另一固定長度值碌廓,是雜湊算法的基礎原理传轰,MD5的前身有MD2、MD3和MD4谷婆。
MD5算法具有以下特點:

  • 壓縮性:任意長度的數(shù)據(jù)路召,算出的MD5值長度都是固定的。
  • 容易計算:從原數(shù)據(jù)計算出MD5值很容易波材。
  • 抗修改性:對原數(shù)據(jù)進行任何改動股淡,哪怕只修改1個字節(jié),所得到的MD5值都有很大區(qū)別廷区。
  • 強抗碰撞:已知原數(shù)據(jù)和其MD5值唯灵,想找到一個具有相同MD5值的數(shù)據(jù)(即偽造數(shù)據(jù))是非常困難的。

MD5的作用是讓大容量信息在用數(shù)字簽名軟件簽署私人密鑰前被"壓縮"成一種保密的格式(就是把一個任意長度的字節(jié)串變換成一定長的十六進制數(shù)字串)隙轻。除了MD5以外埠帕,其中比較有名的還有sha-1垢揩、RIPEMD以及Haval等。

主要用途:

  • 數(shù)據(jù)發(fā)送方一般先會把數(shù)據(jù)通過MD5加密成信息摘要(其實就是一段固定長度的十六進制數(shù)敛瓷,一般是32位)叁巨,然后將數(shù)據(jù)和信息摘要一并發(fā)送給數(shù)據(jù)接收方,數(shù)據(jù)接收方接收到數(shù)據(jù)之后就開始將數(shù)據(jù)通過MD5得到信息摘要呐籽,對比自己經過MD5后的信息摘要和接收到的信息摘要進行對比锋勺,如果一致說明中途數(shù)據(jù)沒有被篡改。所以一般用在校驗上
  • 數(shù)據(jù)發(fā)送方通過非對稱加密算法生成一對密鑰(私鑰在自己這里保存狡蝶,公鑰在發(fā)給數(shù)據(jù)接收方)庶橱,然后把數(shù)據(jù)通過MD5機密成信息摘要,數(shù)據(jù)摘要經過私鑰加密成數(shù)字簽名贪惹,然后將數(shù)據(jù)和數(shù)字簽名發(fā)送給數(shù)據(jù)接收方苏章,數(shù)據(jù)接收方通過公鑰對數(shù)字簽名進行解密,得出數(shù)據(jù)摘要奏瞬,然后將接收到的數(shù)據(jù)經過MD5加密成數(shù)據(jù)摘要枫绅,然后對比摘要信息,然后一致那么就認證了數(shù)據(jù)發(fā)送方硼端,也就是確定了來源可靠并淋。

PS:疑問

  • 為什么不通過數(shù)據(jù)摘要信息反解密出來呢?因為這個MD5算法是一種雜湊算法也叫散列算法显蝌,算法時候不可逆的预伺,所以你無法通過加密后的數(shù)據(jù)內容演算出原始內容订咸。
  • 既然不可逆曼尊,那為什么網上有很多的MD5解密工具呢?因為網上很多的這種解密工具是自己維護了一個查詢數(shù)據(jù)庫脏嚷,把平時搜集到的正向加密映射列表存儲在數(shù)據(jù)庫骆撇,當我們點擊解密的時候其實不是運行解密算法還是直接找到后臺數(shù)據(jù)庫「感穑基本桑簡單的是能夠查詢到的神郊,但是稍微比較復雜的就查詢不到了。

非對稱加密之RSA

簡要信息

  • 1977年趾唱,三位數(shù)學家Rivest涌乳、Shamir 和 Adleman 設計了一種算法,可以實現(xiàn)非對稱加密甜癞。這種算法用他們三個人的名字命名夕晓,叫做RSA算法。從那時直到現(xiàn)在悠咱,RSA算法一直是最廣為使用的"非對稱加密算法"蒸辆。毫不夸張地說征炼,只要有計算機網絡的地方,就有RSA算法躬贡。
  • 這種算法非匙话拢可靠,密鑰越長拂玻,它就越難破解酸些。根據(jù)已經披露的文獻,目前被破解的最長RSA密鑰是768個二進制位纺讲。也就是說擂仍,長度超過768位的密鑰,還無法破解(至少沒人公開宣布)熬甚。因此可以認為逢渔,1024位的RSA密鑰基本安全,2048位的密鑰極其安全乡括。

數(shù)字簽名

未完待續(xù)...

參考:iOS App 簽名的原理

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末肃廓,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子诲泌,更是在濱河造成了極大的恐慌盲赊,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件敷扫,死亡現(xiàn)場離奇詭異哀蘑,居然都是意外死亡,警方通過查閱死者的電腦和手機葵第,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進店門绘迁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人卒密,你說我怎么就攤上這事缀台。” “怎么了哮奇?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵膛腐,是天一觀的道長。 經常有香客問我鼎俘,道長哲身,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任贸伐,我火速辦了婚禮勘天,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己误辑,他們只是感情好沧踏,可當我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著巾钉,像睡著了一般翘狱。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上砰苍,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天潦匈,我揣著相機與錄音,去河邊找鬼赚导。 笑死茬缩,一個胖子當著我的面吹牛,可吹牛的內容都是我干的吼旧。 我是一名探鬼主播凰锡,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼圈暗!你這毒婦竟也來了掂为?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤员串,失蹤者是張志新(化名)和其女友劉穎勇哗,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寸齐,經...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡欲诺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了渺鹦。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扰法。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖海铆,靈堂內的尸體忽然破棺而出迹恐,到底是詐尸還是另有隱情挣惰,我是刑警寧澤卧斟,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站憎茂,受9級特大地震影響珍语,放射性物質發(fā)生泄漏。R本人自食惡果不足惜竖幔,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一板乙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦募逞、人聲如沸蛋铆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刺啦。三九已至,卻和暖如春纠脾,著一層夾襖步出監(jiān)牢的瞬間玛瘸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工苟蹈, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留糊渊,地道東北人。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓慧脱,卻偏偏與公主長得像渺绒,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子菱鸥,可洞房花燭夜當晚...
    茶點故事閱讀 45,507評論 2 359

推薦閱讀更多精彩內容