Ako funguje systém certifikátov v iOS?
sobes.tech AI
Odpoveď od AI
Certifikáty sa používajú na kryptografické podpisovanie a overovanie aplikácií, profilov prípravy a pripojení. Kľúčové komponenty: Korunový certifikát Apple, Medzikroky certifikáty, Certifikáty vývojára, Certifikáty distribúcie a Provisioning profily.
Korunový certifikát Apple je dôveryhodný koreňový certifikát Apple.
Medzikroky certifikáty spájajú koreňový certifikát s koncovými certifikátmi vývojára/distribútora.
Certifikát vývojára identifikuje vývojára na účely vývoja a ladenia na registrovaných zariadeniach.
Certifikát distribúcie sa používa na podpisovanie aplikácií pred ich rozšírením cez App Store, Enterprise programy alebo Ad Hoc.
Provisioning profil spája ID aplikácie, certifikáty vývojára/distribútora a registrované zariadenia (pre Ad Hoc a vývoj). Určuje, aké služby Apple môže aplikácia používať (napríklad Push Notifications, Capabilities).
Proces:
- Vytvorí sa žiadosť o podpis certifikátu (CSR) na počítači vývojára.
- CSR sa nahrá na portál Apple Developer.
- Apple vydá certifikát vývojára alebo distribúcie.
- Certifikát sa nainštaluje do úložiska kľúčov (Keychain) na počítači vývojára.
- Vytvorí sa Provisioning profil na portáli Apple Developer, ktorý spája ID aplikácie, certifikát a zariadenia. Profil sa tiež nahrá a nainštaluje.
- Aplikácia sa podpíše počas zostavenia pomocou certifikátu a Provisioning profilu.
- Pri inštalácii na zariadenie alebo pred publikovaním v App Store sa podpis a Provisioning profil overujú systémom iOS.
Overenie: Systém iOS overuje reťazec dôvery certifikátu, ktorý začína od certifikátu aplikácie a končí pri Apple Root certifikáte, a platnosť Provisioning profilu. Ak je niečo nesprávne, inštalácia alebo spustenie aplikácie je zablokované.
Provisioning profil
.mobileprovision // súbor
obsahuje:
- ID aplikácie
- Certifikáty (Vývojár/Distribúcia)
- UDID zariadení (pre Dev/Ad Hoc)
- Oprávnenia (Capabilities)
Certifikát
.cer // súbor
podpísaný Apple
spojený s privátnym kľúčom v Keychain