成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

HTTP的識別,認(rèn)證與安全——《HTTP權(quán)威指南》系列

call_me_R / 685人閱讀

摘要:首發(fā)地址識別認(rèn)證與安全第三部分的章提供了一系列的技術(shù)和機器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。安全使用基本認(rèn)證的唯一方式就是將其與配合使用。加密之前的原始報文通常被稱為明文或。

WilsonLiu"s blog 首發(fā)地址

識別,認(rèn)證與安全

第三部分的4章提供了一系列的技術(shù)和機器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。

客戶端識別與cookie機制 第十一章

HTTP最初是一個匿名,無狀態(tài)的請求/響應(yīng)協(xié)議。服務(wù)器處理來自客戶端的請求,然后向客戶端回送一條響應(yīng)。web服務(wù)器幾乎沒有什么信息可以用來判定是哪個用戶發(fā)送的請求,也無法記錄來訪用戶的請求序列。

用戶識別機制

承載用戶身份信息的HTTP首部

客戶端IP地址跟蹤,通過用戶的IP地址對其進(jìn)行識別

用戶登錄,用認(rèn)證方式來識別用戶

胖URL,一種在URL中嵌入識別信息的技術(shù)

cookie,一種功能強大且高效的持久身份識別技術(shù)

HTTP首部

下表給出了7種常見的用來承載用戶相關(guān)信息的HTTP請求首部。后面3個首部是擴展類型的請求首部。

首部名稱 描述
From 用戶的E-mail地址
User-Agent 用戶的瀏覽器軟件
Referer 用戶是從這個頁面上依照鏈接跳轉(zhuǎn)過來的
Authorization 用戶名和密碼
Client-IP 客戶端的IP地址
X-Forwarded-For 客戶端的IP地址
Cookie 服務(wù)器產(chǎn)生的ID標(biāo)簽
用戶登錄

為了使web站點的登錄更加簡便,HTTP中包含了一種內(nèi)建機制,可以用WWW-Authenticate首部和Authorization首部向web站點傳送用戶的相關(guān)信息。一旦登錄,瀏覽器就可以不斷地在每條發(fā)往這個站點的請求中發(fā)送這個登錄信息了。

缺點:保密性不強,不能跨站點,不同的站點需要重新輸入賬戶密碼。

胖URL

可以通過胖URL將服務(wù)器上若干個獨立的HTTP事務(wù)捆綁成一個"會話"或"訪問"。用戶首次訪問這個web站點時,會生成一個唯一的ID,用服務(wù)器可以識別的方式將這個ID添加到URL中,然后服務(wù)器就會將客戶端重新導(dǎo)向這個胖URL。

問題:

丑陋的URL

無法共享URL

破壞緩存

額外的服務(wù)器負(fù)荷

逃逸口

在會話間是非持久的

cookie

cookie是當(dāng)前識別用戶,實現(xiàn)持久會話的最好方式。最初由網(wǎng)景公司開發(fā),但現(xiàn)在所有的主要瀏覽器都支持他。

cookie的類型

可以籠統(tǒng)的分為:會話cookie和持久cookie。會話cookie和持久cookie的唯一區(qū)別就是他們的過期時間。 如果設(shè)置了Discard參數(shù),或者沒有設(shè)置ExpiresMax-Age參數(shù)來說明擴展的過期時間,這個cookie就是一個會話cookie。

不同的站點使用不同的cookie

cookie的域?qū)傩?/strong>
產(chǎn)生cookie的服務(wù)器可以向Set-Cookie響應(yīng)首部添加一個Domain屬性來控制哪些站點開業(yè)看到那個cookie。

Set-cookie: user="wilson";domain="wilsonliu.cn"

則用戶訪問的任何以wilsonliu.cn結(jié)尾的站點都會講此cookie發(fā)布出去。

cookie的路徑屬性
cookie規(guī)范甚至允許用戶將cookie與部分web站點關(guān)聯(lián)起來。可以通過Path屬性來實現(xiàn)這一功能。

