質問

P12証明書を使用してMANIFEST.JSONからApple PassBook署名ファイルを自動的に生成するためのシェルスクリプトを書いています。これが私がすることです:

openssl pkcs12 -passin pass:"mypass" -in "mycert.p12" -clcerts -nokeys -out certificate.pem
openssl pkcs12 -passin pass:"mypass" -in "mycert.p12" -nocerts -out key.pem
openssl smime  -passin pass:"mypass" -binary -sign -signer certificate.pem -inkey key.pem -in manifest.json -out signature -outform DER
.

最初の2つの機能は正常に機能します。少なくともcertificate.pemとkey.pemの両方が作成されます。署名ファイルも作成されますが、何らかの理由でそれは空(0バイト)ですが、manifest.jsonは空でもなく、証明書とキーです。これをどのように起こるのか、そしてどのように修正することができますか?

役に立ちましたか?

解決

この問題を解決しました。どうやら、私はこれを行うためにwwdr.pemの証明書も必要です。これがどのように機能したかです。

openssl pkcs12 -passin pass:"somepass" -in "mycert.p12" -clcerts -nokeys -out certificate.pem
openssl pkcs12 -passin pass:"somepass" -in "mycert.p12" -nocerts -out key.pem -passout pass:"somepass"
openssl smime -binary -sign -certfile WWDR.pem -signer certificate.pem -inkey key.pem -in manifest.json -out signature -outform DER -passin pass:"somepass"
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top