ドキュメントには記載されてThe signature is a PKCS #7 detached signature of the manifest file
いますが、openssl を使用してそれを行うにはどうすればよいですか?
Passbook については、次のコマンドを見つけました。
openssl pkcs12 -passin pass:test -in ./Certificates.p12 -clcerts -nokeys -out ./certificate.pem
openssl pkcs12 -passin pass:test -in ./Certificates.p12 -nocerts -out ./key.pem
openssl smime -passin pass:test -binary -sign -signer ./certificate.pem -inkey ./key.pem -in ./pushPackage.raw/manifest.json -out ./pushPackage.raw/signature xs-outform DER
WWDR証明書でも試しました:
openssl smime -passin pass:test -binary -sign -certfile ~/Downloads/AppleWWDRCA.cer -signer ./certificate.pem -inkey ./key.pem -in ./pushPackage.raw/manifest.json -out ./pushPackage.raw/signature xs-outform DER
そして、それを圧縮します:
zip -r ../example.zip . -x '*.DS_Store'
しかし、私はまだ「Signature verification of push package failed
」を取得します。