2015-11-17 1 views
1

Я работаю на универсальном связывании, у меня есть четыре файла, как указано ниже (через который мой домен SSL certifed),яблочно-приложение-сайт-ассоциация вопрос подписания универсального ссылка

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

хорошо, ее решить.

Я объединил эти закованные сертификаты в один certificate.crt с помощью команд OpenSSL, то я подписал файл яблочного ассоциации с командой ниже

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

ИТС работоспособен, то глубокие ссылки работает сейчас :)

UPDATE 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 - > является ключевым файлом