本文由GoGetSSL贊助提供。感謝您支持使SitePoint成為可能的合作夥伴。
網絡犯罪的發生率在過去十年中急劇上升。許多尚未實施充分網絡安全措施的知名企業組織和政府機構已經遭受損失。谷歌已開始對不使用HTTPS的網站採取強硬立場。如果訪客即將通過不安全的連接提交任何信息,系統會發出警告。
本文將指導您如何保護客戶和企業免受隱私侵犯和數據盜竊。您將學習如何使用SSL技術來保護您的網站和應用程序,防止敏感數據洩露給竊聽者。
本文不會講解SSL的安裝方法,因為這是一個高級主題。您可以在此處找到有關安裝過程的更多信息。
關鍵要點
- SSL(安全套接字層)是一種加密協議,旨在保護計算機網絡上的通信安全。它對於保護通過互聯網傳輸的敏感信息(例如登錄憑據和信用卡詳細信息)尤其重要。
- SSL證書由證書頒發機構 (CA) 頒發,用於驗證網站的身份並啟用安全、加密的通信。這些證書通常包含主題名稱、公鑰、數字簽名、頒發者和有效日期。
- 存在不同類型的SSL證書以滿足不同的需求,包括域驗證SSL證書、公共IP SAN SSL、通配符SSL和多域SSL證書。證書的選擇取決於諸如要保護的域和子域的數量,以及您是否要保護公共IP地址等因素。
- 法律實體標識符 (LEI) 是一個用於識別參與金融交易的任何全球公司的唯一代碼。它可以用來簡化和加快SSL證書的業務驗證流程。
SSL 的簡單解釋
想像一下,您在酒店房間裡,使用筆記本電腦連接到酒店的WIFI。您即將登錄銀行的在線門戶網站。與此同時,一個惡意黑客巧妙地預訂了您隔壁的房間,並設置了一個簡單的工位來監聽酒店大樓中的所有網絡流量。使用HTTP協議的所有流量都可以被黑客以純文本形式查看。
假設銀行的網站僅使用HTTP,那麼一旦您按下提交按鈕,用戶名和密碼等表單詳細信息就會被黑客看到。那麼我們如何保護這些數據呢?答案顯然是加密。數據加密涉及將純文本數據轉換為看起來亂碼的東西——也就是加密數據。要加密純文本數據,您需要所謂的加密算法和密碼密鑰。
假設您要加密以下數據:
<code>Come on over for hot dogs and soda!</code>
加密後的形式如下所示:
<code>Come on over for hot dogs and soda!</code>
使用當前的計算能力,在沒有密碼密鑰的情況下解密上述消息可能需要超過一生。除非他們擁有用於加密它的密碼密鑰,否則沒有人能夠閱讀它。這種類型的加密稱為對稱加密。既然我們已經弄清楚瞭如何保護數據,我們需要一種安全的方法來安全地將密碼密鑰傳輸給消息的接收者。我們可以通過使用稱為公鑰加密的非對稱加密系統來做到這一點。
公鑰加密使用一對數學相關的密碼密鑰:
- 公鑰:可以安全地與任何人共享
- 私鑰:絕不能傳輸,必須保密
當一個密鑰用於加密時,另一個密鑰用於解密。相同的密鑰不能用於解密它加密的內容。以下是其工作原理的描述:
但是,我們不能信任任何發給我們的公鑰,因為它們可以由任何人生成。為了確保公鑰的真實性,需要將它們打包到所謂的SSL證書中。這是一個簽名的數字文件,包含以下信息:
- 主題名稱:個人、組織或機器名稱
- 公鑰
- 數字簽名(證書的指紋)
- 頒發者(簽署證書的實體)
- 有效日期(開始日期和到期日期)
我只列出了必需項。 SSL證書通常包含更多信息。這是一個真實的例子:
如您所見,上述證書已簽名(請參閱縮略圖部分)。數字簽名只是文件的加密哈希。讓我們首先解釋什麼是哈希。假設您有一份包含100個單詞的文檔,並且您將其通過哈希程序運行。您將獲得以下哈希值:
<code>wUwDPglyJu9LOnkBAf4vxSpQgQZltcz7LWwEquhdm5kSQIkQlZtfxtSTsmaw q6gVH8SimlC3W6TDOhhL2FdgvdIC7sDv7G1Z7pCNzFLp0lgB9ACm8r5RZOBi N5ske9cBVjlVfgmQ9VpFzSwzLLODhCU7/2THg2iDrW3NGQZfz3SSWviwCe7G mNIvp5jEkGPCGcla4Fgdp/xuyewPk6NDlBewftLtHJVf =PAb3</code>
如果您更改文檔中的任何內容,即使是添加一個句點,當您再次運行哈希函數時,也會生成一個全新的哈希值:
<code>46798b5cfca45c46a84b7419f8b74735</code>
發送的哈希值與生成的哈希值不匹配,這意味著該文件已被更改。這是確保SSL證書未被更改的第一道防線。但是,我們需要驗證發送的哈希值是由證書的頒發者創建的。這是通過使用頒發者的私鑰加密哈希值來完成的。當我們對證書執行本地哈希,然後解密證書的簽名以獲得發送的哈希值時,我們可以比較兩者。如果匹配,則表示:
- 證書未被其他人更改
- 我們有證據證明證書來自頒發者,因為我們已使用其公鑰成功解密了簽名
- 我們可以信任附加在SSL證書中的公鑰的真實性。
現在,您可能想知道我們從哪裡獲得頒發者的公鑰以及為什麼我們應該信任它。頒發者的公鑰已預先安裝在我們的操作系統和瀏覽器中。頒發者是一個值得信賴的證書頒發機構 (CA),它根據官方 CA/瀏覽器論壇指南和 NIST 建議簽署證書。例如,以下是一些您會在 Microsoft 操作系統上找到的值得信賴的頒發者/CA 的列表。即使是智能手機和平板電腦,操作系統和瀏覽器上也預裝了類似的列表。
根據W3Techs在2018年5月進行的一項調查,以下頒發機構約佔全球簽發的有效證書的90%:
- IdenTrust
- Comodo
- DigiCert(被賽門鐵克收購)
- GoDaddy
- GlobalSign
既然您已經了解了加密和SSL技術,最好回顧一下如何使用HTTPS安全地登錄銀行門戶網站,而不會讓隔壁的黑客讀取您的流量。
- 您的筆記本電腦瀏覽器首先向銀行的服務器請求其SSL證書。
- 服務器發送它。然後瀏覽器根據受信任的CA列表檢查證書是否真實。它還會檢查證書是否未過期且未被吊銷。
- 如果一切檢查都通過,瀏覽器將生成一個新的密碼密鑰(也稱為會話密鑰)。使用在SSL證書上找到的公鑰,對其進行加密,然後發送到服務器。
- 服務器使用其私鑰解密會話密鑰。
- 從現在開始,所有來回發送的通信都將使用會話密鑰進行加密。對稱加密比非對稱加密更快。
這意味著從筆記本電腦發送的表單數據以及來自服務器的HTML數據都將使用黑客無法訪問的密碼密鑰進行加密。在捕獲的流量日誌中看到的將只是亂碼的字母和數字。您的信息現在已受到保護,並免受窺探之眼。
既然您了解了SSL的一般工作原理,讓我們繼續下一節,了解我們可以使用的不同類型的SSL證書。
SSL類型
域驗證SSL證書
域驗證是最經濟實惠且最常見的SSL證書類型,可以頒發給任何人以保護公共域網站。為了購買這種類型的SSL證書,您需要證明您是您想要保護的域的所有者。這就是為什麼它被稱為域驗證。這是通過以下一種或多種方式完成的:
- 創建DNS TXT記錄
- 回復發送到域的whois記錄中註冊的電子郵件聯繫人的電子郵件
- 回復發送到您域中眾所周知的管理聯繫人(例如admin@domain.com)的電子郵件
- 發布自動證書頒發系統提供的隨機數
截至2019年9月,谷歌Chrome瀏覽器目前是最流行的網絡瀏覽器,約佔全球桌面瀏覽器市場份額的70%。谷歌最近加強了其對網站所有者強制執行安全協議的立場,以確保保護最終用戶的隱私。未受保護的網站會被標記為不安全。如果用戶嘗試向未受保護的網站提交表單,也會強烈建議他們不要這樣做。如果網站的SSL證書過期或無效,則該網站將被暫時阻止。
如果您不想因為您的網站不受保護而丟失寶貴的流量,您需要確保至少獲得域驗證SSL證書。獲得一個證書只需要5-8分鐘。
公共IP SAN SSL
SSL證書通常用於保護完全限定的域名,例如www.domain.com。如果您想保護公共IP地址,則需要獲取公共IP SAN SSL證書。 SAN代表主體備用名稱,它是證書字段上的一個字段,可用於保存IP地址。
通配符SSL
普通的SSL證書僅適用於單個域,例如www.domain.com。如果您想保護子域,則必須為此購買新的SSL證書。您可以簡單地購買通配符SSL證書,而不是為管理的每個子域購買新的SSL證書,它將適用於您的子域,即*.domain.com。它比購買多個SSL證書更經濟有效。使用一個SSL證書也更容易管理。
但是,如果子域受到損害,則意味著使用相同證書的所有子域都受到損害。您需要吊銷它並請求新的證書。如果您不想遇到此類問題,也可以單獨購買一個。
多域SSL證書
顧名思義,您可以購買多域SSL證書,它最多可以保護250個域和子域。這種類型的證書對於保護可能跨越不同地理區域的數百個辦公通信服務器特別有用。即使流量僅限於公司網絡內,最好也使用SSL進行保護,因為流氓員工很容易監控和記錄每個人的流量。
使用LEI代碼加快業務驗證
自2019年以來,可以使用LEI(法律實體標識符)代碼在全球範圍內驗證組織。這簡化並顯著加快了驗證過程。企業可以通過官方的GLEIF註冊機構獲得LEI代碼。
法律實體標識符 (LEI) 是一個用於識別參與金融交易的任何全球公司的唯一代碼。該流程是根據國際標準ISO 17442進行的。目標是幫助監控和衡量系統性風險,並有效且廉價地支持遵守監管報告要求。
總結
我希望您現在有足夠的信息來決定購買哪種SSL證書。請注意,SSL證書僅有效期為兩年。這是一項安全功能,可確保證書上的信息保持最新。它還確保不會使用任何丟失的密鑰來滲透流量。免費SSL證書通常有效期為90天。如果您想確保您不會忘記購買續訂,您可以獲得3年或4年的訂閱計劃。請注意,兩年限制費率適用。您將在到期日期結束時收到聯繫,以將證書替換為新的證書。選擇較長訂閱計劃的優勢在於,與每年購買相比,您可以節省資金。
SSL常見問題解答
什麼是SSL? SSL(安全套接字層)是一種加密協議,旨在提供計算機網絡上的安全通信。它通常用於保護用戶瀏覽器和網站服務器之間的數據傳輸。
為什麼SSL很重要? SSL對於保護通過互聯網傳輸的敏感信息(例如登錄憑據、信用卡詳細信息和其他個人數據)非常重要。它會加密數據以防止未經授權的訪問和竊聽。
什麼是SSL證書? SSL證書是一種數字證書,用於驗證網站的身份並啟用安全、加密的通信。它由證書頒發機構 (CA) 頒發,並包含有關證書持有人的信息。
如何為我的網站獲取SSL證書?要獲得SSL證書,您可以從證書頒發機構 (CA) 購買一個,或使用受信任的CA提供的證書,例如Let's Encrypt。獲得證書後,需要將其安裝在您的Web服務器上。
什麼是HTTPS? HTTPS(超文本傳輸協議安全)是HTTP的安全版本。它使用SSL/TLS協議來加密用戶瀏覽器和網站服務器之間傳輸的數據。使用HTTPS的網站在地址欄中顯示鎖形符號。
以上是什麼是SSL,哪種證書類型適合您的詳細內容。更多資訊請關注PHP中文網其他相關文章!

與這些頂級開發人員新聞通訊有關最新技術趨勢的了解! 這個精選的清單為每個人提供了一些東西,從AI愛好者到經驗豐富的後端和前端開發人員。 選擇您的收藏夾並節省時間搜索REL

該教程通過使用AWS服務來指導您通過構建無服務器圖像處理管道。 我們將創建一個部署在ECS Fargate群集上的next.js前端,與API網關,Lambda函數,S3桶和DynamoDB進行交互。 Th

該試點程序是CNCF(雲本機計算基礎),安培計算,Equinix金屬和驅動的合作,簡化了CNCF GitHub項目的ARM64 CI/CD。 該計劃解決了安全問題和績效


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

記事本++7.3.1
好用且免費的程式碼編輯器

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具