Set-cookie: year="21";domain="wilsonliu.cn";path=/year/

則只會在/year/下的站點時才會發(fā)布此cookie。

cookie成分 cookie版本0 (Netscape)

Set-Cookie首部

Name=Value

Expires

domain

Path

Secure

cookie首部
客戶端發(fā)送請求時,會將所有與域,路徑,安全過濾器匹配的未過期的cookie都發(fā)送給這個站點。

cookie版本1 (RFC 2965)

Set-Cookie2

Name = Value

Version

Comment

CommentURL

Discard

domain

Max-Age

Path

Port

Secure

cookie首部
版本1的cookie會帶回與傳輸?shù)拿總€cookie相關(guān)的附加信息,用來描述每個cookie途徑的過濾器。每個匹配的cookie都必須包含來自相應(yīng)的Set-Cookie2首部的所有Domain,Port和Path屬性。

基本認(rèn)證機制 第十二章

基本認(rèn)證質(zhì)詢首部

HTTP/1.0 401 Unauthorized
WWW-Authenticate: Basic realm=quoted-realm

響應(yīng)首部(通過base64編碼傳輸)

Authorization:Basic base64-username-and-password
摘要認(rèn)證 第十三章

基本認(rèn)證便捷靈活,但極不安全。用戶名與密碼明文傳輸,也沒有采取任何措施防止對報文的篡改。安全使用基本認(rèn)證的唯一方式就是將其與SSL配合使用。

摘要認(rèn)證與基本認(rèn)證兼容。但卻更為安全。

摘要認(rèn)證的改進(jìn)

永遠(yuǎn)不會以明文的方式在網(wǎng)絡(luò)上發(fā)送密碼

可以防止惡意用戶捕獲并重放認(rèn)證的握手過程

可以有選擇地防止對報文內(nèi)容的篡改

防范其他幾種常見的攻擊方式

用摘要保護(hù)密碼

摘要認(rèn)證遵循的箴言是"絕不通過網(wǎng)絡(luò)發(fā)送密碼"??蛻舳瞬粫l(fā)送密碼,而是會發(fā)送一個“指紋”或密碼的"摘要",這是密碼的不可逆擾碼。

單向摘要

摘要是"對信息主體的濃縮"。摘要是一種單向函數(shù),主要用于將無限的輸入值轉(zhuǎn)換為有限的濃縮輸出值。常見的摘要函數(shù)MD5,會將任意長度的字節(jié)序列轉(zhuǎn)換為一個128位的摘要。
有時也將摘要函數(shù)稱為加密的校驗和,單向散列函數(shù)或指紋函數(shù)。

用隨機數(shù)防止重放攻擊

使用單向摘要就無需以明文形式發(fā)送密碼,沒有哪個而已用戶能夠輕易地從摘要中解碼出原始密碼。

但是僅僅隱藏密碼并不能避免危險,因為即便不知道密碼,也可以截獲摘要,并重放給服務(wù)器。摘要和密碼一樣好用。

為防止此類重放攻擊的發(fā)生服務(wù)器可以向客戶端發(fā)送一個稱為隨機數(shù)(nonce)的特殊令牌,這個數(shù)會經(jīng)常發(fā)生變化(可能是每毫秒,或者是每次認(rèn)證都變化)??蛻舳嗽谟嬎阏耙葘⑦@個隨機數(shù)令牌附加到密碼上去。

摘要的計算

摘要認(rèn)證的核心就是對公共信息,保密信息和有時限的隨機值這個組合的單項摘要。

數(shù)據(jù)

與安全性相關(guān)的數(shù)據(jù)(A1) ——包含有用戶名,密碼,保護(hù)域和隨機數(shù)等內(nèi)容

與報文有關(guān)的數(shù)據(jù)(A2) ——比如URL,請求方法和報文實體,A2有助于防止方法,資源或報文被篡改

