知識庫
ssl是什么?打開站長工具經(jīng)常看到。最近谷歌要求Android下一個(gè)版本將默認(rèn)使用加密連接,這意味著安卓設(shè)備的這塊app無論是接收或者發(fā)送數(shù)據(jù),未來都不能明文傳輸,需要使用TLS(Transport Layer Security)傳輸層安全協(xié)議。這不難理解ssl了,HTTPS=ssl,TLS和SSL,甚至常常放在一起。
服務(wù)器測試申請:http://www.9358l.com/
https對建站的朋友不陌生,What’s https?簡單的說,https就是給http帶了一個(gè)面具,即使別人拿到了本人,也不知道這是誰。客戶端(包括browser、手機(jī)app等)和服務(wù)器每次發(fā)http包的時(shí)候,都對這個(gè)包加個(gè)密,讓第三者看到的只是加密后的亂碼(我只想對你說:你猜你猜你猜猜猜),到對端以后再解密。
這個(gè)面具,原來是叫SSL(Secure Sockets Layer),最先是Netscape弄出來的,后來哥們兒完蛋了,就慢慢變了名字,叫TLS(Transport Layer Security Protocol)。具體的區(qū)別可以去wikipedia搜索TLS,他們之間的升級細(xì)節(jié)講述的非常詳細(xì)(這一點(diǎn)百度百科真的差的有點(diǎn)遠(yuǎn)~)。
這個(gè)面具跑在TCP的上層,在TCP連接完成后且HTTP啟動前,協(xié)商一些跟加密相關(guān)的工作,完成協(xié)商之后,就可以對要發(fā)送的http包加密/解密了。
那他到底協(xié)商了些啥呢?其實(shí)就是保證安全的幾個(gè)問題:
1、服務(wù)器要證明自己是靠譜的、安全的,不然給一個(gè)假網(wǎng)站發(fā)加密的密文就跟裸奔沒啥區(qū)別
2、服務(wù)器和客戶端通訊需要的加密算法和加密密鑰
TLS:(Transport Layer Security,傳輸層安全協(xié)議),用于兩個(gè)應(yīng)用程序之間提供保密性和數(shù)據(jù)完整性。
SSL協(xié)議運(yùn)行的基礎(chǔ)是B2C信息保密的承諾,特點(diǎn)是有利于商家而不利于消費(fèi)者。但隨著互聯(lián)網(wǎng)的發(fā)展,各中企業(yè)和個(gè)人也參與進(jìn)來,這樣在網(wǎng)絡(luò)支付過程中的單一認(rèn)證問題就越來越突出。雖然在SSL3.0中通過數(shù)字簽名和數(shù)字證書可實(shí)現(xiàn)瀏覽器和Web服務(wù)器雙方的身份驗(yàn)證,但是SSL協(xié)議仍存在一些問題。
而TLS是IETF(Internet Engineering Task Force)制定的一種新的協(xié)議,它建立在SSL 3.0協(xié)議規(guī)范之上,是SSL 3.0的后續(xù)版本。但TLS與SSL3.0之間存在著顯著的差別,主要是它們所支持的加密算法不同,所以TLS與SSL3.0不能互操作。
1、加密/解密算法:能加密同時(shí)能反解的,就是加解密算法。按照加解密的密鑰是否一樣,又分為對稱和非對稱算法。比如對稱加密算法:AES、DES;非對稱加密算法:RSA。
2、摘要算法:就是只用來做摘要、簽名、驗(yàn)證防止被別人篡改,基本不能反解(有可能可以通過碰撞暴力破解)。比如:MD5、SHA。
那服務(wù)器和客戶端接下來就協(xié)商一下,我們要用什么加密解密算法和密鑰防止別人看見,用什么摘要算法,防止別人篡改。一般來講,對稱加密算法效率會比非對稱高,所以通常選擇對稱加密的AES較多。雙方通過某種方式協(xié)商出一個(gè)密鑰,后面就通過這個(gè)密鑰和加密算法進(jìn)行加解密。
客戶端發(fā)送一個(gè):“地振高岡,一派溪山千古秀”
服務(wù)端回復(fù)一個(gè):“門朝大海,三河合水萬年流”
整個(gè)過程大體就是這樣,后面雙方就開始發(fā)HTTP的加密包,對方解包得到對應(yīng)的HTTP數(shù)據(jù)。通過上面的分析是不是對ssl是什么,和https、tls的認(rèn)識有個(gè)深刻的理解了!ssl證書對網(wǎng)站還是非常有用處的,特別是能避免網(wǎng)站被博彩網(wǎng)站刷流量,當(dāng)然網(wǎng)絡(luò)安全,最終終端服務(wù)器還是重點(diǎn)。