Sobes.tech
Middle+

Kuidas töötab sertifikaatide süsteem iOS-is?

sobes.tech AI

Vastus AI-lt

Sertifikaad kasutatakse krüptograafilise allkirja ja rakenduste, ettevalmistusprofiilide ning ühenduste kinnitamiseks. Põhikomponendid: Apple Root Certificate, vahesertifikaadid, arendaja sertifikaadid, levitamise sertifikaadid ja provisioning profiilid.

Apple Root Certificate — Apple'i juursertifikaadi keskus, usaldusväärne.

Vahesertifikaadid — vahesertifikaadid, mis ühendavad juursertifikaadi ja lõppsertifikaadid, mis on mõeldud arendajale või levitamiseks.

Arendaja sertifikaat — kinnitab arendaja identiteeti, võimaldades arendada ja siluda rakendusi registreeritud seadmetes.

Levitamise sertifikaat — kasutatakse rakenduste allkirjastamiseks enne nende levitamist App Store'i, Enterprise Programmide või Ad Hoc kaudu.

Provisioning Profile — ühendab rakenduse ID, arendaja/levitamise sertifikaadid ja registreeritud seadmed (Ad Hoc ja arenduse jaoks). Määrab, milliseid Apple teenuseid rakendus saab kasutada (näiteks Push Notifications, Capabilities).

Protsess:

  1. Arendaja arvutis luuakse sertifikaadi allkirjastamise päring (CSR).
  2. CSR laaditakse Apple Developer portaalile.
  3. Apple väljastab arendaja või levitamise sertifikaadi.
  4. Sertifikaat installitakse arendaja arvuti võtmehoidla (Keychain).
  5. Apple Developer portaalis luuakse Provisioning Profile, mis ühendab rakenduse ID, sertifikaadi ja seadmed. Profiil laaditakse samuti alla ja installitakse.
  6. Rakendus allkirjastatakse sertifikaadi ja Provisioning Profile abil ehitamise ajal.
  7. Seadmele installimisel või App Store'is avaldamisel kontrollib iOS süsteem allkirja ja Provisioning Profile.

Kontroll: iOS süsteem kontrollib sertifikaadi usaldusketti, mis algab rakenduse sertifikaadist ja lõpeb Apple Root Certificate'iga, ning sertifikaadi kehtivust Provisioning Profile'i alusel. Kui on vigu, blokeeritakse installimine või käivitamine.

provisioning profile
  .mobileprovision // fail
  sisaldab:
    - Rakenduse ID
    - Sertifikaadid (Arendaja/Levitatav)
    - Seadme UDIDs (arenduseks/Ad Hoc)
    - Õigused (capabilities)

certificate
  .cer // fail
  allkirjastatud Apple poolt
  seotud privaatvõtmega Keychainis