學(xué)點(diǎn)密碼知識(shí)之SSL/TSL

在網(wǎng)絡(luò)安全中我們經(jīng)常會(huì)遇到很多的安全問(wèn)題,我們拋去前端漏洞,來(lái)聊聊網(wǎng)絡(luò)通信和網(wǎng)絡(luò)協(xié)議方面的,很多時(shí)候都會(huì)聽(tīng)到https,加密解密等,遇到漏洞,安全解決方案很多也都是用安全通道傳輸,用對(duì)稱(chēng)加密,用非對(duì)稱(chēng)加密等等解決方案

我們就針對(duì)這些簡(jiǎn)單介紹下密碼方面的知識(shí).

來(lái)看這個(gè)場(chǎng)景:

有一天,Bob正在瀏覽網(wǎng)頁(yè)的時(shí)候,遇到頁(yè)面彈出一個(gè)框框,上面寫(xiě)著”老婆不在的時(shí)候玩的游戲哦”,bob很興奮的打開(kāi)開(kāi)始玩游戲,為了看到你懂的的時(shí)候,已經(jīng)花了上千元了,bob非常氣憤,打電話給網(wǎng)站客服,說(shuō)你們騙人,我都充了那么多錢(qián)了,客服來(lái)了句,我們沒(méi)有這個(gè)游戲推廣啊,這個(gè)發(fā)生了啥?Bob說(shuō)這個(gè)在你們網(wǎng)站上彈出來(lái)的推廣啊.

另一種場(chǎng)景,bob使用信用卡買(mǎi)東西,信用卡沒(méi)有設(shè)置密碼驗(yàn)證,輸入了信用卡卡號(hào)和cvv2碼之后支付成功了,隔了幾天之后,bob收到了信用卡客服電話,說(shuō)你的信用卡已經(jīng)刷爆了,這個(gè)發(fā)生了什么事情?我只用過(guò)一次,只支付了100元啊.

這里遇到的兩個(gè)問(wèn)題:

正常的網(wǎng)頁(yè)中被插入了不正常的代碼,或者登入到了一個(gè)假冒的頁(yè)面網(wǎng)站
信用卡信息被其他人利用了

那么來(lái)考慮解決方法:

保證網(wǎng)頁(yè)信息在傳輸過(guò)程中不被其他人篡改(完整性)
保證個(gè)人敏感信息傳輸過(guò)程中不被其他人竊聽(tīng)(機(jī)密性)
我們還得保證登入的站點(diǎn)是正確,可靠的網(wǎng)站(認(rèn)證)

我們可以考慮下是不是可以通過(guò)加密來(lái)解決這些問(wèn)題呢?

首先我們需要了解幾個(gè)加密機(jī)制:對(duì)稱(chēng)加密,非對(duì)稱(chēng)加密,消息認(rèn)證碼,簽名,證書(shū)

對(duì)稱(chēng)加密:

你們之間決定對(duì)信息進(jìn)行了加密,你們之間商量好了一個(gè)密碼,你可以想象成一個(gè)密碼箱,秘密信息鎖在密碼箱中,只有你們兩個(gè)知道密碼,這樣Eve拿到了密碼箱,不知道密碼,他就無(wú)法獲取到你們之間的傳遞的信息了

在網(wǎng)絡(luò)中傳輸信息就不能有密碼箱存在了,那么可以可以協(xié)商一個(gè)密碼,被成為密鑰,比如一串?dāng)?shù)字:778279381038710238676,這串?dāng)?shù)字是只有你們之間才知道的.Alice使用這串密鑰加密信息:”星期天在河邊交易”.

我們暫時(shí)不考慮加密的具體實(shí)施,最終形成的信息是:”阿達(dá)色調(diào)的完全”,這個(gè)在網(wǎng)絡(luò)中傳輸,Eve拿到的信息也只是這個(gè),沒(méi)有任何意義的,信息傳遞到blob那邊,使用同樣的密鑰解密出字符串:”星期天在河邊交易”.

這樣就完成了信息的加密傳輸,這種方式就叫做對(duì)稱(chēng)加密.從例子來(lái)看,也就是加密和解密中使用的是同一套密鑰

