상세 컨텐츠

본문 제목

phonegap 3.5 에서 푸쉬(Push Notification) 적용하기 - 2.아이폰 인증서 받기 2/2

프로그램개발/Phonegap

by fsteam 2014. 7. 8. 20:28

본문

3. Certificate(인증서) 만들기

앞서서 CSR을 생성하고 App ID를 만들었다.

이제부터는 App ID에 대하여 CSR을 통한 인증서를 만들어 보겠다.

등록된 App ID를 살펴보면 Push Notification 부분이 Configureable 이라고 노란색으로 표시되고 있음을 알수 있다. 하단의 Edit 버튼을 눌러서 진행하자.



Push Notification 항목에 두가지의 박스가 존재한다. 하나는 개발용 인증서 다른하나는 프로덕션용 인증서 이다.

일단 개발테스트를 위한 목적이므로 아래 표시한 버튼을 눌러 개발용 인증서를 생성하자.


여기서 CSR 생성에 대해서 나오는데 앞에서 CSR을 생성해 두었으므로 계속 버튼을 눌러 진행한다.


인증서 생성을 위해서 CSR 파일을 업로드 해야 한다. Choose File.. 버튼을 누르고 앞서 생성한 CSR 파일을 선택해 준다.

그리고 아래 Generate 버튼을 누르면 인증서가 생성이 된다.


인증서가 준비되었다는 메시지가 나오면.. 아래 Download 버튼을 눌러서 인증서를 저장하자.


다운로드한 인증서를 클릭하면 키체인에 추가하겠냐는 메시지가 나오게 된다. 추가를 눌러서 인증서를 키체인에 추가하자.


키체인에 등록된 인증서가 보인다. Apple Development iOS Push Services... 라는 이름으로 인증서가 추가되었다.


인증서는 푸쉬메시지를 전송할 서버에 두고 푸쉬메시지 전송시 사용해야 한다. 따라서 인증서를 내보내 보도록 하자.

인증서에서 마우스 오른쪽 버튼을 누르고 보내기 메뉴를 선택한다.


인증서는 개인정보보호 메일 형태(.pem) 로 저장한다. 이름은 자유롭게 지정 가능하다. 여기서는 cert 라는 이름으로 저장하였다.

cert.pem


개인키도 마찬가지로 마우스 오른쪽 버튼을 통해 저장한다. 개인키는 개인정보교환(.p12) 포맷으로 저장한다.

여기서는 key.p12 라는 이름으로 저장했다.


이제 만들어진 Certificate 와 key 파일을 하나로 합친 파일을 만들것이다. 푸쉬메시지 발송시 별도의 패스워드 입력과정을 거치지 않기 위해서 암호를 풀어서 하나의 파일을 만들것이다. 아래 과정은 콘솔에서 진행한다.


다음은 key.p12 .pem 포맷의 파일로 만드는 과정이다.

$ openssl pkcs12 -nocerts -out key.pem -in key.p12

위 명령어를 입력하면 패스워드를 물어보게 되므로 패스워드를 입력하여 key.pem 파일을 생성하자.


다음은 rsa 키를 생성하는 과정이다. 위에서 만든 key.pem 파일을 이용하여 key.rsa,pem 파일을 생성하자.

$ openssl rsa -in key.pem -out key.rsa.pem


이제 인증서와 key 파일을 하나로 합치는 과정이다. 

$ cat cert.pem key.rsa.pem > apns.pem


최종적으로 apns.pem 이라는 인증서 파일이 생성되었으며, 푸쉬를 발송할 서버에서는 이 파일을 이용하여 푸쉬 메시지를 발송하게 된다. 이 파일은 푸쉬를 발송할 서버로 전송하고 적당한 디렉토리에 잘 보관하도록 한다.


향후 앱을 출시하게 될 때에는 production 용 인증서를 만들어야 함을 잊지 말자!!


관련글 더보기