什么是數(shù)字簽名和證書温技?

公鑰密碼系統(tǒng)是本文的理解基礎(chǔ)革为。
本文不對(duì)公鑰密碼系統(tǒng)做過多描述。若對(duì)公鑰密碼不熟悉舵鳞,可以參考閱讀維基百科-公開密鑰加密

1.信息安全三要素

信息安全中有三個(gè)需要解決的問題:

  1. 保密性(Confidentiality):信息在傳輸時(shí)不被泄露
  2. 完整性(Integrity):信息在傳輸時(shí)不被篡改
  3. 有效性(Availability):信息的使用者是合法的

這三要素統(tǒng)稱為CIA Triad震檩。

公鑰密碼解決保密性問題
數(shù)字簽名解決完整性問題和有效性問題

2.數(shù)字簽名

現(xiàn)實(shí)生活中,簽名有什么作用蜓堕?在一封信中抛虏,文末的簽名是為了表示這封信是簽名者寫的。計(jì)算機(jī)中套才,數(shù)字簽名也是相同的含義:證明消息是某個(gè)特定的人迂猴,而不是隨隨便便一個(gè)人發(fā)送的(有效性);除此之外背伴,數(shù)字簽名還能證明消息沒有被篡改(完整性)沸毁。

簡(jiǎn)單來說峰髓,數(shù)字簽名(digital signature)是公鑰密碼的逆應(yīng)用:用私鑰加密消息,用公鑰解密消息息尺。

用私鑰加密的消息稱為簽名携兵,只有擁有私鑰的用戶可以生成簽名。
用公鑰解密簽名這一步稱為驗(yàn)證簽名搂誉,所有用戶都可以驗(yàn)證簽名(因?yàn)楣€是公開的)

一旦簽名驗(yàn)證成功徐紧,根據(jù)公私鑰數(shù)學(xué)上的對(duì)應(yīng)關(guān)系,就可以知道該消息是唯一擁有私鑰的用戶發(fā)送的炭懊,而不是隨便一個(gè)用戶發(fā)送的并级。

由于私鑰是唯一的,因此數(shù)字簽名可以保證發(fā)送者事后不能抵賴對(duì)報(bào)文的簽名凛虽。由此死遭,消息的接收者可以通過數(shù)字簽名,使第三方確信簽名人的身份及發(fā)出消息的事實(shí)凯旋。當(dāng)雙方就消息發(fā)出與否及其內(nèi)容出現(xiàn)爭(zhēng)論時(shí)呀潭,數(shù)字簽名就可成為一個(gè)有力的證據(jù)。

生成簽名

一般來說至非,不直接對(duì)消息進(jìn)行簽名钠署,而是對(duì)消息的哈希值進(jìn)行簽名,步驟如下荒椭。

  1. 對(duì)消息進(jìn)行哈希計(jì)算谐鼎,得到哈希值
  2. 利用私鑰對(duì)哈希值進(jìn)行加密,生成簽名
  3. 將簽名附加在消息后面趣惠,一起發(fā)送過去

驗(yàn)證簽名

  1. 收到消息后狸棍,提取消息中的簽名
  2. 用公鑰對(duì)簽名進(jìn)行解密,得到哈希值1味悄。
  3. 對(duì)消息中的正文進(jìn)行哈希計(jì)算草戈,得到哈希值2。
  4. 比較哈希值1和哈希值2侍瑟,如果相同唐片,則驗(yàn)證成功。

3.證書

證書實(shí)際上就是對(duì)公鑰進(jìn)行數(shù)字簽名涨颜,它是對(duì)公鑰合法性提供證明的技術(shù)费韭。

考慮這樣一種場(chǎng)景:我們對(duì)簽名進(jìn)行驗(yàn)證時(shí),需要用到公鑰庭瑰。如果公鑰也是偽造的星持,那怎么辦?如果公鑰是假的弹灭,驗(yàn)證數(shù)字簽名那就無從談起钉汗,根本不可能從數(shù)字簽名確定對(duì)方的合法性羹令。
這時(shí)候證書就派上用場(chǎng)了。