預(yù)授權(quán)

在普通的認(rèn)證方式中,事務(wù)結(jié)束之前,每條請求都要有一次請求/質(zhì)詢的循環(huán)。
如果客戶端事先知道下一個隨機數(shù)是什么,就可以取消這個請求/質(zhì)詢循環(huán)。

服務(wù)器預(yù)先在Authentication-Info成功首部中發(fā)送下一個隨機數(shù)

服務(wù)器允許在一小段時間內(nèi)使用同一個隨機數(shù)

客戶端和服務(wù)器使用同步的,可預(yù)測的隨機數(shù)生成算法

應(yīng)該考慮的實際問題

多重質(zhì)詢

差錯處理

保護(hù)空間

重寫URI

緩存

安全性考慮

首部篡改

重放攻擊

多重認(rèn)證機制

詞典攻擊

惡意代理攻擊和中間人攻擊

選擇明文攻擊

存儲密碼

安全HTTP 第十四章 保護(hù)HTTP的安全

服務(wù)器認(rèn)證

客戶端認(rèn)證

完整性

加密

效率

普適性

管理的可擴展性

適應(yīng)性

在社會的可行性

HTTPS

HTTPS是最流行的HTTP安全形式,它是由網(wǎng)景公司首創(chuàng),所有主要的瀏覽器和服務(wù)器都支持此協(xié)議。
使用HTTPS時,所有的HTTP請求和響應(yīng)數(shù)據(jù)在發(fā)送到網(wǎng)絡(luò)之前,都要進(jìn)行加密。HTTPS在HTTP下面提供了一個傳輸級的密碼安全層——可以使用SSL,也可以使用其后繼者,傳輸層安全(Transport Layer Security,TLS)。

大部分困難的編碼及解碼工作都是在SSL庫中完成的,所以web客戶端和服務(wù)器在使用安全HTTP時無需過多地修改器協(xié)議處理邏輯。在大多數(shù)情況下,只需要用SSL的輸入/輸出調(diào)用取代TCP的調(diào)用,再增加其他幾個調(diào)用來配置和管理安全信息就行了。

數(shù)字加密

密碼 對文本進(jìn)行編碼,使偷窺者無法識別的算法

密鑰 改變密碼行為的數(shù)字化參數(shù)

對稱密鑰加密系統(tǒng) 編/解碼使用相同密鑰的算法

不對稱密鑰加密系統(tǒng) 編/解碼使用不同密鑰的算法

公開密鑰加密系統(tǒng) 一種能夠使數(shù)百萬計算機便捷地發(fā)送機密報文的系統(tǒng)

數(shù)字簽名 用來驗證報文未被偽造或篡改的校驗和

數(shù)字證書 由一個可信的組織驗證和簽發(fā)的識別信息

密碼

密碼學(xué)基于一種名為密碼(cipher)的秘密代碼。密碼是一套編碼方案——一種特殊的報文編碼方式和一種稍后使用的相應(yīng)解碼方式的結(jié)合體。加密之前的原始報文通常被稱為明文(plaintext或cleartext)。使用了密碼之后的編碼報文通常被稱作密文(ciphertext)。

使用密鑰的密碼

編碼算法和編碼機器都可能落入敵人手中,所以大部分機器上都有一些盤號,可以將其設(shè)置為大量不同的值以改變密碼的工作方式。這些密碼參數(shù)被稱為密鑰(key),要在密碼機中輸入正確的密鑰,解密過程才能正確進(jìn)行。

對稱密鑰加密技術(shù)

編碼時使用的密鑰值和解碼時一樣,這就是對稱密鑰(symmetric-key)。

保持密鑰的機密狀態(tài)是很重要的,在很多情況下,編/解碼算法都是眾所周知的,因此密鑰就是唯一保密的東西了。好的加密算法會迫使攻擊者試遍每一個可能的密鑰,才能破解代碼。用暴力去嘗試所有的密鑰值稱為枚舉攻擊(enumeration attack)??捎妹荑€的數(shù)量取決于密鑰中的位數(shù),以及可能的密鑰中有多少是有效的。

