Apple Certificate — mi ez, milyen típusai vannak és hogyan működik

Szerző: IT Sectr Megjelenés: 2026-04-16 Olvasási idő: 9 perc

Az Apple Certificate egy digitális dokumentum, amelyet az Apple Developer Portal bocsát ki iOS, iPadOS, macOS, tvOS és watchOS alkalmazások kódjának aláírásához. A Apple Developer Support, 2026 szerint a tanúsítványok a nyilvános kulcsú infrastruktúra (PKI) részét képezik, és szükségesek a fejlesztő személyazonosságának megerősítéséhez. A cikkben áttekintjük a tanúsítványok típusait, létrehozásuk és kezelésük folyamatát.

Főbb pontok

  • Apple Certificate — digitális tanúsítvány, amely igazolja a fejlesztő személyazonosságát a kód aláírásakor
  • Development tanúsítvány lehetővé teszi alkalmazások futtatását fizikai eszközökön a fejlesztés során
  • Distribution tanúsítvány szükséges az App Store-ban történő közzétételhez vagy Ad Hoc terjesztéshez
  • Push Notification tanúsítványok az APNs kapcsolat aláírására és értesítések kézbesítésére szolgálnak
  • A tanúsítvány titkos kulcsa a fejlesztő Keychain-jében tárolódik, és nem adható át harmadik félnek

Mi az Apple Certificate

Apple Certificate egy X.509 formátumú kriptográfiai tanúsítvány, amelyet az Apple tanúsítványkiadó hatósága (Apple Certificate Authority) bocsát ki. Igazolja, hogy tulajdonosa az Apple Developer Program regisztrált tagja, és jogosult alkalmazásokat aláírni az Apple ökoszisztémájához. A tanúsítvány nyilvános kulcsból, a tulajdonos metaadataiból és az Apple CA digitális aláírásából áll — bárki ellenőrizheti a tanúsítvány hitelességét az operációs rendszerbe épített Apple gyökértanúsítvány segítségével.

Az Apple PKI architektúrája három szintet foglal magában: az Apple gyökértanúsítvány (Apple Root CA), a köztes tanúsítvány (Apple Worldwide Developer Relations CA) és a fejlesztői tanúsítvány. Apple Worldwide Developer Relations CA írja alá az összes fejlesztői tanúsítványt — ha ez a köztes tanúsítvány hiányzik a bizalmi láncból, a kódaláírás érvénytelennek minősül. Az Apple gyökértanúsítványai automatikusan frissülnek az iOS-be és macOS-be épített Apple Trust Store mechanizmus révén.

Minden tanúsítvány érvényességi idővel rendelkezik — típustól függően egy-három év. Apple Developer Program automatikusan értesíti a fejlesztőt 30 nappal a tanúsítvány lejárta előtt e-mailben és push értesítéssel. A lejárat után a régi tanúsítvány nem használható új build-ek aláírására — újat kell kiadni, azonban a lejárt tanúsítvánnyal aláírt alkalmazások továbbra is működnek a felhasználók eszközein.

Az Apple bizalmi lánca

A bizalmi lánc garantálja, hogy a fejlesztői tanúsítványt valóban az Apple bocsátotta ki. Az iOS ellenőrzi: az Apple Root CA gyökértanúsítvány (beépítve a firmware-be), az Apple Worldwide Developer Relations CA köztes tanúsítvány, a fejlesztői tanúsítvány. Ha a lánc bármely eleme hiányzik vagy érvénytelen, az iOS blokkolja az alkalmazás indítását code signing hibával. A macOS biztosítja a security segédprogramot bármely tanúsítvány bizalmi láncának ellenőrzéséhez a kulcstartóban.

Hogyan működnek az Apple tanúsítványok

A kódaláírás folyamata az Apple Certificate használatával aszimmetrikus kriptográfián alapul. A titkos kulcs (private key) a fejlesztő számítógépén a Keychain-ben tárolódik, a nyilvános kulcs (public key) pedig a tanúsítványba kerül, és elküldésre kerül az Apple Developer Portalra. Amikor az Xcode aláír egy alkalmazást, létrehozza a bináris fájl hash-ét, és titkosítja azt a titkos kulccsal — ez a digitális aláírás. Az eszköz visszafejti az aláírást a tanúsítványban lévő nyilvános kulccsal, és összehasonlítja a számított hash-sel.

