最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

簡單了解SSL/TLS協(xié)議

2021-08-05 13:18 作者:Vecloud_  | 我要投稿


今天小編就為大家?guī)硪黄P于SSL/TLS協(xié)議的文章。小編覺得挺不錯的,為此分享給大家做個參考。一起跟隨小編過來看看吧。?
TLS名為傳輸層安全協(xié)議(Transport Layer Protocol),這個協(xié)議是一套加密的通信協(xié)議。它的前身是SSL協(xié)議(安全套接層協(xié)議,Secure Sockets Layer)。這兩個協(xié)議的工作方式類似,但TLS協(xié)議針對SSL協(xié)議進行了一些改善。SSL/TLS協(xié)議利用加密的方式,在開放的互聯(lián)網環(huán)境中實現(xiàn)了加密通信,讓通信的雙方可以安心的說悄悄話。。?

加密SSL協(xié)議的基礎是加密技術。加密和解密是自古就有技術了。比如說古代的男女偷偷發(fā)生私情,不能被相互之間有血海深仇的兩個家族知道。男孩問女孩要不要一起私奔。女孩第二天傳來答復,上面寫著:?
K FQ?
男孩拿著這串字符翻來覆去想了半天,沒明白女孩的意思,就以為女孩不愿放棄優(yōu)渥的生活和他私奔。直到十年后,男孩忽然靈光一閃,發(fā)現(xiàn)如果把每個字母都替換成字母表上提前兩個的字母的話,這三個字符就變成了:?
I DO?

這種加密方法是將原來的某種信息按照某個規(guī)律打亂。打亂的方式稱為加密算法,而打亂過程中的參數(shù)就叫做密鑰(cipher code)。上面女孩的加密方式是把原字母替換為字母表上后固定位的字母。而密鑰就是固定的位數(shù)2了。發(fā)出信息的人根據(jù)密鑰來給信息加密,而接收信息的人利用相同的密鑰,來給信息解密。就好像一個帶鎖的盒子。發(fā)送信息的人將信息放到盒子里,用鑰匙鎖上。而接受信息的人則用相同的鑰匙打開。加密和解密用的是同一個密鑰,這種加密稱為對稱加密(symmetric encryption)。?

如果一對一的話,那么兩人需要交換一個密鑰。理論上,如果密鑰絕對安全,而且加密算法絕對復雜的話,對稱加密是很難破解的。但通信雙方很難絕對保證密鑰的安全。一旦有其他人竊取到密鑰,那么所有通信都變得不安全了。特別在一對多的話,如果共用同一套密鑰,那么某一方通信的破解就意味著所有通信的破解。二戰(zhàn)中盟軍的情報戰(zhàn)成果,很多都來自于破獲這種對稱加密的密鑰。盟軍破解了某個德國特工的加密手法,那么也就了解到納粹總部的加密手法了。?

二戰(zhàn)中德軍的傳奇加密機:Enigma?

對稱加密的薄弱之處在于給了太多人的鑰匙。如果換一種思路,只給特工鎖,而總部保有鑰匙,那就容易了。特工將信息用鎖鎖到盒子里,誰也打不開,除非到總部用唯一的一把鑰匙打開。只是這樣的話,特工每次出門都要帶上許多鎖,太容易被識破身份了??偛坷洗笙肓讼?,干脆就把造鎖的技術公開了。特工,或者任何其它人,可以就地取材,按照圖紙造鎖,但無法根據(jù)圖紙造出鑰匙。鑰匙只有總部的那一把。上面的關鍵是鎖和鑰匙工藝不同。知道了鎖,并不能知道鑰匙。這樣,總部可以將“造鎖”的方法公布給所有用戶。每個用戶可以用鎖來加密自己的信用卡信息。即使被別人竊聽到,也不用擔心:只有總部才有鑰匙呢!非對稱加密中,給所有人用的鎖被稱為公鑰(public key),總部自己保留的鑰匙被稱為私鑰(private key)。這樣一種鑰匙和鎖分離的加密算法就叫做非對稱加密(asymmetric encryption)。?

非對稱加密對稱加密的原理相對比較直觀,而非對稱加密聽起來就有些神奇。經過非對稱加密產生的密文,就算知道加密的方法,也無法獲知原文。實現(xiàn)了非對稱加密的經典算法是RSA算法。它來自于數(shù)論與計算機計數(shù)的奇妙結合。我們從下面的情境中體驗一下RSA算法的妙處。?

我是潛伏在龍鳳大酒樓的臥底。想讓下面信息以加密的方式發(fā)送到總部:?
A CHEF HIDE A BED?
廚子藏起來了一張床!這是如此的重要,需要立即通知總部。千萬重要的是,不能讓反革命的廚子知道。?

第一步是轉碼,也就是將英文轉換成某個對應的數(shù)字。這個對應很容易建立,比如:?
ABCDEFGHI123456789?
將上面的信息轉碼,獲得下面的數(shù)字序列:?

A CHEF HIDE A BED1 3856 8945 1 254這串數(shù)字完全沒有什么秘密可言。廚子發(fā)現(xiàn)了這串數(shù)字之后,很容易根據(jù)數(shù)字順序,對應字母表猜出來。?

