數字證書_CA_詳解

目錄

一、數字證書簡介

二、 CA(證書頒發機構)

(一) 證書鏈(信任鏈)

1. 根證書

2. 中間證書

3. 網站證書

(二) 抓包軟件的證書鏈與信任機制

1. 抓包通信流程

2. 證書鏈偽造與信任驗證流程

(三) 關于移動設備的CA


一、數字證書簡介

數字證書就是網站的身份證 + 公鑰、是用來證明身份搭建加密通道用的

證書通常包含以下信息:

  • 持有者的信息: 網站域名(最重要的)、組織名稱(對于企業級證書)、地址等。
  • 公鑰: 用于加密信息的密鑰。
  • 頒發者信息: 簽發該證書的證書頒發機構名稱。
  • 有效期: 證書的生效日期和到期日期。
  • 數字簽名: 由 CA 使用其私鑰生成的簽名,用于證明證書的真實性和完整性。瀏覽器可以用 CA 的公鑰來驗證這個簽名。

二、 CA(證書頒發機構)

CA全稱:Certificate Authority,即“證書頒發機構”,負責簽發證書和提供背書服務的機構。

  • 簽發: CA 生成一張新的證書,并用自己的私鑰對其內容進行數字簽名,正式頒布這個證書。
  • 背書: CA 用自己的名義擔保:這個證書里的信息(比如域名、身份、公鑰)是我驗證過、我認可的。
  • 關于申請證書,有免費的CA(一般用于個人網站),有收費的CA(用于企業/銀行等需高信任場景)。

注:CA(證書頒發機構)是一個角色,全球有很多個CA,任何合法的組織都可以成為 CA,只要它有能力簽發并管理證書。

(一) 證書鏈(信任鏈)

注:如果證書鏈出現問題,客戶端會提示證書不被信任等信息。

證書鏈:網站證書 → 中間證書 → 根證書。

驗證過程

  • 客戶端(瀏覽器)拿到網站證書,用中間證書的公鑰驗證它的簽名。
  • 再用根證書的公鑰驗證中間證書的簽名。
  • 最后確認根證書是否在客戶端的信任列表中。

證書提供

  • 服務器:發送網站證書和中間證書。
  • 客戶端:預裝根證書,不需要服務器提供。

1. 根證書

根證書是信任鏈的起點,由根證書頒發機構自簽名,客戶端(瀏覽器)默認信任根證書

根證書預裝在您的設備(比如電腦、手機的操作系統或瀏覽器)中,作為驗證其他證書的“信任錨點”。

2. 中間證書

中間證書由根CA簽發,授權給中間證書頒發機構,用來簽發網站證書。

3. 網站證書

網站證書由中間CA簽發,頒給具體的網站或服務器,包含網站的公鑰和身份信息(如域名),用于加密通信和證明身份。

網站證書是你訪問的網站拿給瀏覽器的“身份證”,里面包含網站域名、公鑰等信息。

常見網站證書類型:

  • DV(域名驗證證書)
    • 只驗證域名所有權,比如你能證明你控制了 abc.com,就能簽。
  • OV(組織驗證證書)
    • 除了驗證域名,還驗證組織/企業的合法存在性和注冊信息(工商注冊、電話等)。
  • EV(擴展驗證證書)
    • 最高級別驗證,驗證企業真實身份、營業執照、電話、注冊地址等。
    • 部分瀏覽器(不同版本)會在地址欄顯示“綠色鎖”和公司名。

(二) 抓包軟件的證書鏈與信任機制

1. 抓包通信流程

以訪問 https://www.baidu.com 為例:

Burp Suite 在本地充當代理服務器,整個 HTTPS 抓包過程的核心通信路徑如下:

  • 瀏覽器訪問百度,實際連接的是本地的 BurpSuite 代理(如 127.0.0.1:8080)
    • 瀏覽器只與 Burp 通信,瀏覽器不與百度服務器做交互。
  • Burp 將請求轉發給真實的百度服務器
  • 百度返回響應 → Burp 攔截并解析 → 再轉發給瀏覽器
    • 瀏覽器收到的響應其實是 Burp 偽裝百度發出的。

2. 證書鏈偽造與信任驗證流程

