HTTP和HTTPS

HTTP —— 超文本傳輸協(xié)議資源

Http協(xié)議是一個基于請求與響應模式的肛捍、無狀態(tài)的隐绵、應用層的協(xié)議。

? ? ? 請求與響應模式:只有在客戶端請求后拙毫,服務器才會返回相應的數(shù)據(jù)給客戶端依许。服務器處理完客戶的請求,并收到客戶的應答后缀蹄,即斷開連接峭跳。

?????? 無狀態(tài)協(xié)議:同一個客戶端的這次請求和上次請求是沒有對應關(guān)系,對http服務器來說缺前,它并不知道這兩個請求來自同一個客戶端蛀醉。 為了解決這個問題, Web程序引入了Cookie機制來維護狀態(tài)衅码。

??????? 在Http/1.1使用了持續(xù)連接:就是萬維網(wǎng)服務器在發(fā)送響應后仍會在一段時間內(nèi)保持這條連接拯刁,使同一個客戶和該服務器可以繼續(xù)在這條連接上傳送后續(xù)的HTTP請求報文和響應報文。這種持續(xù)連接有兩種工作方式:非流水線方式和流水線方式逝段。

??????? 非流水線方式:是客戶在收到前一個響應后才能發(fā)出下一個請求垛玻。

??????? 流水線方式:是客戶在收到Http的響應報文之前就能夠接著發(fā)送新的請求報文。

??????? HTTP協(xié)議以明文方式發(fā)送內(nèi)容惹恃,不提供任何方式的數(shù)據(jù)加密夭谤,如果攻擊者截取了Web瀏覽器和網(wǎng)站服務器之間的傳輸報文,就可以直接讀懂其中的信息巫糙,因此朗儒,HTTP協(xié)議不適合傳輸一些敏感信息,比如:信用卡號、密碼等支付信息醉锄。

? ? ? ? 為了解決HTTP協(xié)議的這一缺陷乏悄,需要使用另一種協(xié)議:安全套接字層超文本傳輸協(xié)議HTTPS,為了數(shù)據(jù)傳輸?shù)陌踩也唬琀TTPS在HTTP的基礎上加入了SSL/TLS協(xié)議檩小,SSL依靠證書來驗證服務器的身份,并為瀏覽器和服務器之間的通信加密烟勋。

HTTPS——用安全套接字層傳送的超文本傳輸協(xié)議规求,簡單講是HTTP的安全版

https是以安全為目標的HTTP通道,簡單講是HTTP的安全版卵惦,即HTTP下加入SSL/TLS層阻肿,然后才進入到運輸層傳輸,HTTPS的安全基礎是SSL/TLS沮尿,因此加密的詳細內(nèi)容就需要SSL/TLS丛塌。

HTTPS和HTTP的區(qū)別主要如下:

1、https協(xié)議需要到ca申請證書畜疾,一般免費證書較少赴邻,因而需要一定費用。

2啡捶、http是超文本傳輸協(xié)議姥敛,信息是明文傳輸,https則是具有安全性的SSL/TLS加密傳輸協(xié)議届慈。

3徒溪、http和https使用的是完全不同的連接方式,用的端口也不一樣金顿,前者是80臊泌,后者是443。

4揍拆、http的連接很簡單渠概,是無狀態(tài)的;https協(xié)議是由SSL/TLS + HTTP協(xié)議構(gòu)建的可進行加密傳輸嫂拴、身份認證的網(wǎng)絡協(xié)議播揪,比http協(xié)議安全。

SSL/TLS

SSL:(Secure Socket Layer筒狠,安全套接字層)猪狈,為Netscape所研發(fā),用以保障在Internet上數(shù)據(jù)傳輸之安全辩恼,利用數(shù)據(jù)加密(Encryption)技術(shù)雇庙,可確保數(shù)據(jù)在網(wǎng)絡上之傳輸過程中不會被截取谓形。它已被廣泛地用于Web瀏覽器與服務器之間的身份認證和加密數(shù)據(jù)傳輸。SSL協(xié)議位于TCP/IP協(xié)議與各種應用層協(xié)議之間疆前,為數(shù)據(jù)通訊提供安全支持寒跳。SSL協(xié)議可分為兩層: SSL記錄協(xié)議(SSL Record Protocol):它建立在可靠的傳輸協(xié)議(如TCP)之上,為高層協(xié)議提供數(shù)據(jù)封裝竹椒、壓縮童太、加密等基本功能的支持。 SSL握手協(xié)議(SSL Handshake Protocol):它建立在SSL記錄協(xié)議之上胸完,用于在實際的數(shù)據(jù)傳輸開始前书释,通訊雙方進行身份認證、協(xié)商加密算法舶吗、交換加密密鑰等征冷。

TLS:(Transport Layer Security,傳輸層安全協(xié)議)誓琼,用于兩個應用程序之間提供保密性和數(shù)據(jù)完整性。TLS 1.0建立在SSL 3.0協(xié)議規(guī)范之上肴捉,是SSL 3.0的后續(xù)版本腹侣,可以理解為SSL 3.1,它是寫入了RFC的齿穗。該協(xié)議由兩層組成: TLS 記錄協(xié)議(TLS Record)和 TLS 握手協(xié)議(TLS Handshake)傲隶。較低的層為 TLS 記錄協(xié)議,位于某個可靠的傳輸協(xié)議(例如 TCP)上面窃页。