非對(duì)稱(chēng)加密

從非對(duì)稱(chēng)就可以看出和對(duì)稱(chēng)加密的不同,對(duì)稱(chēng)加密是使用同一套密鑰,那么非對(duì)稱(chēng)加密就是使用的不是同一套密鑰.

舉例來(lái)說(shuō),Alice完成了信息的加密,但是她的密鑰信息泄漏了,eve拿到了他的密鑰信息和加密后的信息,在對(duì)稱(chēng)加密中這樣eve就能直接拿到明文信息了,但是在這次Alice和Blob采用了非對(duì)稱(chēng)加密的方式,eve發(fā)現(xiàn)拿到的密鑰去解密信息,發(fā)現(xiàn)還是無(wú)意義的字符串:”阿三大哇塞大鍋飯”,以為不是啥敏感信息,傳遞到了Blob,blob使用自己的密鑰成功解密了信息:”星期天在河邊交易”

非對(duì)稱(chēng)加密就是加密密鑰和解密密鑰是不一樣的

消息認(rèn)證碼和證書(shū)

消息認(rèn)證碼是一種域密鑰相關(guān)聯(lián)的單向散列函數(shù),單向散列函數(shù)就是我們常說(shuō)的hash,常見(jiàn)的包括了md5,sha1等等

證書(shū):為公鑰加上數(shù)字簽名,和駕照相似,里面記錄了姓名,組織,郵箱,地址等個(gè)人信息,以及屬于此人的公鑰,并由認(rèn)證機(jī)構(gòu)施加數(shù)字簽名.確認(rèn)該公鑰確實(shí)屬于此人.

證書(shū)也是在安全中用到最多的一種機(jī)制

簽名

數(shù)字簽名在安全中很重要,后面找個(gè)時(shí)間單獨(dú)說(shuō)說(shuō)

要是了解非對(duì)稱(chēng)之后可以看下面這個(gè):

非對(duì)稱(chēng)加密:加密密鑰只能由解密的人持有,加密的密鑰可以任何人持有
數(shù)字簽名:簽名密鑰只有簽名的人持有,驗(yàn)證密鑰可以任何人持有

好了,下面我們來(lái)解決我們剛才遇到的問(wèn)題:

保證機(jī)密性,可以考慮使用對(duì)稱(chēng)加密,我們生成隨機(jī)密鑰,通過(guò)非對(duì)稱(chēng)加密機(jī)制把密鑰發(fā)送給通信對(duì)象

要保證完整性,可以考慮消息認(rèn)證碼,要保證認(rèn)證問(wèn)題,可以考慮使用證書(shū)

ok,我們只要把這三個(gè)方案放到一個(gè)框架中,就解決問(wèn)題了,那么這個(gè)就是SSL/TSL協(xié)議

HTTPS

用SSL和TSL作為通信進(jìn)行加密,然后再進(jìn)行http的傳輸,這樣url產(chǎn)生的就是https://開(kāi)頭的,大家可以訪問(wèn)baidu看看.

除了http,SSL/TSL也可以用保護(hù)其他的協(xié)議:smtp,pop3等等,這樣收發(fā)郵件也有了安全的傳輸

SSL/TSL的區(qū)別

TLS的主要目標(biāo)是使SSL更安全肆捕,并使協(xié)議的規(guī)范更精確和完善

1 更安全的MAC算法
2 更嚴(yán)密的警報(bào)
3 “灰色區(qū)域”規(guī)范的更明確的定義

使用SSL/TSL進(jìn)行通信
握手協(xié)議

握手協(xié)議是TLS協(xié)議的一部分,復(fù)雜生成共享密鑰和交換證書(shū),其中,生成共享密鑰是為了進(jìn)行密碼通信,交換證書(shū)是為了通信雙方互相進(jìn)行認(rèn)證

客戶(hù)端:”你好,我能理解的密碼套件有RSA/3DES,或者DSS/AES”,請(qǐng)問(wèn)我們使用哪一種進(jìn)行通信呢?” (ClientHello 消息)