對稱密鑰加密技術(shù)的缺點之一就是發(fā)送者和接受者在互相對話之前,一定要有一個共享的保密密鑰。每對通信實體都需要自己的私有密鑰。如果有N個節(jié)點,每個節(jié)點都要和其他所有的N-1個節(jié)點進(jìn)行安全對話,總共需要N的平方個保密密鑰,這將是一個管理噩夢。

公開密鑰加密技術(shù)

公開密鑰使用了2個非對稱密鑰:一個用來對主機報文編碼,另外一個用來對主機報文解碼。編碼密鑰是眾所周知的,但只要主機才知道私有的解密密鑰。
所有的公開密鑰非對稱加密系統(tǒng)所面臨的共同挑戰(zhàn)是,要確保即便有人擁有了下面所有的線索,也無法計算出保密的私有密鑰:

公開密鑰

一小片攔截下來的密文(可通過對網(wǎng)絡(luò)的嗅探獲取)

一條報文及與之相關(guān)的密文(對任意一段文本運行加密器就可以得到)

混合加密系統(tǒng)和會話密鑰

兩節(jié)點間通過便捷的公開密鑰加密技術(shù)建立起安全通信,然后再用那條安全的通道產(chǎn)生并發(fā)送臨時的隨即對稱密鑰,通過更快的對稱加密技術(shù)對其余的數(shù)據(jù)進(jìn)行加密。

數(shù)字簽名

除了加/解密報文之外,還可以用加密系統(tǒng)對報文進(jìn)行簽名(sign),以說明是誰編寫的報文,同時證明報文未被篡改過。這種技術(shù)被稱為數(shù)字簽名(digital signing)。

客戶端將變長報文提取為定長的摘要

客戶端對摘要應(yīng)用了一個"簽名"函數(shù),這個函數(shù)會將用戶的私有密鑰作為參數(shù)。因為只有用戶才知道私有密鑰,所以正確的簽名函數(shù)會說明簽名者就是其所有者。

一旦計算出簽名,客戶端就將其附加在報文的末尾,并將報文和簽名都發(fā)送給對方。

在接收端,會用公開密鑰對簽名進(jìn)行檢查,如果不匹配則表示已被篡改。

使用數(shù)字簽名的好處

簽名可以驗證是作者編寫了這條報文,只有作者才會有最機密的私有密鑰,因此,只有作者才能計算出這些校驗和。校驗和就像來自作者的個人“簽名”一樣。

簽名可以防止報文被篡改,如果有惡意攻擊者在報文傳輸過程中對其進(jìn)行了修改,校驗和就不再匹配了。由于校驗和只有作者保密的私有密鑰才能產(chǎn)生,所以攻擊者無法為篡改了的報文偽造出正確的校驗碼。

數(shù)字證書

數(shù)字證書中包含了由某個受信任組織擔(dān)保的用戶或公司的相關(guān)信息。數(shù)字證書都是由官方的"證書頒發(fā)機構(gòu)"以數(shù)字方式簽發(fā)的。
通過HTTPS建立了一個安全web事務(wù)之后,現(xiàn)代瀏覽器都會自動獲取所連接服務(wù)器的數(shù)字證書。如果服務(wù)器沒有證書,安全連接就會失敗。瀏覽器收到證書的時候會對簽名頒發(fā)機構(gòu)進(jìn)行檢查。

HTTPS——細(xì)節(jié)介紹

HTTPS將HTTP協(xié)議與一組強大的對稱,非對稱和基于證書的加密技術(shù)結(jié)合在一起,使得HTTPS不僅很安全,而且很靈活,很容易在處于無序狀態(tài)的,分散的全球互聯(lián)網(wǎng)上進(jìn)行管理。