http的請求與響應

請求分為3部分:請求行跺株,請求頭,請求體

響應:響應行脖卖,響應頭乒省,響應體

狀態(tài)碼

Response 消息中的第一行叫做狀態(tài)行,由HTTP協(xié)議版本號畦木, 狀態(tài)碼袖扛, 狀態(tài)消息

三部分組成。狀態(tài)碼用來告訴HTTP客戶端,HTTP服務器是否產(chǎn)生了預期的Response.HTTP/1.1中定義了5類狀態(tài)碼十籍,

狀態(tài)碼由三位數(shù)字組成蛆封,第一個數(shù)字定義了響應的類別

1XX? 提示信息 - 表示請求已被成功接收,繼續(xù)處理

2XX? 成功 - 表示請求已被成功接收勾栗,理解惨篱,接受

3XX? 重定向 - 要完成請求必須進行更進一步的處理

4XX? 客戶端錯誤 -? 請求有語法錯誤或請求無法實現(xiàn)

5XX? 服務器端錯誤 -?? 服務器未能實現(xiàn)合法的請求


URL解析

URL(Uniform Resource Locator,統(tǒng)一資源定位符) 地址用于描述一個網(wǎng)絡上的資源,? 基本格式如下

schema://host[:port#]/path/.../[?query-string][#anchor]

scheme指定低層使用的協(xié)議(例如:http, https, ftp)

hostHTTP服務器的IP地址或者域名

port#HTTP服務器的默認端口是80围俘,這種情況下端口號可以省略砸讳。

如果使用了別的端口机断,必須指明,例如 http://www.cnblogs.com:8080/

path訪問資源的路徑

query-string發(fā)送給http服務器的數(shù)據(jù)

anchor-

URL 的一個例子

http://www.mywebsite.com/sj/test/test.aspx?name=sviergn&x=true#stuff

Schema:? ? ? ? ? ? ? ?? http

host:? ? ? ? ? ? ? ? ?? www.mywebsite.com

path:? ? ? ? ? ? ? ? ?? /sj/test/test.aspx

Query String:? ? ?? name=sviergn&x=true

Anchor:? ? ? ? ? ? ? ?? stuff

iOS如何利用AFN進行HTTPS請求

1绣夺、需要的資源:服務器端.cer證書吏奸,客戶端.p12證書及密碼

2、新建一個類:繼承自AFHTTPSessionManager陶耍,需要設置一下AFSecurityPolicy奋蔚,把模式設置為AFSSLPinningModeCertificate

//? 使用證書驗證模式

AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];

// allowInvalidCertificates 是否允許無效證書(也就是自建的證書),默認為NO烈钞,如果是需要驗證自建證書泊碑,需要設置為YES

securityPolicy.allowInvalidCertificates = YES;

為了實現(xiàn)客戶端驗證,必須調(diào)用setSessionDidReceiveAuthenticationChallengeBlock并替換AFNetworking的默認實現(xiàn)毯欣,其中包括從client.p12里解析客戶端證書馒过。

http和https參考自:http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html?

http://www.cnblogs.com/wxgblogs/p/5641405.html?

http://www.mahaixiang.cn/internet/1233.html?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市酗钞,隨后出現(xiàn)的幾起案子腹忽,更是在濱河造成了極大的恐慌,老刑警劉巖砚作,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件窘奏,死亡現(xiàn)場離奇詭異,居然都是意外死亡葫录,警方通過查閱死者的電腦和手機着裹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來米同,“玉大人骇扇,你說我怎么就攤上這事∶媪福” “怎么了少孝?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長但金。 經(jīng)常有香客問我韭山,道長,這世上最難降的妖魔是什么冷溃? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任钱磅,我火速辦了婚禮,結(jié)果婚禮上似枕,老公的妹妹穿的比我還像新娘盖淡。我一直安慰自己,他們只是感情好凿歼,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布褪迟。 她就那樣靜靜地躺著冗恨,像睡著了一般。 火紅的嫁衣襯著肌膚如雪味赃。 梳的紋絲不亂的頭發(fā)上掀抹,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天,我揣著相機與錄音心俗,去河邊找鬼傲武。 笑死,一個胖子當著我的面吹牛城榛,可吹牛的內(nèi)容都是我干的揪利。 我是一名探鬼主播,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼狠持,長吁一口氣:“原來是場噩夢啊……” “哼疟位!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起喘垂,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤甜刻,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后王污,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體罢吃,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年昭齐,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片矾柜。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡阱驾,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出怪蔑,到底是詐尸還是另有隱情里覆,我是刑警寧澤,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布缆瓣,位于F島的核電站喧枷,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏弓坞。R本人自食惡果不足惜隧甚,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望渡冻。 院中可真熱鬧戚扳,春花似錦、人聲如沸族吻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至砍艾,卻和暖如春蒂教,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背脆荷。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工凝垛, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人简烘。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓苔严,卻偏偏與公主長得像,于是被迫代替她去往敵國和親孤澎。 傳聞我的和親對象是個殘疾皇子届氢,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354

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