服務(wù)器:”你好,我們使用RSA/3DES來(lái)進(jìn)行通信吧.” (ServerHello 消息)

服務(wù)器:”好,這個(gè)是我的證書(shū)” (Certificate消息:證書(shū)清單)

服務(wù)器:”我們用這些信息做密碼交換吧”(ServerKeyExchange消息)

服務(wù)器:”還有請(qǐng)給我看下你的證書(shū)” (CertificateRequest消息)

服務(wù)器:”我到此結(jié)束” (ServerHelloDone消息)

客戶(hù)端:”這個(gè)是我的證書(shū)”( Certificate證書(shū)消息)

客戶(hù)端:”這個(gè)我進(jìn)過(guò)加密的預(yù)備主密碼”(ClientKeyExchange消息)

客戶(hù)端:”我確實(shí)是客戶(hù)端證書(shū)的持有者” (CertificateVerrify消息)

客戶(hù)端:”好,現(xiàn)在我切換密碼了” (ChangeCiperSpec)

客戶(hù)端:”結(jié)束” (Finished)

服務(wù)器:”我要切換密鑰了”(ChangeCiperSpec)

服務(wù)器:”握手結(jié)束”

經(jīng)過(guò)這些流程:

客戶(hù)端獲取到服務(wù)器的合法公鑰,完成服務(wù)器認(rèn)證
服務(wù)器獲取到客戶(hù)端的合法公鑰,完成后服務(wù)器認(rèn)證
客戶(hù)端和服務(wù)器生成了密碼通信過(guò)程中的共享密鑰

客戶(hù)端和服務(wù)器生成了消息認(rèn)證碼中的使用的共享密鑰

#######密碼規(guī)格變更協(xié)議

用戶(hù)密碼切換的同步

警告協(xié)議

發(fā)生了錯(cuò)誤異常后使用

應(yīng)用數(shù)據(jù)協(xié)議

用于和通信對(duì)象之間傳送應(yīng)用數(shù)據(jù)

主密碼

主密碼是TSL客戶(hù)端和服務(wù)器之間協(xié)商出來(lái)的一個(gè)秘密的數(shù)值

對(duì)SSL/TSL的已知攻擊方式

OPENSSL的心臟出血
POODLE 攻擊
FREAK攻擊
對(duì)偽隨機(jī)數(shù)生成器的攻擊

利用證書(shū)的時(shí)間差進(jìn)行攻擊

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末瓷马,一起剝皮案震驚了整個(gè)濱河市长捧,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌屯伞,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異嗅绸,居然都是意外死亡宁脊,警方通過(guò)查閱死者的電腦和手機(jī)断国,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)榆苞,“玉大人稳衬,你說(shuō)我怎么就攤上這事∮锍恚” “怎么了宋彼?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)仙畦。 經(jīng)常有香客問(wèn)我输涕,道長(zhǎng),這世上最難降的妖魔是什么慨畸? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任莱坎,我火速辦了婚禮,結(jié)果婚禮上寸士,老公的妹妹穿的比我還像新娘檐什。我一直安慰自己,他們只是感情好弱卡,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布乃正。 她就那樣靜靜地躺著,像睡著了一般婶博。 火紅的嫁衣襯著肌膚如雪瓮具。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,292評(píng)論 1 301
  • 那天凡人,我揣著相機(jī)與錄音名党,去河邊找鬼。 笑死挠轴,一個(gè)胖子當(dāng)著我的面吹牛传睹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播岸晦,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼欧啤,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼睛藻!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起堂油,我...
    開(kāi)封第一講書(shū)人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤修档,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后府框,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體吱窝,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年迫靖,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了院峡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡系宜,死狀恐怖照激,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情盹牧,我是刑警寧澤俩垃,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站汰寓,受9級(jí)特大地震影響口柳,放射性物質(zhì)發(fā)生泄漏有滑。R本人自食惡果不足惜跃闹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一望艺、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧肌访,春花似錦、人聲如沸吼驶。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至浅缸,卻和暖如春轨帜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背衩椒。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工蚌父, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留哮兰,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓苟弛,卻偏偏與公主長(zhǎng)得像喝滞,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子膏秫,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

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