論HTTPS之重要性

THU - Advanced Smart Technology Application and Research Center

論HTTPS之重要性

HTTPS是近幾年來各大資訊公司推廣的協定修改協定,將原HTTP經由SSL或是TLS方式加密達到資訊不外露的目的。

【何謂HTTP?】

http全文為 HyperText Transfer Protocol,中文譯為”超文本傳輸協定”。

http為一般用戶端(Client)和伺服端(Server)溝通的方式之一,他也是WWW (World Wide Web) 全球網路的基礎,通常使用TCP協定溝通,以確保資料傳輸沒有錯誤。

客戶端使用URL (Uniform Resource Locate, 統一資源定址 俗稱網址) 來指定欲存取的資源位置, 常見格式如下:

http:// astarc.thu.edu.tw /web/news/list.php

紅色部分 : “http://” 為請求的協定,其他的有ftp://、telnet://…等。

橘色部分 : “astarc.thu.edu.tw” 為主機位置,對應到一組或是多組IP,目的是指定要存取哪台伺服器。

紫色部分 : “/web/news/list.php” 為資源路徑,跟windows檔案總管的路徑是一樣的概念,在web目錄底下的news目錄底下的list.php檔案。

整段網址的意思是這樣的 :

小楊想要知道名為list.php的文件內容,它位在 astarc.thu.edu.tw 這個房子裡。

小楊為了得到這份文件的內容,跟 astarc.thu.edu.tw 這個房子的管家(通常是apache或是nginx網頁服務) 用http這個語言溝通,小楊跟apache管家說他要web這個櫃子裡面的news抽屜裡面的list.php文件,而apache管家將此內容以http的語言念給小楊。

【HTTPS,加密後的HTTP!

為什麼要HTTPS?

以上述的例子來說,任何人只要在小楊跟管家旁邊就可以聽到訊息的內容。如果是不重要的內容也就算了,但是如果對話內容是有需要隱私的(像是小王在外偷吃的八卦被其他人知道就不好了) 就有必要不讓內容外洩了。

最早HTTP剛出來的時候,由於所有的機密資料都是紙本,銀行交易也不會使用網頁交易,所以傳輸的內容通常不是甚麼機密的東西,沒有加密的需求,架網站的目的就是要向這個世界宣傳自己或是展示產品。

隨著世界資訊化,越來越多的資料是透過網路來傳送,開始有帳號密碼的需求。但是HTTP的傳輸方式只要是任何在中間的人都可以知道對話內容,造成密碼或是重要資料外洩。

為了避免這些問題,伺服器會生成一把公鑰(Public Key)以及一把私鑰(Private Key),公鑰只能用來上鎖 不能解鎖,只有私鑰才能解鎖 (詳見”非對稱式加密“)

生成完後將公鑰給予任何要跟它說話的的客戶端,讓客戶端把鑰說的訊息用公鑰鎖起來再給伺服器,這樣就算中間誰攔截到這個盒子也沒關係,反正他也不知道盒子裡面的內容。

這些步驟都會由你的瀏覽器幫你完成,使用者只須要跟瀏覽器要求https://連線即可。

【https- Hyper Text Transfer Protocol Secure】

HTTPS除了能驗明雙方身分,還能確保使用者所連線到的網站是 “本尊” 而不是被替換掉的釣魚網站。

確認欲前往的網站身分非常重要,因為任何資訊只要輸入到該網站的輸入欄裡面,就有機會被別人擷取,甚至有中毒的風險。需要注意的是,HTTPS只能保障傳輸內容的加密以及對方是本尊,但是不能知道對方是不是壞人,所以對於來路不明的網址不要輕易地進去該網站,即使他有HTTPS。

如果不確定該網址是不是安全的,可以參考一些URL掃描工具,像是這個 [VirusTotal]

【如何知道我的連線是安全的?】

現在大多數的瀏覽器都會告訴你是否有建立安全連線,辨識方式都是看網址列最前面有沒有一個綠色鎖頭或是一個鎖頭,像是這樣:

確認有鎖頭之後基本上就是有https連線,而且憑證有效

但是像下面這種沒有鎖頭標記 甚至打叉的 都是代表該網站有問題或是不安全

紅色三角型是指說該網站有https連線 但是憑證無效或是過期。

而連紅色三角形都沒有的就是連https連線都沒有。

通常會有這些問題多半是該網站的網管對於資訊安全不重視,所以才會忘記更新憑證,這時候就要想清楚該網站是不是有問題的網站,或是網站已經被掉包了,此時要避免在該網站輸入機密資訊,如帳號密碼或身分證等資訊。

zh_TWChinese