🔐 ภาพรวมการใช้งาน TLS (Transport Layer Security) ใน iBrowe
เอกสารนี้อธิบายภาพรวมว่า iBrowe นำ TLS (เดิมเรียกว่า SSL) มาประยุกต์ใช้งานและบังคับใช้บนแพลตฟอร์มต่าง ๆ อย่างไร
⚙️ การใช้งาน TLS
-
เดสก์ท็อป & Android iBrowe ใช้ TLS stack ของ Chromium ต้นฉบับโดยไม่มีการแก้ไขใด ๆ
-
iOS การเชื่อมต่อ TLS จะถูกจัดการผ่าน API ของระบบปฏิบัติการโดยตรง (Apple’s networking stack)
🏛️ Root Certificate Store (คลังเก็บใบรับรองราก)
-
เดสก์ท็อป & Android iBrowe ใช้ root store เดียวกับ Chrome: https://chromium.googlesource.com/chromium/src/+/main/net/data/ssl/chrome_root_store/faq.md
-
iOS ใช้ root store ของ Apple ผ่าน API ของระบบ
📌 Root Pinning & HSTS Preloading
- iBrowe เปิดใช้งานการบังคับใช้ทั้ง root pinning และ HSTS preloading โดย iBrowe จะไม่ใช้รายการที่ฝังมาใน Chrome แต่จะดูแลจัดการรายการของตัวเอง: https://github.com/ibrowe/ibrowe-core/blob/main/chromium_src/net/tools/transport_security_state_generator/input_file_parsers.cc
🔍 Test Domains (โดเมนทดสอบ)
-
https://ssl-pinning.someblog.org/ → คาดว่าจะเกิด TLS error และถูกบล็อก
-
https://pinning-test.badssl.com/ → ควรโหลดได้ แต่จะขึ้นหน้าจอเตือนสีแดง (ไม่มี TLS error)
🧾 Certificate Transparency (CT)
-
iOS ใช้ CT policy ของ Apple ซึ่งรวมอยู่ใน WebKit แล้ว
-
เดสก์ท็อป & Android iBrowe บังคับใช้ CT ตามนโยบายของ Chromium (เริ่มตั้งแต่เวอร์ชัน 1.56) โดยตอนนี้ ปิดการตรวจสอบ SCT (Signed Certificate Timestamp auditing) ชั่วคราว
ดูเพิ่มเติมที่: https://github.com/ibrowe/ibrowe-core/pull/17944
📎 ที่มา: ดัดแปลงจากเอกสาร Brave TLS และอัปเดตข้อมูลให้เหมาะกับ iBrowe พร้อมปรับโครงสร้างและลิงก์ใหม่