由于瀏覽器訪問的是 HTTPS,必須進行證書驗證。流程如下:

  • 瀏覽器要求:提供 https://baidu.com 的合法證書
  • 但此時它連接的是 BurpSuite,不是百度。
  • Burp 動態生成偽造的“baidu.com”站點證書
    • 此證書由 Burp 內部的自簽名 CA 生成(非真實百度證書)。
  • 瀏覽器校驗證書的簽發者
  • 若瀏覽器的CA中沒有Burp自簽名CA,瀏覽器就會提示:證書無效 / 連接不安全 / 無法建立安全連接等安全告警。

所以抓包軟件一般都會有一個CA證書導入導出的功能。

(三) 關于移動設備的CA

安卓和蘋果都把CA明確區分成了兩種:

  • 系統 CA(System CA)
    • 出廠時就內置在操作系統里的根證書
    • 只能由廠商簽名后刷入系統分區
    • 默認所有 App 都信任
    • 普通用戶(非 root)無法修改或新增
  • 用戶 CA(User CA)
    • 用戶手動安裝的證書(比如通過設置 → 安全 → 受信任憑據 → 用戶)
    • 存在于用戶空間

從 Android 7/ iOS 10 開始以后的版本,默認大部分APP不信任用戶CA,所以即使把抓包軟件的CA證書導入到手機中也沒用除非是把證書裝到了系統CA區(需要ROOT權限)

注:手機開啟ROOT之后,也會遭受大部分APP限制,ROOT手機限制使用之類的。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/908883.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/908883.shtml
英文地址,請注明出處:http://en.pswp.cn/news/908883.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Android協程學習

目錄 Android上的Kotlin協程介紹基本概念與簡單使用示例協程的高級用法 結構化并發線程調度器(Dispatchers)自定義調度器并發:同步 vs 異步 異步并發(async 并行執行)同步順序執行協程取消與超時 取消機制超時控制異步數據流 Flow協程間通信 使用 Channel使用 StateFlow /…

統計學(第8版)——假設檢驗學習筆記(考試用)

