當你要申請一個數(shù)字證書的時候诀黍,驅(qū)使你這么做的原因是什么袋坑?
仔細想一想,就會知道:
我要和別人在網(wǎng)絡(luò)中安全地通信眯勾,所以我需要一張 CA 頒發(fā)給我的數(shù)字證書來向別人證明我的公鑰
這就是申請數(shù)字證書的初衷
想和別人在網(wǎng)絡(luò)中安全的通信枣宫,那么我就使用現(xiàn)在流行的非對稱加密吧
哦,這樣啊吃环,那我先創(chuàng)建屬于自己的密鑰對兒吧镶柱,即公鑰和私鑰,然后把公鑰給別人
別人不相信這是我的公鑰怎么辦
請 CA 幫我證明吧
這就是數(shù)字證書的作用
那么下面就可以引申出公鑰和私鑰的話題了
在創(chuàng)建證書申請文件模叙,即 CSR 文件的時候歇拆,鑰匙串中會同時生成一對兒密鑰對兒,即公鑰和私鑰范咨。這對密鑰對兒就是用來在網(wǎng)絡(luò)通信中進行明文加密以及數(shù)字簽名的故觅。所以在申請數(shù)字證書的時候,是勢必要生成的渠啊,這是加密解密工具输吏。
在你剛剛創(chuàng)建完 CSR 文件,還未提交至 CA 的時候替蛉,電腦鑰匙串中就會生成一對兒密鑰對兒贯溅。
當你把 CSR 文件提交拄氯,拿到 CA 頒發(fā)的證書后,需要將數(shù)字證書(你的公鑰載體)和私鑰進行匹配它浅,匹配方法就是將證書安裝到鑰匙串當中译柏。
我們在網(wǎng)絡(luò)通信中,為了安全起見姐霍,公鑰和私鑰配合使用”陕螅現(xiàn)在有了權(quán)威的數(shù)字證書(權(quán)威公鑰載體),我們就可以用自己的數(shù)字證書和自己的私鑰配合使用镊折,以便安全地在網(wǎng)絡(luò)中進行通信胯府。
只有將裝載了公鑰的數(shù)字證書和私鑰進行匹配后,數(shù)字證書才可以和私鑰搭配來使用恨胚。
當開發(fā)者下載并雙擊打開數(shù)字證書后骂因,這個文件會出現(xiàn)在鑰匙串里。它與本地鑰匙串里的私鑰匹配之后赃泡,開發(fā)者就可以使用它了侣签。
證書和私鑰的關(guān)系
- 證書和私鑰的關(guān)系
http://www.zhihu.com/question/19882380
數(shù)字證書和私鑰是匹配的關(guān)系。
就好比鑰匙牌和鑰匙的關(guān)系急迂。
在數(shù)字證書簽發(fā)的時候,數(shù)字證書簽發(fā)系統(tǒng)(CA系統(tǒng))蹦肴,在生成數(shù)字證書的同時僚碎,還會隨機生成一對密鑰,一個私鑰阴幌,一個公鑰勺阐。
數(shù)字證書標示用戶身份, 相匹配的私鑰和公鑰矛双,則是用來保障用戶身份的可認證性渊抽。
就好比咱們拿著一串鑰匙,每個鑰匙上都標明有時某某房間的鑰匙议忽,但是否是真的懒闷,還需要看能不能打開相應(yīng)的房門。
- 證書分為公鑰證書和私鑰證書栈幸。每個人的公鑰愤估、私鑰證書是不一樣的。但是肯定是一一對應(yīng)的速址。
http://zhidao.baidu.com/question/112870420.html?qbl=relate_question_0&word=%D6%A4%CA%E9%D3%EB%CB%BD%D4%BF%C6%A5%C5%E4
加密技術(shù):公鑰證書加密玩焰、私鑰證書解密
簽名技術(shù):私鑰證書加密、公鑰證書解密
加密和簽名技術(shù)相結(jié)合才能實現(xiàn)芍锚,機密性昔园、完整性蔓榄、不可否認性。
為什么需要證書默刚,是因為每個人的數(shù)字證書里包括了證書用戶信息及密鑰信息甥郑。沒有證書談不上非對稱加密技術(shù)。
數(shù)字證書的個人理解:
- 數(shù)字證書是一個權(quán)威容器:
證明用戶公鑰的一種權(quán)威手段·
我拿到了你的公鑰羡棵,但是我不能完全相信這就是你的公鑰壹若,萬一是別人冒充怎么辦
CA 的一張頒發(fā)給你的證書里有你的公鑰,我拿到你的證書就拿到了你的公鑰皂冰,這樣我十分相信這就是你的公鑰
數(shù)字證書就是用來證明你的公鑰的確是你的公鑰
數(shù)字證書就是公鑰的權(quán)威載體
數(shù)字證書就是證明你的公鑰的文件
數(shù)字證書就是權(quán)威公鑰店展,你說這是你的公鑰,別人不相信秃流。但是你給別人你的數(shù)字證書赂蕴,別人就相信里面的公鑰是你公鑰
如何確定對方身份
- 如何確定對方是就是我要找的人?有一個解決方法舶胀,因為只有我要找的那個人才有有私鑰概说,所以只要能夠確認對方我要找的那個人的私鑰,那么對方就是我要找的人嚣伐。
- 假如黑客攔截了你的通信請求糖赔,把自己的公鑰發(fā)給了你,黑客有自己的私鑰轩端,然后黑客簽名放典,你用黑客給你的公鑰進行解簽,也同樣會誤認為黑客就是你要找的人基茵。所以在私鑰的確定上奋构,你需要明確知道你擁有的公鑰是你要找的那個人的公鑰
- CA 頒發(fā)給“你要找的那個人”的數(shù)字證書能夠證明里面的公鑰就是“你要找的那個人”的公鑰。
- 只要確定對方擁有和自己手中拿到的目標人的權(quán)威公鑰匹配的私鑰拱层,對方就是目標人
確定對方身份的措施
- 通過 CA 頒發(fā)的證書拿到目標人的權(quán)威公鑰
- 用權(quán)威公鑰解簽弥臼,確定對方擁有目標人的私鑰
- 這就可以確認對方身份了
- 只要確定對方擁有和自己手中拿到的目標人的權(quán)威公鑰匹配的私鑰,對方就是目標人
iOS 系統(tǒng)和開發(fā)者的身份相互確認
- iOS 系統(tǒng)要先確認 CA 的身份根灯,進而相信該證書不是假證書径缅,而是權(quán)威證書
- iOS 系統(tǒng)再去確認開發(fā)者的身份,進而確認代碼簽名的 APP 是安全的
- iOS 系統(tǒng)用 CA 公鑰解簽數(shù)字證書烙肺,如若摘要一致芥驳,確認對方擁有該 CA公鑰對應(yīng)的私鑰,則能證明對方是 CA茬高,進而證明數(shù)字證書的確是 CA 頒發(fā)的兆旬,數(shù)字證書不是假證書
- iOS 系統(tǒng)拿到數(shù)字證書中的開發(fā)者公鑰,當然是權(quán)威公鑰嘍怎栽,因為有數(shù)字證書的作證
- iOS 系統(tǒng)用開發(fā)者的權(quán)威公鑰對代碼簽名的資源文件進行解簽丽猬,如果摘要一致宿饱,可以確認對方擁有該權(quán)威公鑰對應(yīng)的私鑰,進而確認對方身份的確是開發(fā)者脚祟,那么 iOS 系統(tǒng)會認為該 APP 是合法的谬以、安全的、完整的由桌。