UDN
Search public documentation:

AppleiOSProvisioningKR
English Translation
日本語訳
中国翻译

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 홈 > 모바일 홈 > iOS Provisioning 개요

iOS Provisioning 개요


개요


Signing 과 Provisioning 은 애플 iOS 플랫폼용 어플리케이션을 제작, 시험, 배포하기 위해 필요한 키, Certificate, 모바일 프로파일의 생성을 말합니다. 여기서는 iOS 디바이스에서의 개발을 위한 구성 절차를 쉽고 편리하게 하기 위한 방법을 알아보도록 하겠습니다.

ALERT! 주: Signing 과 Packaging 절차를 완료하기 위해서는 등록된 iOS 개발자여야 합니다. iOS 디바이스로 배치하려는 기기에도 iTunes 가 설치되어 있어야 합니다.

주: 한 Certificate 에 관련된 Provision 은 여럿 있을 수 있지만, 한 번에 하나의 Certificate 만 가능합니다. 개발자가 여럿인 팀 작업을 할 때는 이 점을 유념해 주시고, Certificate 가 폐기된 경우에는 관련된 Provision 역시도 변경해 주거나 새로운 Certificate 에 맞도록 새로 만들어 줘야 합니다.

중요: 애플사의 변경으로 인해, 2011년 7월 이후 내려받은 Certificate 와 Provision 은 2011년 8월 이후 iPhonePackager 툴을 사용해야 합니다.

iPhonePackager 툴 / Unreal iOS Configuration Wizard


iPhonePackager 툴은 iOS 하드웨어 디바이스에서 실행시킬 UE3 어플리케이션을 패키징하는 데 사용되는 툴입니다. 또한 Signing Certificate 나 모바일 Provision 같은 관련 파일의 설치와 환경설정은 물론, 연결된 디바이스로의 배치도 처리합니다.

Unreal iOS Configuration Wizard 는 아이폰 패키저 툴에 대한 그래픽 인터페이스입니다. 이를 통해 어플리케이션 패키징하기, 개발자 자격 증명서(credential)를 가지고 어플리케이션 Signing 하기, iOS 디바이스에 패키지 배치하기같은 아이폰 패키저의 기능 전부를 직관적인 시각 인터페이스로 접근해 볼 수 있습니다.

UnrealiOSConfigurationWizard.jpg

아이폰 패키저와 Unreal iOS Configuration Wizard 에 대한 참고서로는 UnrealiPhonePackagerKR 페이지를 참고해 보시기 바랍니다.

iOS Provisioning 구성


언리얼 엔진 3로 iOS 어플리케이션을 개발하는 데 필요한 Provisioning 구성 절차는 Unreal iOS Configuration Wizard 를 사용하여 간단히 할 수 있습니다.

이 절차에는 개발 Certificate 와 Provisioning 프로파일을 생성하기 위해 Apple Developer 사이트를 방문하야 하기도 합니다.

AppleiOSProvisioningSetupKR 페이지에서 신규 개발자는 물론 iOS 플랫폼용 어플리케이션 개발 경험이 있는 기존 개발자도 대상으로 하는 Provisioning 구성 절차를 다루고 있습니다.

iOS Provisioning Portal


Provisioning Assistant 로 수행되는 자동 구성과는 달리 iOS Provisioning Portal 에는 좀 더 고급 또는 특화된 Provisioning 을 수행할 수 있는 툴이 포함되어 있습니다.

ios_provision_portal_home.jpg

여기서 여러 디바이스 추가, 명시적 번들 식별자 구성, Provisioning 프로파일 변경 등의 작업을 할 수 있습니다. 여기서는 언리얼로 iOS 게임을 만드는 개발자에 적용되는 공통 사항 일부를 자세히 다뤄보도록 하겠습니다.

Provisioning 수동 구성에 대한 세부사항은 AppleiOSProvisioningPortalKR 페이지를 참고해 주시기 바랍니다.

키 용어


여기서는 encrypt/decrypt(암호화/복호화) 및 sign/verify(사인/검증)을 상호교환 가능한 식으로 사용합니다. (데이터를 암호화시킬 수도, 데이터의 해시를 복호화시킬 수도 있습니다.)

  • csr - Certificate Signing Request (Certificate Signing 요청)
    • 생성되는 곳: Keychain 또는 Unreal iOS Configuration Wizard
    • 사용되는 곳: iOS Provisioning Portal (apple.com 웹사이트)
    • 사용 목적: Signing Certificate 생성을 위해
  • cer - (개인 키 없는) Certificate
    • 생성되는 곳: iOS Provisioning Portal (apple.com 웹사이트)
    • 사용되는 곳: UDK 패키징과 쿠킹 (xcode 를 사용하도록 구성된 경우 xcode 역시 사용)
    • 사용 목적: (키-쌍과 함께) iOS용 어플리케이션을 Code Signing 하기 위해
  • key - 공용 / 개인 키 쌍
    • 생성되는 곳: Unreal iOS Configuration Wizard
    • 사용되는 곳: Certificate 를 가져올 때의 iOS
    • 사용 목적: (키-쌍과 함께) iOS용 어플리케이션을 Code Signing 하기 위해
  • p12 - Certificate 파일
    • 생성되는 곳: OSX 에서 내보낼 때의 키체인 또는 cer + key 를 가져온 이후 Unreal iOS Configuration Wizard
    • 사용되는 곳: Unreal iOS Configuration Wizard
    • 사용 목적: 한 컴퓨터에서 다른 컴퓨터로 (OSX에서 PC로) Signing ID를 전송하기 위해
  • cer + key: - Certificate 파일과 공용 / 개인 키 쌍
    • 사용되는 곳: Unreal iOS Configuration Wizard

키 쌍과 애플 Certificate


키 쌍을 가지고 할 수 있는 작업의 종류는:

  • Encrypt using a public key (공용 키를 사용하여 암호화): 결과 데이터는 쌍으로 맺어진 개인 키를 사용해서만 복호화시킬 수 있습니다.
  • Encrypt using a private key (개인 키를 사용하여 암호화): 결과 데이터는 공용 키를 가진 누구나 복호화시킬 수 있습니다. (보통 Signing 에 사용된 공용 키로, Signing 을 한 공용 키에 관련된 개인 키의 소유자를 식별합니다.)

Certificate 를 구하기 위해:

  • Code Signing 요청시 공용 키가 포함되며 개인 키는 아닙니다.
  • 애플이 (그 개인 키로 Signing 된) Certificate 를 만들어 Code Signing 을 권한을 부여합니다.

Code Signing 절차를 수행하기 위해 필요한 것은:

  • 귀하의 개인 키
  • Code Signing 권한이 있음을 나타내는 Certificate 체인 (내려받은 Certificate + 저희가 제공한 Parent Certificate)

애플에서 내려받은 Certificate 에는 귀하의 공용 키가 포함되어 있으며, 애플의 개인 키로 Signing 됩니다. 이는 귀하가 iOS용 Code Signing 을 할 수 있음을, 디바이스가 애플의 공용 키를 사용하여 그를 검증할 수 있음을 나타냅니다. 귀하의 개인 키는 포함되어 있지 않기에, 별도로 제공되어야 합니다.