一、假設檢驗核心框架 (一)解決的核心問題 判斷樣本與總體 / 樣本與樣本的差異是由抽樣誤差還是本質差異引起 典型場景: 產品合格率是否達標(比例檢驗)工藝改進后均值是否顯著變化(均值檢驗&#xff09…

Java求職者面試:微服務技術與源碼原理深度解析

Java求職者面試:微服務技術與源碼原理深度解析 第一輪:基礎概念問題 1. 請解釋什么是微服務架構,并說明其優勢和挑戰。 微服務架構是一種將單體應用拆分為多個小型、獨立的服務的軟件開發方法。每個服務都運行在自己的進程中,并…

c# 局部函數 定義、功能與示例

C# 局部函數:定義、功能與示例 1. 定義與功能 局部函數(Local Function)是嵌套在另一個方法內部的私有方法,僅在包含它的方法內可見。 ? 作用:封裝僅用于當前方法的邏輯,避免污染類作用域,提升…

ava多線程實現HTTP斷點續傳:原理、設計與代碼實現

一、引言 在當今互聯網環境下,大文件下載需求日益增長。傳統單線程下載方式效率低下,且一旦下載中斷,需要重新開始。斷點續傳技術通過將文件分塊并利用多線程并行下載,顯著提升了下載效率,同時支持中斷后繼續下載。本…

vla學習 富

# 基于diffusion # π0 ## 架構 其核心思想是在預訓練好的視覺語言模型(VLM)基礎上添加一個“動作專家”(action expert),通過流匹配(flow matching)的方式生成連續的高頻控制指令。整個架構可以…

降雨預測系統(機器學習)

這是一個基于Python開發的降雨預測系統,使用機器學習算法對指定月份的降雨概率進行預測。該系統提供了友好的圖形用戶界面(GUI),支持數據可視化和交互式操作。 ## 功能特點 - ?? 生成歷史降雨數據(2015-2024年) - ?? 使用邏輯回歸模型進行降雨預測 - ?? 可視化…

邏輯回歸與Softmax

Softmax函數是一種將一個含任意實數的K維向量轉化為另一個K維向量的函數,這個輸出向量的每個元素都在(0, 1)區間內,并且所有元素之和等于1。 因此,它可以被看作是某種概率分布,常用于多分類問題中作為輸出層的激活函數。這里我們以拓展邏輯回歸解決多分類的角度對Softmax函…

基于PSO與BP神經網絡分類模型的特征選擇實戰(Python實現)

說明:這是一個機器學習實戰項目(附帶數據代碼文檔),如需數據代碼文檔可以直接到文章最后關注獲取。 1.項目背景 在機器學習建模過程中,特征選擇是提升模型性能、降低計算復雜度的重要環節。尤其在高維數據場景下&…

深度學習之模型壓縮三駕馬車:基于ResNet18的模型剪枝實戰(1)

一、背景:為什么需要模型剪枝? 隨著深度學習的發展,模型參數量和計算量呈指數級增長。以ResNet18為例,其在ImageNet上的參數量約為1100萬,雖然在服務器端運行流暢,但在移動端或嵌入式設備上部署時&#xf…

uni-app學習筆記二十四--showLoading和showModal的用法

showLoading(OBJECT) 顯示 loading 提示框, 需主動調用 uni.hideLoading 才能關閉提示框。 OBJECT參數說明 參數類型必填說明平臺差異說明titleString是提示的文字內容,顯示在loading的下方maskBoolean否是否顯示透明蒙層,防止觸摸穿透,默…

【大模型RAG】六大 LangChain 支持向量庫詳細對比

摘要 向量數據庫已經成為檢索增強生成(RAG)、推薦系統和多模態檢索的核心基礎設施。本文從 Chroma、Elasticsearch、Milvus、Redis、FAISS、Pinecone 六款 LangChain 官方支持的 VectorStore 出發,梳理它們的特性、典型應用場景與性能邊界&a…

【MySQL】數據庫三大范式

目錄 一. 什么是范式 二. 第一范式 三. 第二范式 不滿足第二范式時可能出現的問題 四. 第三范式 一. 什么是范式 在數據庫中范式其實就是一組規則,在我們設計數據庫的時候,需要遵守不同的規則要求,設計出合理的關系型數據庫,…

Coze工作流-語音故事創作-文本轉語音的應用

教程簡介 本教程將帶著大家去了解怎么樣把文本轉換成語音,例如說我們要做一些有聲故事,我們可能會用上一些語音的技術,來把你創作的故事朗讀出來 首先我們創建一個工作流 對各個模塊進行編輯,如果覺得系統提示詞寫的不好&#xf…

5.子網劃分及分片相關計算

某公司網絡使用 IP 地址空間 192.168.2.0/24,現需將其均分給 市場部 和 研發部 兩個子網。已知: 🏢 市場部子網 🖥? 已分配 IP 地址范圍:192.168.2.1 ~ 192.168.2.30🌐 路由器接口 IP:192.16…

三體問題詳解

從物理學角度,三體問題之所以不穩定,是因為三個天體在萬有引力作用下相互作用,形成一個非線性耦合系統。我們可以從牛頓經典力學出發,列出具體的運動方程,并說明為何這個系統本質上是混沌的,無法得到一般解…

機器學習算法時間復雜度解析:為什么它如此重要?

時間復雜度的重要性 雖然scikit-learn等庫讓機器學習算法的實現變得異常簡單(通常只需2-3行代碼),但這種便利性往往導致使用者忽視兩個關鍵方面: 算法核心原理的理解缺失 忽視算法的數據適用條件 典型算法的時間復雜度陷阱 SV…

uniapp 對接騰訊云IM群組成員管理(增刪改查)

UniApp 實戰:騰訊云IM群組成員管理(增刪改查) 一、前言 在社交類App開發中,群組成員管理是核心功能之一。本文將基于UniApp框架,結合騰訊云IM SDK,詳細講解如何實現群組成員的增刪改查全流程。 權限校驗…

OPENCV圖形計算面積、弧長API講解(1)

一.OPENCV圖形面積、弧長計算的API介紹 之前我們已經把圖形輪廓的檢測、畫框等功能講解了一遍。那今天我們主要結合輪廓檢測的API去計算圖形的面積,這些面積可以是矩形、圓形等等。圖形面積計算和弧長計算常用于車輛識別、橋梁識別等重要功能,常用的API…

一.設計模式的基本概念

一.核心概念 對軟件設計中重復出現問題的成熟解決方案,提供代碼可重用性、可維護性和擴展性保障。核心原則包括: 1.1. 單一職責原則? ?定義?:一個類只承擔一個職責,避免因職責過多導致的代碼耦合。 1.2. 開閉原則? ?定義?&#xf…