ที่เก็บรูทของ Android เคยต้องการการอัปเดต OTA เพื่อเพิ่มหรือลบใบรับรองรูท ซึ่งจะไม่เป็นเช่นนั้นใน Android 14
Android มีปัญหาเล็กน้อยที่หันศีรษะที่น่าเกลียดของมันทุกครั้งที่พระจันทร์สีน้ำเงิน แต่เมื่อมันเกิดขึ้น มันทำให้เกิดความตื่นตระหนก โชคดีที่ Google มีวิธีแก้ปัญหาใน Android 14 ที่ช่วยแก้ปัญหานี้ได้ในทันที ปัญหาคือที่เก็บใบรับรองรูทของระบบ Android (ที่เก็บรูท) สามารถอัปเดตผ่านการอัปเดตแบบ over-the-air (OTA) สำหรับการมีอยู่ของ Android ส่วนใหญ่เท่านั้น แม้ว่า OEM และผู้ให้บริการจะปรับปรุงให้ดีขึ้นอย่างรวดเร็วและบ่อยขึ้น แต่สิ่งต่างๆ ก็ยังดีกว่านี้ นั่นเป็นเหตุผลที่ Google ได้คิดค้นวิธีแก้ปัญหาเพื่อให้รูทสโตร์ของ Android อัปเดตผ่าน Google Play ได้ โดยเริ่มจาก แอนดรอยด์ 14.
เมื่อคุณออนไลน์ทุกวัน คุณเชื่อมั่นว่าซอฟต์แวร์ของอุปกรณ์ได้รับการกำหนดค่าอย่างเหมาะสมเพื่อนำคุณไปยังเซิร์ฟเวอร์ที่เหมาะสมซึ่งโฮสต์เว็บไซต์ที่คุณต้องการเข้าชม การสร้างการเชื่อมต่อที่ถูกต้องเป็นสิ่งสำคัญ ดังนั้นคุณจะไม่ต้องลงเอยบนเซิร์ฟเวอร์ที่มีผู้ไม่หวังดีเป็นเจ้าของ แต่อย่างปลอดภัย การสร้างการเชื่อมต่อนั้นมีความสำคัญเช่นกัน ดังนั้นข้อมูลใด ๆ ที่คุณส่งไปยังเซิร์ฟเวอร์นั้นจะถูกเข้ารหัสระหว่างการส่ง (TLS) และหวังว่าจะไม่สามารถทำได้ง่าย ๆ สอดแนม ระบบปฏิบัติการ เว็บเบราว์เซอร์ และแอปของคุณจะสร้างการเชื่อมต่อที่ปลอดภัยกับเซิร์ฟเวอร์บนอินเทอร์เน็ต (HTTPS) เท่านั้น หากพวกเขาเชื่อถือใบรับรองความปลอดภัยของเซิร์ฟเวอร์ (TLS)
เนื่องจากมีเว็บไซต์จำนวนมากบนอินเทอร์เน็ต แม้ว่าระบบปฏิบัติการ เว็บเบราว์เซอร์ และแอปจะไม่เก็บรายการใบรับรองความปลอดภัยของทุกเว็บไซต์ที่พวกเขาเชื่อถือ แต่พวกเขาจะมองหาว่าใครเป็นผู้ลงนามในใบรับรองความปลอดภัยที่ออกให้กับไซต์: ใบรับรองนี้ลงนามด้วยตนเองหรือลงนามโดยหน่วยงานอื่น (ผู้ออกใบรับรอง [CA]) ที่พวกเขาเชื่อถือหรือไม่ ห่วงโซ่การตรวจสอบนี้อาจมีความลึกหลายชั้นจนกว่าคุณจะไปถึงรูท CA ที่ออกการรักษาความปลอดภัย ใบรับรองที่ใช้ในการลงนามใบรับรองที่ลงนามในใบรับรองที่ออกให้กับไซต์ที่คุณอยู่ เยี่ยมชม
จำนวน CA รูทนั้นน้อยกว่าจำนวนเว็บไซต์ที่มีใบรับรองความปลอดภัยที่ออกให้โดยตรงหรือ ผ่าน CA ตัวกลางตั้งแต่หนึ่งตัวขึ้นไป ดังนั้นจึงมีความเป็นไปได้ที่ OS และเว็บเบราว์เซอร์จะรักษารายการใบรับรอง CA หลักที่พวกเขา เชื่อมั่น. ตัวอย่างเช่น Android มีรายการใบรับรองหลักที่เชื่อถือได้ซึ่งจัดส่งในพาร์ติชันระบบแบบอ่านอย่างเดียวของระบบปฏิบัติการที่ /system/etc/security/cacerts หากแอพไม่ จำกัดใบรับรองที่จะเชื่อถือแนวทางปฏิบัติที่เรียกว่าการปักหมุดใบรับรอง จากนั้นจะใช้ค่าเริ่มต้นเป็นที่เก็บรูทของระบบปฏิบัติการเมื่อตัดสินใจว่าจะเชื่อถือใบรับรองความปลอดภัยหรือไม่ เนื่องจากพาร์ติชัน “ระบบ” เป็นแบบอ่านอย่างเดียว ที่เก็บรูทของ Android จึงไม่เปลี่ยนรูปนอกการอัปเดตระบบปฏิบัติการ ซึ่งอาจก่อให้เกิดปัญหาเมื่อ Google ต้องการลบหรือเพิ่มใบรับรองรูทใหม่
บางครั้งใบรับรองหลักคือ กำลังจะหมดอายุซึ่งอาจนำไปสู่การทำลายเว็บไซต์และบริการ และเว็บเบราว์เซอร์แสดงคำเตือนเกี่ยวกับการเชื่อมต่อที่ไม่ปลอดภัย ในบางกรณี CA ที่ออกใบรับรองหลักคือ สงสัยว่าเป็นอันตรายหรือถูกบุกรุก. หรือ ใบรับรองหลักใหม่ ปลูกพืชที่ต้องเพิ่มตัวเองลงในที่เก็บรูทของระบบปฏิบัติการหลักทุกแห่งก่อนที่ CA จะสามารถเริ่มลงนามใบรับรองได้ ที่เก็บรูทของ Android ไม่จำเป็นต้องอัปเดตบ่อยนัก แต่มันเกิดขึ้นมากพอที่การอัปเดตที่ค่อนข้างช้าของ Android จะกลายเป็นปัญหา
อย่างไรก็ตาม ตั้งแต่ Android 14 เป็นต้นมา รูทสโตร์ของ Android มี สามารถอัปเดตได้ผ่าน Google Play. ตอนนี้ Android 14 มีสองไดเร็กทอรีที่มีที่เก็บรูทของระบบปฏิบัติการ: ดังกล่าวข้างต้น OTA ที่ไม่เปลี่ยนรูปแบบ /system/etc/security/cacerts ตำแหน่งและ /apex/com ที่อัปเดตใหม่ได้[google].android.conscrypt/security/cacerts ไดเรกทอรี ส่วนหลังมีอยู่ในโมดูล Conscrypt ซึ่งเป็นโมดูล Project Mainline ที่เปิดตัวใน Android 10 ที่ให้การติดตั้ง TLS ของ Android เนื่องจากโมดูล Conscrypt สามารถอัปเดตได้ผ่านการอัปเดตระบบ Google Play นั่นหมายถึงรูทสโตร์ของ Android ก็จะเป็นเช่นนั้นเช่นกัน
นอกเหนือจากการทำให้ที่เก็บรูทของ Android สามารถอัปเดตได้แล้ว Android 14 ยังเพิ่มและลบใบรับรองรูทบางส่วนซึ่งเป็นส่วนหนึ่งของการอัปเดตประจำปีของ Google ไปยังที่เก็บรูทของระบบ
ใบรับรองหลักที่เพิ่มเข้ามาใน Android 14 ได้แก่:
- AC RAIZ FNMT-RCM SERVIDORES SEGUROS
- ANF Secure Server Root CA
- Autoridad de Certificacion Firmaprofesional CIF A62634068
- รูท E1 แน่นอน
- รูท R1 แน่นอน
- ใบรับรอง EC-384 CA
- Certum Trusted Root CA
- D-TRUST BR รูท CA 1 2020
- D-TRUST EV Root CA 1 2020
- DigiCert TLS ECC P384 รูท G5
- DigiCert TLS RSA4096 ราก G5
- โกลบอลทรัสต์ 2020
- GlobalSign รูท E46
- GlobalSign รูท R46
- HARICA TLS ECC รูต CA 2021
- HARICA TLS RSA รูท CA 2021
- HiPKI รูท CA - G1
- ISRG รูท X2
- การสื่อสารความปลอดภัย ECC RootCA1
- การสื่อสารความปลอดภัย RootCA3
- Telia Root CA เวอร์ชัน 2
- Tugra Global Root CA ECC v3.1
- Tugra Global Root CA RSA เวอร์ชัน 3.0
- TunTrust รูท CA
- vTrus ECC รูท CA
- vTrus Root CA
ใบรับรองหลักที่ถูกลบใน Android 14 ได้แก่:
- รากหอการค้า - 2551
- Cybertrust Global Root
- DST รูท CA X3
- EC-ACC
- ผู้ออกใบรับรองหลัก GeoTrust - G2
- Global Chambersign Root 2008
- GlobalSign
- สถาบันการศึกษาและวิจัยกรีก RootCA 2011
- ผู้ออกใบรับรองโซลูชันเครือข่าย
- ผู้ออกใบรับรอง QuoVadis Root
- โซเนราคลาส 2 CA
- Staat der Nederlanden EV Root CA
- Staat der Nederlanden Root CA - G3
- ทรัสต์คอร์ ECA-1
- TrustCor RootCert CA-1
- TrustCor RootCert CA-2
- เชื่อถือ FPS Root CA
- ผู้ออกใบรับรอง VeriSign Universal Root
สำหรับคำอธิบายเชิงลึกเกี่ยวกับใบรับรอง TLS คุณควรอ่านเพื่อนร่วมงานของฉัน บทความของ Adam Conway ที่นี่. สำหรับการวิเคราะห์โดยละเอียดเพิ่มเติมเกี่ยวกับวิธีการทำงานของรูทสโตร์ที่อัปเดตได้ของ Android 14 และเหตุใดจึงเป็นเช่นนั้น โปรดดู บทความที่ผมเคยเขียนไว้ ในหัวข้อ