苹果发布证书导致14094410错误:SSL例程:SSL3_READ_BYTES:SSLv3警报握手失败。

3
我已经创建了一款支持通知的iPhone应用,按照Ali Hafizji的教程进行操作。在生产环境中运行时,我遇到了以下错误:14094410:SSL routines:
SSL3_READ_BYTES:sslv3 alert handshake failure

iTunes 显示分发配置:

Enabled Services: Game Center, In-App Purchase, Push Notifications
Expires:Sep 15, 2015
Status:Active

我已将pem文件加载到服务器上,并像这样调用它:

    theCertfile ='./CK_production.pem'
    theHost = ( 'gateway.push.apple.com', 2195 )
    ssl_sock = ssl.wrap_socket( socket.socket( socket.AF_INET, socket.SOCK_STREAM ), certfile = theCertfile )
    ssl_sock.connect( theHost )
    ssl_sock.write( theNotification )
    ssl_sock.close()

我了解苹果已停止使用SSL 3.0发送推送通知,我们需要使用TSL。苹果文档中没有示例,有人能指导我在Python/Django中如何操作吗?(为了明确起见,我已经搜索过教程,但没有找到合适的。)
2个回答

1

原因是苹果停止使用SSL 3.0发送推送通知。

为什么?2014年9月末发布的一篇新闻称其不再安全。阅读苹果说明

您可以谷歌“BEAST攻击”以获取更多信息。

现在? 您的服务需要使用TLS。 这里有苹果文档


你有如何设置TLS通知的教程链接吗? - liv a

0

我曾经遇到过同样的问题,后来发现是我在Mac终端上使用PHP命令运行脚本。将文件复制到我的服务器上,现在它可以正常工作了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接