客戶端會對web資源執(zhí)行某事務(wù)時,他會去檢查URL的方案,如果URL的方案是https,客戶端就會打開一條到服務(wù)器端口443(而不是傳統(tǒng)的http默認(rèn)的80端口)的連接,然后與服務(wù)器進(jìn)行SSL"握手",以二進(jìn)制格式與服務(wù)器交換一些SSL安全參數(shù),附加上加密的HTTP命令。

站點證書的有效性

日期檢測

簽名頒發(fā)者可信度檢測

簽名檢測

站點身份檢測

通過代理以隧道形式傳輸安全流量

客戶端通常會用web代理服務(wù)器代表它們來訪問web服務(wù)器。但只要客戶端開始用服務(wù)器的公開密鑰對發(fā)往服務(wù)器的數(shù)據(jù)進(jìn)行加密,代理就再也不能讀取HTTP首部了!就無法知道應(yīng)該將請求轉(zhuǎn)向何處了。
為了使HTTPS與代理配合工作,可以用HTTPS SSL隧道協(xié)議。使用HTTPS隧道協(xié)議,客戶端首先告訴代理,它想要連接的安全主機和端口。這是在開始加密之前,以明文形式告知的。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/80226.html

相關(guān)文章

  • HTTP識別,認(rèn)證安全——《HTTP權(quán)威指南系列

    摘要:首發(fā)地址識別認(rèn)證與安全第三部分的章提供了一系列的技術(shù)和機器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。安全使用基本認(rèn)證的唯一方式就是將其與配合使用。加密之前的原始報文通常被稱為明文或。 WilsonLius blog 首發(fā)地址 識別,認(rèn)證與安全 第三部分的4章提供了一系列的技術(shù)和機器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。 客戶端識別與cookie機制 第十一章 H...

    asce1885 評論0 收藏0
  • HTTP識別,認(rèn)證安全——《HTTP權(quán)威指南系列

    摘要:首發(fā)地址識別認(rèn)證與安全第三部分的章提供了一系列的技術(shù)和機器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。安全使用基本認(rèn)證的唯一方式就是將其與配合使用。加密之前的原始報文通常被稱為明文或。 WilsonLius blog 首發(fā)地址 識別,認(rèn)證與安全 第三部分的4章提供了一系列的技術(shù)和機器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。 客戶端識別與cookie機制 第十一章 H...

    Jason_Geng 評論0 收藏0
  • HTTP實體和編碼——《HTTP權(quán)威指南系列

    摘要:在使用分塊編碼時,可以沒有,此時,數(shù)據(jù)是分為一系列的塊來發(fā)送的,每塊都有大小說明。實體摘要為檢測實體主體的數(shù)據(jù)是否被修改過,發(fā)送方可以在生成初始的主體時,生成一個數(shù)據(jù)的校驗和。分塊編碼把報文分割為若干個大小已知的塊。 WilsonLius blog 首發(fā)地址 實體和編碼 每天都有數(shù)以億計的各種媒體對象經(jīng)由HTTP傳送,如圖像,文本,影片以及軟件程序等。HTTP會確保它的報文被正確的傳送...

    frolc 評論0 收藏0
  • HTTP實體和編碼——《HTTP權(quán)威指南系列

    摘要:在使用分塊編碼時,可以沒有,此時,數(shù)據(jù)是分為一系列的塊來發(fā)送的,每塊都有大小說明。實體摘要為檢測實體主體的數(shù)據(jù)是否被修改過,發(fā)送方可以在生成初始的主體時,生成一個數(shù)據(jù)的校驗和。分塊編碼把報文分割為若干個大小已知的塊。 WilsonLius blog 首發(fā)地址 實體和編碼 每天都有數(shù)以億計的各種媒體對象經(jīng)由HTTP傳送,如圖像,文本,影片以及軟件程序等。HTTP會確保它的報文被正確的傳送...

    Kylin_Mountain 評論0 收藏0

發(fā)表評論

0條評論

call_me_R

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<