論及HTTPs之重要性

THU - Advanced Smart Technology Application and Research Center

論及HTTPs之重要性

簡述

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

Table of Contents

  • 簡述
  • 甚麼是http?
  • https,加密後的http

甚麼是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
en_USEnglish zh_TWChinese