Doarchive

Apple Code Signing , iOS Certificate , Device Registration (UDID 확인방법) 본문

Mobile/iOS

Apple Code Signing , iOS Certificate , Device Registration (UDID 확인방법)

오순발닦개 2023. 7. 25. 13:36

코드 서명(Code Signing) 이란. 

애플은 iOS 개발자 프로그램 라이센스 계약서를 통해  개발자는 애플의 승인을 받은 앱만 iOS 장치에서 판매하거나 배포할 수 있게한다 이 과정에서  꼭 필요한게  코드 사이닝 과정으로  이는  iOS와 macOS 앱의 무결성과 신뢰성을 보장하는 작업이다 

 

 

용어 정리

키체인 (Keychain):

키체인은 애플의 보안 저장소로, 암호, 인증서, 암호화 키 등을 안전하게 저장하는 데 사용됨.

 

인증서 (Certificate):

인증서는 개발자의 신원을 증명하고, 앱에 서명하는 데 사용됨. 

 

프로비저닝 프로필 (Provisioning Profile):

프로비저닝 프로필은 앱이 설치되고 실행될 있도록 하는 파일로, 개발자 계정, ID, 인증서, 기기 정보 등을 포함

 

 

코드 서명(Code Signing)  과정 

 

1.인증서 요청 생성(CSR):

1-1  키체인 접근 (Keychain Access Application)을 통해 인증서 서명 요청(Certificate Signing Request, CSR)을 생성합니다. 

키체인 접근 - 인증서지원- 인증기관에서 인증서요청 탭을 순서대로 선택합니다 

 

 

1-2 인증서 생성후 로컴에 저장합니다 

 

 

1-3 CSR이 생성되면, 개인 키(Private Key)가 함께 생성되고 Keychain 저장됩니다.

 

 

 

 

2. 애플 개발자 포털에서 인증서 발급:

2-1 개발자 포털에서 Certifications을 선택합니다 

 

2-2 원하는 항목을 선택한뒤

 

2-3  로컬에 저장해 두었던 CSR Apple 개발자 멤버 센터에 업로드합니다.

 

2-4 애플의 인증 서버에서 CSR 확인하고 인증서(Certificate)가 발행되면  인증서를  다운로드합니다.

 

2-5 다운받은 인증서를 Keychain 내 인증서 탭에  저장하면 

인증서와 원래 키체인에 저장되어 있던 개인 키가 연결되어 코드 사이닝 아이덴티티(Code Signing Identity) 생성됩니다.

 

 

 

3.프로비저닝 프로필 발급

3-1 Apple Develper 에서 Identifier 탭을 선택합니다 

 

3-2 만들고자 하는 앱의  Bundle Identifier 를 구성합니다.

이미 앱을 만든경우 Xcode프로젝트에서  Bundle Identifier를 확인한뒤  입력합니다. 

 

 

3-3 내 프로젝트의 Bundle Identifier 를 확인합니다

 

 

 

4.디바이스 등록  :  해당 앱이 설치될  디바이스의 UDID 개발자 계정에 등록되어 있어야 합니다

4-1 Apple Develper 에서 Devices 탭을 선택합니다 

4-2 기기를 MAC  과 연결하면 UDID 를 확인 할수 있습니다 

 

4-3 해당 기기의 UDID를 등록합니다. 

 

 

 

 

이후  Xcode  연결된 장비를 연결하고  실행하면  , Xcode가 앱을 서명하고, Provisioning Profile을 기기로 전송합니다.

iOS 기기는 앱의 서명에 사용된 인증서가 Provisioning Profile에 포함되어 있는지, 기기의 UDID와 App ID가 일치하는지 확인한 후 설치를 허용합니다.

 
728x90