2015-11-17 69 views
1

我在通用聯的工作,我有四個文件如下(通過我的域名是SSL取得認證)如前所述,蘋果應用現場關聯的通用鏈路簽約問題

ACertificate-1.cer 
ACertificate-2.cer 
ServerCertificate.cer 
Private.key 

和JSON文件

{ 
    "applinks": { 
     "apps": [], 
     "details": [ 
      { 
       "appID": "ZY9H86N885.com.abc.Developementabc", 
       "paths": ["*"] 
      } 
     ] 
    } 
} 

與下面的命令我已簽署了apple-app-site-association文件

cat json | openssl smime -sign -inkey Private.key -signer ServerCertificate.cer -certfile ACertificate-1.cer -noattr -nodetach -outform DER > apple-app-site-association 

我沒有想法,在哪裏把第二個證書ACertificate-2.cer,所以我離開它那樣。

,我沒有在https://limitless-sierra-4673.herokuapp.com/

警覺到這一點的所有點

你的文件應該驗證,並與openssl smime -verify -inform DER -noverify

返回其內容的話,我想驗證它像低於

openssl smime -verify -in apple-app-site-association -inform DER -content json -noverify -binary ServerCertificate.cer > /dev/null 

我不知道哪個證書/密鑰/文件放在哪裏!我只是想同上,然後我得到了下面的錯誤

Verification failure 
139806288791456:error:04091068:rsa routines:INT_RSA_VERIFY:bad signature:rsa_sign.c:293: 
139806288791456:error:21071069:PKCS7 routines:PKCS7_signatureVerify:signature failure:pk7_doit.c:1222: 
139806288791456:error:21075069:PKCS7 routines:PKCS7_verify:signature failure:pk7_smime.c:410: 

在那裏我做了錯事&幫我解決這個

回答

1

沒關係,它的解決。

我已經使用OpenSSL的命令相結合的連鎖證書到一個單一的certificate.crt,那麼我下面的命令

sudo openssl smime -sign -signer my_combined_certificate.crt -inkey private.key -in json.txt -out apple-app-site-association 

其工作過,在深度鏈接現在正在簽署的蘋果協會文件:

更新1

,如果你有單獨的文件,而不是一個組合,然後用下面的命令就可以簽字。

cat file.json | openssl smime -sign -inkey privatefile.key -signer servercertificate.cer -certfile certficate.cer -noattr -nodetach -outform DER > apple-app-site-association 

signer.cer

servercertificate.cer - >具有3鏈證書

certificate.cer - >具有一個SSL提供商證書

privatefilekey.key - >是密鑰文件