Ինչպես է աշխատում iOS-ի սերտիֆիկատների համակարգը?
sobes.tech AI
Պատասխան AI-ից
Սերտիֆիկատները օգտագործվում են կրիպտոգրաֆիկ ստորագրության և հավելվածների, պատրաստման պրոֆիլների և կապերի վավերացման համար: Բանալի բաղադրիչներ՝ Apple Root Certificate, միջնորդական սերտիֆիկատներ, ծրագրավորողի սերտիֆիկատներ, տարածման սերտիֆիկատներ և provisioning պրոֆիլներ:
Apple Root Certificate — Apple-ի հիմնական սերտիֆիկատային կենտրոնը, որը հուսալի է:
Միջնորդական սերտիֆիկատներ — միջնորդական սերտիֆիկատներ, որոնք կապում են հիմնական սերտիֆիկատը և վերջնական սերտիֆիկատները՝ ծրագրավորողի կամ տարածման համար:
Ծրագրավորողի սերտիֆիկատ — հաստատում է ծրագրավորողին՝ զարգացման և դեբագի նպատակներով գրանցված սարքերում:
Տարածման սերտիֆիկատ — օգտագործվում է հավելվածների ստորագրության համար՝ նախքան դրանք տարածելը App Store, Enterprise Programs կամ Ad Hoc:
Provisioning Profile — կապում է հավելվածի ID-ն, ծրագրավորողի/տարածման սերտիֆիկատները և գրանցված սարքերը (հատկապես Ad Hoc և զարգացման համար): Հստակեցնում է, թե որ ծառայությունները կարող է օգտագործել հավելվածը՝ օրինակ, Push Notifications, Capabilities:
Պրոցես:
- Ստեղծվում է ստորագրության հարցում (CSR) ծրագրավորողի մեքենայում:
- CSR-ն բեռնվում է Apple Developer պորտալ:
- Apple-ն թողարկում է ծրագրավորողի կամ տարածման սերտիֆիկատ:
- Սերտիֆիկատը տեղադրվում է ծրագրավորողի մեքենայի բանալի պահոցում (Keychain):
- Apple Developer պորտալում ստեղծվում է Provisioning Profile, որը կապում է հավելվածի ID-ն, սերտիֆիկատը և սարքերը: Պրոֆիլը նույնպես բեռնվում և տեղադրվում է:
- Հավելվածը ստորագրվում է սերտիֆիկատով և Provisioning Profile-ով՝ կառուցման ժամանակ:
- Տեղադրման կամ հրապարակման նախքան iOS համակարգը ստուգում է ստորագրությունը և Provisioning Profile-ը:
Ստուգում: iOS համակարգը ստուգում է վստահության շղթան, որը սկսվում է հավելվածի սերտիֆիկատից և հասնում Apple Root Certificate-ին, ինչպես նաև վավերականությունը՝ ըստ Provisioning Profile-ի: Եթե ինչ-որ սխալ կա, տեղադրումը կամ գործարկումը արգելվում է:
provisioning profile
.mobileprovision // ֆայլ
ներառում է՝
- App ID
- Certificates (Developer/Distribution)
- Device UDIDs (for Dev/Ad Hoc)
- Entitlements (capabilities)
certificate
.cer // ֆայլ
ստորագրված է Apple-ի կողմից
կապակցված է մասնավոր բանալիին Keychain-ում