Az Apple az ECDSA (Elliptic Curve Digital Signature Algorithm) algoritmust használja P-256 görbével a 2021 után kiadott összes tanúsítványhoz. Korábban RSA-2048-at használtak. Az ECDSA-ra való áttérés növelte az aláírás-ellenőrzés sebességét az eszközökön és csökkentette az aláírás méretét — mobilos alkalmazásoknál ez különösen fontos, mivel az aláírás-ellenőrzés minden indításkor megtörténik. Az Apple Security Engineering (2025) szerint az ECDSA P-256 az RSA-2048-cal egyenértékű biztonsági szintet nyújt jelentősen alacsonyabb számítási költségek mellett.

A CI/CD folyamatokhoz a tanúsítványt a titkos kulccsal együtt PKCS12 (.p12) formátumba kell exportálni és védett tárolóban tartani. GitHub Actions, Bitrise, Jenkins és más CI rendszerek támogatják a tanúsítványok importálását környezeti változókon vagy titkokon keresztül. A CI ügynökre történő importálás után a tanúsítvány ideiglenesen hozzáadódik a kulcstartóhoz, aláírásra kerül, majd eltávolításra kerül. A Fastlane Match automatizálja ezt a folyamatot, szinkronizálva a tanúsítványokat a fejlesztők között egy titkosított git repository-n keresztül.

Különbség a Development és Distribution tanúsítványok között

Development tanúsítvány lehetővé teszi az alkalmazások aláírását a fejlesztő fizikai eszközein való futtatáshoz. Megszerzéséhez elegendő egy ingyenes Apple ID fiók — az Xcode automatikusan képes létrehozni a Development tanúsítványt. Distribution tanúsítványt csak fizetős Apple Developer Program fiókok ($99/év) bocsátanak ki, és szükséges az alkalmazás App Store-ba küldéséhez, Ad Hoc terjesztéséhez vagy Enterprise terjesztéséhez. Egy fiók több Distribution tanúsítvánnyal is rendelkezhet — például külön minden alkalmazáshoz vagy különböző csapatokhoz.

Az Apple Certificate típusai

Az Apple Developer Portal többféle tanúsítványt kínál, mindegyiket egy adott feladatra tervezve. iOS App Development — alap tanúsítvány az alkalmazások aláírásához a fejlesztési szakaszban. Apple Distribution — fő tanúsítvány az App Store-ban történő közzétételhez. Mac Development és Mac Distribution — megfelelőik macOS alkalmazásokhoz. Minden tanúsítványtípushoz külön kérelem (CSR) tartozik az Apple Developer Portalban.

Külön kategóriát képeznek a push értesítések tanúsítványai. Apple Push Notification service (APNs) vagy külön SSL tanúsítványt, vagy hitelesítési tokenek (APNs Auth Key) használatát igényli. Az APNs SSL tanúsítványok külön kerülnek kiadásra a Development (Sandbox) és Production környezetekhez, és egy adott App ID-hez vannak kötve. APNs Auth Key — modernebb megközelítés: egyetlen kulcs (.p8) szolgálja ki a fiók összes alkalmazását, ami egyszerűsíti a kezelést.

Tanúsítvány típusaRendeltetésÉrvényességi idő
iOS App DevelopmentAláírás eszközökön történő teszteléshez1 év
Apple DistributionKözzététel az App Store-ban és Ad Hoc1 év
Mac DevelopmentmacOS alkalmazások aláírása fejlesztéshez1 év
Mac DistributionKözzététel a Mac App Store-ban1 év
APNs SSL (Sandbox)Push értesítések tesztkörnyezetben1-3 év
APNs SSL (Production)Push értesítések éles környezetben1-3 év

Tanúsítványok létrehozása és kezelése

Az Apple Certificate létrehozása a tanúsítvány-aláírási kérelem (Certificate Signing Request, CSR) generálásával kezdődik a Keychain Access segítségével macOS-en. Keychain Access létrehoz egy kulcspárt: a titkos kulcs a kulcstartóban marad, a CSR pedig elküldésre kerül az Apple Developer Portalra. A személyazonosság ellenőrzése után az Apple aláírja a CSR-t, és kiadja a kész tanúsítványt (.cer), amelyet le kell tölteni és dupla kattintással telepíteni.