為了和狡猾的廚子斗智斗勇,我們需要對這串數(shù)字進一步加密。使用總部發(fā)給我們的鎖,兩個數(shù)字:3和10。我們分為兩步處理。第一步是求乘方。第一個數(shù)字是3,也就是說,總部指示我們,求上面數(shù)字串的3次方:?
原字符串:1 ?3 ?8 ?5 ?6 ?8 ?9 ?4 ?5 ?1 ?2 ?5 ?4?
三次乘方: 1 27 512 125 216 512 729 64 125 ?1 ?8 125 64?
第二步是求余數(shù)。第二個上鎖的數(shù)字是10,將上面每個三次乘方除以10,獲得其余數(shù):?
余數(shù):?1 7 2 5 6 2 9 4 5 1 8 5 4?

將這串數(shù)字發(fā)回總部。中途被廚子偷看到,但一時不能了解其中的意思。如果還是像剛才一樣對應字母表的話,信息是:?
AGBEFBIDEAHED?
這串字母完全不包含正常的單詞。?

信息到了總部??偛块_始用神奇的鑰匙來解讀。這個鑰匙是3。在這個簡單的粒子里,鑰匙不小心和之前鎖中的一個數(shù)字相同。但這只是巧合。復雜的情況下很容易讓鎖和鑰匙不同。解鎖過程也是兩步。第一步求鑰匙次的乘方,即3次方。第二步求它們除以10(鎖之一)的余數(shù)。?
加密信息:1 ?7 ?2 ?5 ?6 ?2 ?9 ?4 ?5 ?1 ?8 ?5 ?4?
三次乘方:1 343 ?8 125 216 ?8 729 64 125 ?1 512 125 64 (這里用的是鑰匙的“3”)?
除十得余:1 ?3 ?8 ?5 ?6 ?8 ?9 ?4 ?5 ?1 ?2 ?5 ?4?
正是我們發(fā)送的信息。對應字母表,總部可以立即知道原來的信息。就此,我們簡單的體驗了RSA算法的使用過程。鑒于這里篇幅有限,這里不再詳細解釋RSA算法的原理。如果有興趣,可以參考我的另一篇文章:“不給力啊,老濕!”:RSA加密與破解?

SSL協(xié)議可以看到,非對稱加密從安全性上要強過對稱加密。但天下沒有免費的午餐。非對稱加密的運算成本同樣也比較高。為了兼顧效率和安全,SSL協(xié)議同時使用了非對稱和對稱加密。它用對稱加密算法來加密信息本身。但對于安全性比較脆弱的對稱加密密鑰,則采用非對稱加密的方式來傳輸。?

SSL協(xié)議分為客戶端和服務器端。通信的核心步驟很簡單:?
1.?雙方利用明文通信的方式確立使用的加密算法。?
2.?利用非對稱算法通信,交換一個密鑰。?
3.?該密鑰用于對稱加密算法,加密接下來的通信正文。?

可以看到,SSL協(xié)議的關鍵是用一個非常安全的方式來交換一個對稱密鑰。交換的過程會比上面的描述更加復雜一些。?
1.?客戶發(fā)起請求時,除了說明自己支持的非對稱加密算法,還會附加一個客戶端隨機數(shù)(client random)。?
2.?服務器回復請求時,會確定非對稱加密算法和哈希函數(shù),并附上公鑰。此外,服務器端還會在此次通信中附加一個服務器端隨機數(shù)(server random)。?
3.?客戶端會產生第三個隨機數(shù)(Premaster secret),然后利用服務器確定的非對稱加密算法和公鑰來加密這個隨機數(shù),再發(fā)送給服務器端。?
4.?客戶端用自己的私鑰解密第三個隨機數(shù)。?
4.?這樣,客戶端和服務器端都知道了三個隨機數(shù)。雙方各自用商量好的哈希函數(shù)從三個隨機數(shù)獲得對稱加密的密鑰。?
即使明文通信的時候,某些信息被竊聽,但第三步的非對稱加密通信部分可以保證竊聽者無法完整的獲得三個隨機數(shù)。這樣,竊聽者還是不知道對稱加密的密鑰是什么。這樣,對稱加密的密鑰就在一個安全的環(huán)境中獲得了。為了進一步安全,服務器的公鑰會包含在一個數(shù)字證書中發(fā)送給客戶。這樣,客戶還可以通過數(shù)字證書來驗證服務器的身份,以免服務器本身出現(xiàn)問題。?

今年來使用越來越廣泛的HTTPS協(xié)議就是在SSL/TLS協(xié)議的基礎上進行通信。HTTP協(xié)議在通信過程中要經過多重路由,很容易被竊聽。經過SSL協(xié)議加密的信息就算被竊聽,也只能被通信目的地的人解讀,從而保證了信息的安全。所以,如果所訪問的網站沒有使用HTTPS協(xié)議,那么在輸入銀行賬號和密碼之類的敏感信息時,就要三思而后行了。?
當瀏覽器出現(xiàn)鎖的符號時,說明訪問的資源使用了HTTPS通信?

以上就是關于SSL/TLS協(xié)議的詳細內容了,看完之后是否有所收獲呢?如果想了解更多相關內容,歡迎關注http://www.vecloud.com/!?


簡單了解SSL/TLS協(xié)議的評論 (共 條)

分享到微博請遵守國家法律
任丘市| 收藏| 普格县| 普洱| 繁峙县| 且末县| 右玉县| 金湖县| 青海省| 塘沽区| 荔浦县| 沁阳市| 密山市| 衡水市| 威信县| 新民市| 孝义市| 甘泉县| 武城县| 龙海市| 安康市| 新龙县| 梅河口市| 新余市| 阿图什市| 沾益县| 永新县| 浮山县| 茂名市| 郑州市| 泽库县| 唐海县| 沙田区| 泾川县| 竹山县| 江孜县| 闵行区| 宜丰县| 枣阳市| 屏山县| 桃园市|