證書一般包含:公鑰(記住證書中是帶有公鑰的)损痰,公鑰的數(shù)字簽名福侈,公鑰擁有者的信息
若證書驗(yàn)證成功,這表示該公鑰是合法卢未,可信的肪凛。

接下來又有問題了:驗(yàn)證證書中的數(shù)字簽名需要另一個(gè)公鑰,那么這個(gè)公鑰的合法性又該如何保證辽社?該問題可以無限循環(huán)下去伟墙,豈不是到不了頭了?這已經(jīng)是個(gè)社會(huì)學(xué)問題了滴铅。我們?yōu)槭裁窗彦X存進(jìn)銀行戳葵?因?yàn)槲覀兿嘈陪y行,它是一個(gè)可信的機(jī)構(gòu)(雖然也有破產(chǎn)的風(fēng)險(xiǎn))汉匙。跟銀行一樣拱烁,我們需要一個(gè)可信的機(jī)構(gòu)來頒發(fā)證書和提供公鑰,只要是它提供的公鑰噩翠,我們就相信是合法的戏自。

這種機(jī)構(gòu)稱為認(rèn)證機(jī)構(gòu)(Certification Authority, CA)伤锚。CA就是能夠認(rèn)定”公鑰確實(shí)屬于此人”擅笔,并能生成公鑰的數(shù)字簽名的組織或機(jī)構(gòu)。CA有國(guó)際性組織和政府設(shè)立的組織屯援,也有通過提供認(rèn)證服務(wù)來盈利的組織猛们。

如何生成證書?

  1. 服務(wù)器將公鑰A給CA(公鑰是服務(wù)器的)
  2. CA用自己的私鑰B給公鑰A加密狞洋,生成數(shù)字簽名A
  3. CA把公鑰A弯淘,數(shù)字簽名A,附加一些服務(wù)器信息整合在一起徘铝,生成證書耳胎,發(fā)回給服務(wù)器惯吕。

注:私鑰B是用于加密公鑰A的惕它,私鑰B和公鑰A并不是配對(duì)的。

如何驗(yàn)證證書废登?

  1. 客戶端得到證書
  2. 客戶端得到證書的公鑰B(通過CA或其它途徑)
  3. 客戶端用公鑰B對(duì)證書中的數(shù)字簽名解密淹魄,得到哈希值
  4. 客戶端對(duì)公鑰進(jìn)行哈希值計(jì)算
  5. 兩個(gè)哈希值對(duì)比,如果相同堡距,則證書合法甲锡。

注:公鑰B和上述的私鑰B是配對(duì)的兆蕉,分別用于對(duì)證書的驗(yàn)證(解密)和生成(加密)。

證書作廢

當(dāng)用戶私鑰丟失缤沦、被盜時(shí)虎韵,認(rèn)證機(jī)構(gòu)需要對(duì)證書進(jìn)行作廢(revoke)。要作廢證書缸废,認(rèn)證機(jī)構(gòu)需要制作一張證書作廢清單(Certificate Revocation List)包蓝,簡(jiǎn)稱CRL

假設(shè)我們有Bob的證書,該證書有合法的認(rèn)證機(jī)構(gòu)簽名企量,而且在有效期內(nèi)测萎,但僅憑這些還不能說明該證書一定有效,還需要查詢認(rèn)證機(jī)構(gòu)最新的CRL届巩,并確認(rèn)該證書是否有效硅瞧。

使用場(chǎng)景

下面用兩個(gè)使用場(chǎng)景來幫助大家理解證書的作用。

客戶端在發(fā)送或接收消息之前恕汇,要驗(yàn)證服務(wù)器的合法性(這個(gè)服務(wù)器是真實(shí)的服務(wù)器腕唧,還是偽造者,我們不知道)

