python m2crypt и load_key, но у меня есть только файлы .cert

У меня проблема. Я тестирую некоторые советы по сберегательной книжке Apple с помощью python. Я использую M2Crypto для получения подписи.

Код:

    def passwordCallback(*args, **kwds):
        return password

    smime = SMIME.SMIME()
    smime.load_key(key, certificate, callback=passwordCallback)
    pk7 = smime.sign(SMIME.BIO.MemoryBuffer(manifest), flags=SMIME.PKCS7_DETACHED | SMIME.PKCS7_BINARY)
    pem = SMIME.BIO.MemoryBuffer()
    pk7.write(pem)
    der = ''.join(l.strip() for l in pem.read().split('-----')[2].splitlines()).decode('base64')

Предполагается, что код работает хорошо и генерирует содержимое подписи, проблема заключается в «ключе» и «сертификате».

Эти две переменные являются именами сертификата.pem и key.pem, но я загрузил только файл pass.cert с портала Apple Developer.

Как можно получить эти два файла с помощью openssl или чего-то подобного?

РЕШЕНО:

Я решил с этой ссылкой

http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12


person user1694206    schedule 24.09.2012    source источник


Ответы (1)


Вам необходимо либо получить сертификат от стороннего центра сертификации (ЦС), либо создать самозаверяющий сертификат, используя что-то вроде процесса, описанного в openSSL. Если вы просто тестируете некоторый код, самозаверяющий сертификат будет работать, но сертификат, выданный ЦС, дает другим пользователям некоторое указание на то, что вы тот, за кого себя выдает сертификат. Вы можете создать самозаверяющий сертификат, утверждающий, что вы [email protected], но ни один авторитетный ЦС не выдаст вам такой сертификат.

person Dave    schedule 24.09.2012