Androids rotbutik brukade kräva en OTA-uppdatering för att lägga till eller ta bort rotcertifikat. Det kommer inte att vara fallet i Android 14.
Android har ett litet problem som bara reser upp sitt fula huvud en gång varje blå måne, men när det gör det orsakar det viss panik. Lyckligtvis har Google en lösning i Android 14 som kväver det här problemet i sin linda. Problemet är att Android-systemets rotcertifikatlager (rotlager) endast kunde uppdateras via en OTA-uppdatering under större delen av Androids existens. Även om OEM: er och transportörer har blivit bättre på att driva ut uppdateringar snabbare och oftare, kan saker fortfarande bli bättre. Det är därför Google har tagit fram en lösning för att göra Androids rotbutik uppdateringsbar via Google Play, från och med Android 14.
När du går online varje dag litar du på att din enhets programvara är korrekt konfigurerad för att peka dig till rätt servrar som är värd för webbplatserna du vill besöka. Att upprätta rätt anslutning är viktigt så att du inte hamnar på en server som ägs av någon med dåliga avsikter, utan säkert Att upprätta den anslutningen är också viktigt så all data du skickar till den servern är krypterad under överföring (TLS) och förhoppningsvis inte lätt snokade på. Ditt operativsystem, din webbläsare och dina appar kommer dock endast att upprätta säkra anslutningar med servrar på Internet (HTTPS), om de litar på serverns (TLS) säkerhetscertifikat.
Eftersom det finns så, så många webbplatser på Internet, upprätthåller dock inte operativsystem, webbläsare och appar en lista över alla webbplatsers säkerhetscertifikat som de litar på. Istället tittar de för att se vem som undertecknade säkerhetscertifikatet som utfärdats till webbplatsen: Var det självsignerat eller undertecknat av en annan enhet (en certifikatutfärdare [CA]) som de litar på? Denna kedja av valideringar kan vara flera lager djup tills du når en rot-CA som utfärdade säkerheten certifikat som används för att signera certifikatet som så småningom signerade certifikatet som utfärdats till webbplatsen du är besöker.
Antalet rotcertifikatutfärdare är mycket, mycket mindre än antalet webbplatser som har säkerhetscertifikat utfärdade av dem, antingen direkt eller genom en eller flera mellanliggande certifikatutfärdare, vilket gör det möjligt för operativsystem och webbläsare att upprätthålla en lista över rotcertifikatutfärdare som de förtroende. Android, till exempel, har en lista över betrodda rotcertifikat som levereras i operativsystemets skrivskyddade systempartition på /system/etc/security/cacerts. Om appar inte gör det begränsa vilka certifikat man kan lita på, en praxis som kallas certifikatpinning, då använder de som standard operativsystemets rotlager när de bestämmer sig för om de ska lita på ett säkerhetscertifikat. Eftersom "system"-partitionen är skrivskyddad är Androids rotlager oföränderlig utanför en OS-uppdatering, vilket kan utgöra ett problem när Google vill ta bort eller lägga till ett nytt rotcertifikat.
Ibland är ett rotcertifikat på väg att löpa ut, vilket kan leda till att webbplatser och tjänster går sönder och att webbläsare avger varningar om osäkra anslutningar. I vissa fall är den CA som utfärdade ett rotcertifikat misstänks vara skadlig eller komprometterad. Eller a nytt rotcertifikat dyker upp som måste läggas till i alla större operativsystems rotlager innan CA faktiskt kan börja signera certifikat. Androids rotbutik behöver inte uppdateras så ofta, men det händer tillräckligt för att Androids relativt långsamma uppdateringstakt blir ett problem.
Från och med Android 14 har dock Androids rotbutik kan uppdateras via Google Play. Android 14 har nu två kataloger som innehåller operativsystemets rotbutik: den tidigare nämnda, oföränderliga-utanför-OTA /system/etc/security/cacerts plats och den nya, uppdateringsbara /apex/com.[google].android.conscrypt/security/cacerts katalog. Den senare finns i Conscrypt-modulen, en Project Mainline-modul introducerad i Android 10 som tillhandahåller Androids TLS-implementering. Eftersom Conscrypt-modulen är uppdateringsbar genom Google Play System Updates, betyder det att Androids rotbutik också kommer att vara det.
Förutom att göra Androids rotbutik uppdateringsbar lägger Android 14 också till och tar bort vissa rotcertifikat som en del av Googles årliga uppdatering av systemets rotbutik.
Rotcertifikaten som har lagts till i Android 14 inkluderar:
- AC RAIZ FNMT-RCM SERVIDORES SEGUROS
- ANF Secure Server Root CA
- Autoridad de Certificacion Firmaprofesional CIF A62634068
- Visst Root E1
- Visst Root R1
- Certum EC-384 CA
- Certum Trusted Root CA
- D-TRUST BR Root CA 1 2020
- D-TRUST EV Root CA 1 2020
- DigiCert TLS ECC P384 Root G5
- DigiCert TLS RSA4096 Root G5
- GLOBALTRUST 2020
- GlobalSign Root E46
- GlobalSign R46
- HARICA TLS ECC Root CA 2021
- HARICA TLS RSA Root CA 2021
- HiPKI Root CA - G1
- ISRG Root X2
- Säkerhetskommunikation ECC RootCA1
- Säkerhetskommunikation RootCA3
- Telia Root CA v2
- Tugra Global Root CA ECC v3
- Tugra Global Root CA RSA v3
- TunTrust Root CA
- vTrus ECC Root CA
- vTrus Root CA
Rotcertifikaten som har tagits bort i Android 14 inkluderar:
- Handelskammare Root - 2008
- Cybertrust Global Root
- DST Root CA X3
- EC-ACC
- GeoTrust Primary Certification Authority - G2
- Global Chambersign Root 2008
- GlobalSign
- Hellenic Academic and Research Institutes RootCA 2011
- Network Solutions Certificate Authority
- QuoVadis Root Certification Authority
- Sonera Class2 CA
- Staat der Nederlanden EV Root CA
- Staat der Nederlanden Root CA - G3
- TrustCor ECA-1
- TrustCor RootCert CA-1
- TrustCor RootCert CA-2
- Trustis FPS Root CA
- VeriSign Universal Root Certification Authority
För en mer djupgående förklaring av TLS-certifikat bör du läsa min kollega Adam Conways artikel här. För en mer grundlig analys av hur Android 14:s uppdateringsbara rotbutik fungerar och varför den kom till, kolla in artikeln jag skrev tidigare om ämnet.