場(chǎng)景1

  1. 服務(wù)器生成公鑰和私鑰密碼對(duì)
  2. 服務(wù)器把公鑰給CA拇勃。CA生成證書四苇,發(fā)送給客戶端
  3. 客戶端驗(yàn)證證書,取得公鑰:此刻證明公鑰是合法的
  4. 客戶端用公鑰加密消息方咆,發(fā)送給服務(wù)器
  5. 服務(wù)器用私鑰解密消息(消息加密發(fā)送月腋,具有保密性)

場(chǎng)景2

  1. 服務(wù)器生成公鑰和私鑰密碼對(duì)
  2. 服務(wù)器生成消息,用私鑰對(duì)消息進(jìn)行數(shù)字簽名
  3. 服務(wù)器把公鑰給CA瓣赂。CA生成證書
  4. 服務(wù)器將消息榆骚,數(shù)字簽名,證書一起發(fā)送給客戶端
  5. 客戶端驗(yàn)證證書煌集,取得公鑰:此刻證明公鑰是合法的
  6. 客戶端用公鑰驗(yàn)證數(shù)字簽名妓肢,檢查消息的完整性和服務(wù)器的合法性

4.參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市苫纤,隨后出現(xiàn)的幾起案子碉钠,更是在濱河造成了極大的恐慌,老刑警劉巖卷拘,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喊废,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡栗弟,警方通過查閱死者的電腦和手機(jī)污筷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乍赫,“玉大人瓣蛀,你說我怎么就攤上這事陆蟆。” “怎么了惋增?”我有些...
    開封第一講書人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵叠殷,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我诈皿,道長(zhǎng)溪猿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任纫塌,我火速辦了婚禮诊县,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘措左。我一直安慰自己依痊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開白布怎披。 她就那樣靜靜地躺著胸嘁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪凉逛。 梳的紋絲不亂的頭發(fā)上性宏,一...
    開封第一講書人閱讀 51,155評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音状飞,去河邊找鬼毫胜。 笑死,一個(gè)胖子當(dāng)著我的面吹牛诬辈,可吹牛的內(nèi)容都是我干的酵使。 我是一名探鬼主播,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼焙糟,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼口渔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起穿撮,我...
    開封第一講書人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤缺脉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后悦穿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體攻礼,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年咧党,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了秘蛔。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片陨亡。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡傍衡,死狀恐怖深员,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蛙埂,我是刑警寧澤倦畅,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站绣的,受9級(jí)特大地震影響叠赐,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜屡江,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一芭概、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧惩嘉,春花似錦罢洲、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至耸峭,卻和暖如春桩蓉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背劳闹。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工院究, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人本涕。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓儡首,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親偏友。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蔬胯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 2018-Read-Record 記錄我的2018學(xué)習(xí)歷程 文中首先解釋了加密解密的一些基礎(chǔ)知識(shí)和概念氛濒,然后通過一...
    NinthDay閱讀 11,281評(píng)論 8 105
  • 數(shù)字證書就是網(wǎng)絡(luò)通訊中標(biāo)志通訊各方身份信息的一系列數(shù)據(jù),其作用類似于現(xiàn)實(shí)生活中的身份證鹅髓。它是由一個(gè)權(quán)威機(jī)構(gòu)發(fā)行的舞竿,...
    拉肚閱讀 21,139評(píng)論 1 17
  • 文中首先解釋了加密解密的一些基礎(chǔ)知識(shí)和概念,然后通過一個(gè)加密通信過程的例子說明了加密算法的作用窿冯,以及數(shù)字證書的出現(xiàn)...
    已認(rèn)證用戶閱讀 3,838評(píng)論 1 4
  • 數(shù)字證書原理 - 無恙 - 博客園 文中首先解釋了加密解密的一些基礎(chǔ)知識(shí)和概念骗奖,然后通過一個(gè)加密通信過程的例子說明...
    拉肚閱讀 1,662評(píng)論 0 3
  • 文中首先解釋了加密解密的一些基礎(chǔ)知識(shí)和概念,然后通過一個(gè)加密通信過程的例子說明了加密算法的作用,以及數(shù)字證書的出現(xiàn)...
    sunny沖哥閱讀 1,382評(píng)論 0 3