Sobes.tech
Middle+

როგორ მუშაობს სერტიფიკატების სისტემა iOS-ში?

sobes.tech AI

პასუხი AI-სგან

სერტიფიკატები გამოიყენება კრიპტოგრაფიული ხელმოწერისა და აპლიკაციების, მომზადების პროფილების და კავშირების ვალიდაციისთვის. ძირითადი კომპონენტები: Apple Root Certificate, შუამავალი სერტიფიკატები, დეველოპერის სერტიფიკატები, დისტრიბუციის სერტიფიკატები და Provisioning Profiles.

Apple Root Certificate — Apple-ის ძირითადი სერტიფიკატების ცენტრი, რომელიც სანდოა.

შუამავალი სერტიფიკატები — შუამავალი სერტიფიკატები, რომლებიც აკავშირებს ძირითადი სერტიფიკატს და საბოლოო სერტიფიკატებს, რომლებიც გამოიყენება დეველოპერის ან დისტრიბუციისთვის.

დეველოპერის სერტიფიკატი — ადასტურებს დეველოპერს, რათა ის შეძლოს განვითარება და დებაგი რეგისტრირებულ მოწყობილობებზე.

დისტრიბუციის სერტიფიკატი — გამოიყენება აპლიკაციების ხელმოწერისთვის, სანამ ისინი გავრცელდება App Store, Enterprise Programs ან Ad Hoc-ის მეშვეობით.

Provisioning Profile — აკავშირებს აპლიკაციის ID-ს, დეველოპერის/დისტრიბუციის სერტიფიკატებს და რეგისტრირებულ მოწყობილობებს (Ad Hoc და განვითარებისთვის). განსაზღვრავს, რომელი სერვისები შეუძლია გამოიყენოს აპლიკაციას (მაგალითად, Push Notifications, Capabilities).

პროცესი:

  1. შექმნილია სერტიფიკატის ხელმოწერის მოთხოვნა (CSR) დეველოპერის მანქანაზე.
  2. CSR იტვირთება Apple Developer პორტალზე.
  3. Apple გამოუშვებს დეველოპერის ან დისტრიბუციის სერტიფიკატს.
  4. სერტიფიკატი ინსტალირდება დეველოპერის მანქანაზე Keychain-ში.
  5. Apple Developer პორტალზე შექმნილია Provisioning Profile, რომელიც აკავშირებს აპლიკაციის ID-ს, სერტიფიკატს და მოწყობილობებს. პროფილი ასევე იტვირთება და ინსტალირდება.
  6. აპლიკაცია ხელმოწერილია სერტიფიკატით და Provisioning Profile-ით მშენებლობის დროს.
  7. მოწყობილობაზე ინსტალაციის ან გამოქვეყნების წინ, iOS სისტემა ამოწმებს ხელმოწერას და Provisioning Profile-ს.

შესამოწმებლად: iOS სისტემა ამოწმებს სერტიფიკატის სანდოობის ჯაჭვს, რომელიც იწყება აპლიკაციის სერტიფიკატიდან და მიდის Apple Root Certificate-მდე, ასევე ვალიდურობას, რომელიც განსაზღვრულია Provisioning Profile-ით. თუ რაიმე შეცდომაა, ინსტალაცია ან გაშვება ბლოკდება.

provisioning profile
  .mobileprovision // ფაილი
  შეიცავს:
    - აპლიკაციის ID
    - სერტიფიკატები (დეველოპერი/დისტრიბუცია)
    - მოწყობილობის UDIDs (დეველოპერი/Ad Hoc)
    - უფლებები (capabilities)

certificate
  .cer // ფაილი
  ხელმოწერილია Apple-ით
  დაკავშირებულია პირადი გასაღებით Keychain-ში