証明書と秘密鍵からp12ファイルを作る

証明書と鍵ファイルからp12ファイル(pkcs12)を作る手順のメモ。
証明書(cer)をPEMに変換する、鍵(PEM private key)と結合してp12にする、という2段構え。

参考: http://spiratesta.hatenablog.com/entry/20120215/1329280918

1.公開用証明書をPEM証明書形式に変換する

$ openssl x509 -in distribution_identity.cer -inform DER -out distribution_identity.pem -outform PEM

2.PEM証明書形式をP12証明書形式に変換する

$ openssl pkcs12 -export -inkey mykey.key -in distribution_identity.pem -out distribution_identity.p12

パスワードを聞かれるので、適宜入力する(パスワード空欄だとキーチェーン取り込みできない)

3.P12証明書を開いてキーチェーンに取り込む(取り込み時に上記パスワードを入力する)

なぜ必要だったか

MacBook Pro が壊れたので修理して、クリーンインストールし直したんですが、
そのときにとあるプロジェクトのApp Storeのリリース用(Distribution)秘密鍵の移行を忘れて喪失してしまったため、
なんとかサルベージできないか、と試行錯誤するのに使いました。

Circle CIにp12の鍵が上がっていたので、CIを回してSSHで入り、
鍵ファイル(/var/folders/jm/ほげほげ/T/cert.abcdef)をcatして取り出し .key として保存、
Apple Developerサイトの Certificates,IDs & Profiles から証明書ダウンロード、
あとは手順通りの結合で事なきを得ました。バックアップは大事ですね。。

こんな記事もあります

.p12キーストアファイル証明書の中身を確認する