Több projekt és csapat kezeléséhez az Apple lehetőséget biztosít tanúsítványok létrehozására különböző Team ID-khoz. Egy fejlesztő több csapatnak is tagja lehet (Apple Developer Program — App Store Connect segítségével), és minden csapathoz külön tanúsítványok kerülnek kiadásra. Xcode automatikusan vált a tanúsítványok között a Signing & Capabilities beállításokban kiválasztott csapat függvényében.

A tanúsítvány visszavonása (revokáció) kritikus művelet: az ezzel a tanúsítvánnyal aláírt összes alkalmazás nem telepíthető új eszközökre (a már telepítettek továbbra is működnek). Apple Developer Portal lehetővé teszi bármely tanúsítvány visszavonását a Certificates szakaszban. A visszavonás okai: a titkos kulcs kompromittálódása, a fejlesztő távozása a csapatból, az Apple Developer Program feltételeinek megsértése. Visszavonás után új tanúsítványt kell kiadni, és az összes aktív build-et újra kell aláírni.

Keychain és tanúsítványok exportálása

Keychain (kulcstartó) — a macOS rendszertárolója tanúsítványok, titkos kulcsok és jelszavak számára. Az összes Apple tanúsítvány és a hozzájuk tartozó titkos kulcs a felhasználó bejelentkezési kulcstartójában (login.keychain) tárolódik. Az Xcode a kód aláírásakor a Keychain-hez fordul, automatikusan kiválasztva a megfelelő tanúsítványt a build típusa alapján. Az aláírási problémák diagnosztizálásához használja a beépített Keychain Access segédprogramot (/Applications/Utilities mappa).

A tanúsítvány exportálása CI/CD célokra a Keychain Access segítségével történik: válassza ki a tanúsítványt és a hozzá tartozó titkos kulcsot (egy sorban kell lenniük), kattintson jobb gombbal, és válassza az Export lehetőséget. Formátum — PKCS12 (.p12). Exportáláskor a Keychain jelszót kér a fájl védelméhez — erre a jelszóra szükség lesz a CI szerveren történő importáláskor. Titkos kulcs nélkül az exportált tanúsítvány használhatatlan az aláíráshoz — csak a már aláírt kód ellenőrzésére használható.

Tanúsítvány importálása CI/CD-ben

Példa parancs a tanúsítvány importálására a CI ügynök kulcstartójába a security segédprogram használatával:

bash
# Ideiglenes kulcstartó létrehozása
security create-keychain -p "temp" build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p "temp" build.keychain

# Tanúsítvány importálása .p12-ből
security import certificate.p12 -k build.keychain \
  -P "${P12_PASSWORD}" -T /usr/bin/codesign

# Aláírási szabályzat konfigurálása
security set-key-partition-list -S apple: -s \
  -k "temp" build.keychain

Security create-keychain létrehoz egy ideiglenes, a felhasználótól elkülönített kulcstartót. Ez fontos a CI számára, hogy ne szennyezze be az ügynök rendszerkulcstartóját. A -T /usr/bin/codesign zászló lehetővé teszi a codesign segédprogram számára a kulcsok elérését jelszókérés nélkül — különben az automatikus aláírás a pipeline-ban egy párbeszédablakkal megszakad. A set-key-partition-list parancs szükséges a macOS automatikus módú kódaláírási követelményeivel való kompatibilitáshoz.

Tanúsítványproblémák és megoldásaik

A leggyakoribb hiba — „No signing certificate found” az Xcode-ban történő fordításkor. Akkor fordul elő, ha a Keychain-ben hiányzik a kiválasztott build típusának megfelelő titkos kulccsal rendelkező tanúsítvány. Megoldás: ellenőrizze a Keychain Access-ben a tanúsítvány meglétét, töltse le az Apple Developer Portalról, és telepítse. Ha a titkos kulcs elveszett (régi számítógép, rendszer újratelepítése), vissza kell vonni a régi tanúsítványt, és újat kell kiadni.

A „Valid signing certificate not found” hiba CI/CD-ben akkor fordul elő, ha a köztes Apple tanúsítványok (Apple Worldwide Developer Relations CA) nincsenek telepítve az ügynökön. Apple a fejlesztői tanúsítvány letöltésekor belefoglalja a köztes tanúsítványokat a láncba, de a .p12 manuális exportálásakor hiányozhatnak. Megoldás — töltse le a köztes tanúsítványokat az Apple Certificate Authority weboldaláról, és telepítse őket a CI ügynök kulcstartójába.

A lejárt tanúsítvány problémája a „This certificate has an invalid issuer” hibával jelentkezik aláíráskor. Az Apple Developer Portal mutatja az egyes tanúsítványok állapotát és lejárati dátumát. Ha az alkalmazást már közzétették az App Store-ban lejárt tanúsítvánnyal, továbbra is működik — az App Store saját Apple tanúsítványát használja a terjesztéshez. Új build feltöltéséhez azonban érvényes Distribution tanúsítvány szükséges. Fastlane tartalmazza a cert parancsot a tanúsítványok automatikus létrehozásához és megújításához.

Gyakran ismételt kérdések

Használható egy Apple Certificate iOS és macOS alkalmazásokhoz is?

Nem, iOS és macOS rendszerekhez különböző típusú tanúsítványokat bocsátanak ki — iOS App Development és Mac Development. Apple Distribution tanúsítvány is platformok szerint van felosztva. A tanúsítvány létrehozásakor az Apple Developer Portalban meg kell adni a célplatformot — univerzális tanúsítvány minden platformhoz nem létezik.

Mi a teendő, ha a tanúsítvány titkos kulcsa elveszett?

Vissza kell vonni a régi tanúsítványt az Apple Developer Portalban a Certificates, Identifiers & Profiles menüponton keresztül. Ezután hozzon létre egy új CSR-t a Keychain Access segítségével, és bocsásson ki egy új tanúsítványt. Minden, a régi tanúsítvánnyal aláírt alkalmazás újra aláírást és az App Store-ba történő újrafeltöltést igényel, ha frissítést kell kiadni.

Hány tanúsítvány lehet egy Apple Developer fiókban?

Egy Apple Developer Program fiókhoz legfeljebb két Distribution tanúsítvány és korlátlan számú Development tanúsítvány engedélyezett egyszerre. Enterprise fiókok külön korlátozásokkal rendelkeznek. Ha elérte a Distribution tanúsítványok korlátját, vissza kell vonnia egy meglévőt az új létrehozása előtt.

Hogyan ellenőrizhető a tanúsítvány érvényességi ideje parancssorból?

Használja a security segédprogramot: a security find-identity -v -p basic felsorolja az összes tanúsítványt a kulcstartóban a lejárati dátumokkal. Egy adott tanúsítványhoz adja meg a SHA-1 hash-ét: security find-certificate -c „Developer” -p | openssl x509 -noout -enddate.

Befolyásolja-e az Apple ID fiók megváltoztatása a meglévő tanúsítványokat?

Igen, a tanúsítványok egy adott Apple Developer fiókhoz (Team ID) vannak kötve. A fiók megváltoztatásakor a régi tanúsítványok érvénytelenné válnak az új Team ID számára. Xcode a fiók Accounts Preferences-ben történő megváltoztatásakor automatikusan kéri új tanúsítványok létrehozását az új csapathoz.

Összefoglaló

  • Apple Certificate — digitális X.509 tanúsítvány, amelyet az Apple CA bocsát ki a fejlesztő személyazonosságának igazolására a kód aláírásakor
  • Development tanúsítvány lehetővé teszi alkalmazások futtatását fizikai eszközökön az App Store-ban történő közzététel nélkül
  • Distribution tanúsítvány szükséges az alkalmazás App Store-ba történő feltöltéséhez és Ad Hoc terjesztéséhez
  • APNs tanúsítványok vagy tokenek szükségesek a push értesítések Apple szervereken keresztüli kézbesítéséhez
  • Titkos kulcs a fejlesztő Keychain-jében tárolódik, elvesztése esetén nem állítható helyre — a tanúsítvány visszavonása szükséges
  • PKCS12 exportálás a tanúsítvány számítógépek közötti és CI/CD rendszerekbe történő átvitelére szolgál
  • Bizalmi lánc Apple gyökér-, köztes- és fejlesztői tanúsítványt foglal magában — bármely láncszem megszakadása blokkolja az aláírást

Kulcsrakész mobilalkalmazást fejlesztünk

Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.

Projekt megbeszélése

Olvassa el is