来自法国的移动开发商Applidium之前成功对iPhone4S与Siri服务器的通讯协议进行了反向工程。之后他们发布了一些简要的通讯协议方面的技术解答,并展示了一些使用Siri的语音到文本转换的范例代码。根据他们的研究,Siri的语音识别工作其实并不是在iPhone上完成,而是在苹果的服务器上进行的。也就是说" />
当前位置:首页 > 日记 > 正文

一起来了解 Applidium 如何破解 Siri 的通讯协议

一起来了解 Applidium 如何破解 Siri 的通讯协议
gif" target=_blank>

来自法国的移动开发商Applidium之前成功对iPhone4S与Siri服务器的通讯协议进行了反向工程。之后他们发布了一些简要的通讯协议方面的技术解答,并展示了一些使用Siri的语音到文本转换的范例代码。

根据他们的研究,Siri的语音识别工作其实并不是在iPhone上完成,而是在苹果的服务器上进行的。也就是说,理论上可以让Siri识别来自任何设备的音频。用户使用iPhone4S对Siri说话时,手机只是将音频录制下来,并通过Speex编码器进行压缩,然后通过一个特殊的HTTP请求把音频等信息打包传送给苹果服务器。随后服务器会返回一个经过zlib压缩的plist二进制文件,其中包含的就是答复数据。

  Applidium开发者们上手的途径比较简单,就是在本地网络中截取Siri从iPhone发送到服务器的数据,并进行分析。他们建立了一个假冒的DNS服务器,以此让Siri把请求发送到自己的服务器上。请求是经过SSL加密的,不过他们在iPhone中加载了他们自己的SSL根证书,这样便可以使用自己的服务器进行分析了。

  在他们的服务器上,运行着一个非常简单的HTTP代.理脚本(用Ruby编写),能够将发送到苹果服务器的请求进行延迟,同时将输入和输出结果echo到stdout中,这样就能知道两边都在发送什么数据了。由于需要造出一个自定的Siri请求,他们首先要搞清楚信息格式。实际发送的请求比较特殊,并且包含和HTTP标准不一致的特征。苹果使用的是一种被称作ACE的HTTP请求方法,这种方法可以使用任意长度的数值内容,包含一个自定的用户代理字符串,将自己的身份定义为Assistant。

  请求的header部分也比较特殊,里面含有设备的唯一身份识别信息。 Applidium的研究者发现,header中必须含有合法的唯一身份识别信息,否则服务器不会处理此请求,因为目前服务器只接受来自iPhone4S的请求。这对开发第三方Siri应用而言是个极大的挑战。

  换句话说,任何Siri客户端在发送请求时都必须含有真实的iPhone4S身份识别信息。而一旦开发者将某个iPhone4S身份识别信息放到他开发的应用中并广泛传播,苹果很可能会屏蔽掉该身份识别信息,以此禁用那款应用。




  现在还无法知晓苹果会如何对待未授权的第三方Siri客户端,我们怀疑会很快将它们拖进黑名单。在苹果这边来看,如果突然出现大量计划之外的设备来使用Siri无疑会加重服务器的负担,而在尚未准备扩展服务器之前,这将影响iPhone4S用户的使用体验。

  因此我们可以进一步推断,苹果目前只允许iPhone4S使用Siri的原因并不是硬件限制。所以理论上今后是有可能在老款iPhone上看到Siri的。

  除了设备身份识别方面的数据之外(每台iPhone4S仅有一个身份),个人开发者们可以自由使用Applidium的研究成果,开发自己的应用,前提是苹果不修改Siri的通讯协议。在之后的探索中,有可能发掘出更多Siri的功能,不仅限于语音到文本的识别。 Applidium无私奉献出的代码让上手变得简单了许多,虽说代码大部分还没有进行归档整理,不过已经很好懂了。

  他们公布的范例Siri客户端代码是用Ruby写的。同时也提供了非常简单的命令行工具代码,来使用Speex库生成压缩音频数据,以便传送给苹果服务器。所有范例代码已经上传到了GitHub。

相关文章

魅族15安装SIM卡的步骤讲解

魅族15安装SIM卡的步骤讲解

魅族15安装SIM卡的步骤讲解,魅族15,安装SIM卡,  大家知道魅族15怎么安装SIM卡吗?不知道没有关系,小编今天介绍魅族15安装SIM卡的步骤讲解,希望可以帮助到你哦。  魅族15安装SIM卡的步骤讲解  第一步:首先将魅族15关机,关机后使用自带的卡…

安卓手机数据线投屏到电脑上(安卓

安卓手机数据线投屏到电脑上(安卓

数据线,安卓手机,操作,硬件,知识,1. 安卓手机数据线投屏到电脑上怎么操作1、在手机设置中找到启USB调试模式。2、使用USB数据线连接安卓手机与电脑,如遇询问允许调试模式窗口,选择“一律允许使用这台计算机进行调试”后,点击“确定”。静待几…

文石13.3英寸BOOX Max3电纸书发布

文石13.3英寸BOOX Max3电纸书发布

文石13.3英寸BOOX Max3电纸书发布,刷新,功能,模式,用户,显示器,指纹识别,需求,运存,9月9日消息,文石发布旗下13.3英寸2K分辨率智能墨水屏。这款设备基于高通骁龙平台,搭载一颗8核心2.0赫兹处理器,运行Android 9.0系统。这款设备配备4GB运存+64GB的内置…

ZAO致歉:不会存储个人面部生物识别

ZAO致歉:不会存储个人面部生物识别

ZAO致歉:不会存储个人面部生物识别特征信息,用户,支付,产品,生物识别,特征,换脸,注销,删除,一夜之间,换脸App ZAO就从火遍网络到备受隐私质疑。今日,ZAO在其官方微博上首次回应隐私问题。ZAO表示,我们非常理解大家对于隐私和安全问题的担忧,也很重视大…

电脑音频怎么设置声卡(电脑音频怎

电脑音频怎么设置声卡(电脑音频怎

声卡,设置,音频,模式,调节,1. 电脑音频怎么设置声卡模式金士顿cloud2声卡怎么设置,需要插到电脑上,然后等待系统识别,随后到官网下载驱动安装,随后设置就成功了2. 电脑音频怎么设置声卡模式切换电脑装了声卡切换音响的方法如下1.声卡连接音箱前…

2019年英语四六级成绩查询入口 四

2019年英语四六级成绩查询入口 四

2019年英语四六级成绩查询入口 四六级考试成绩查询常见问题解答,学校,问题解答,查询,网站,快速,座位,代码,口语,据中国教育考试网消息,2019年上半年全国大学英语四、六级考试(含口语)等考试成绩将于8月21日9时发布。除了英语四、六级考试(含口语)成…

老龄化加剧下的孤独感,VR技术或成破

老龄化加剧下的孤独感,VR技术或成破

老龄化加剧下的孤独感,VR技术或成破局点,空间,数据,虚拟现实,认知,学习,培训,英雄,系统,到2035年,随着婴儿潮一代的年龄增长,美国老年人口数量将首次超过儿童。到2030年,随着人口老龄化加剧,到那时地球上每一个婴儿潮时期出生的人都将超过65岁。因此,各个…

电脑代码没有权限打开怎么办(电脑

电脑代码没有权限打开怎么办(电脑

权限,电脑操作,操作,运行,提示,1. 电脑操作没有权限有几种原因可能导致无访问权限1.路由器上网设置问题 请在浏览器中输入路由器的登录网址(IP地址),打开路由器的设置界面,然后查看路由器的连接状态,如果IP地址、DNS服务器后面全部显示0,说…

全民k歌电脑版可以下载音频吗(电脑

全民k歌电脑版可以下载音频吗(电脑

下载,音乐,音频,硬件,知识,1. 电脑上能不能下载全民K歌用电脑运行全面K歌,方法很简单,我跟你说下我的做法吧1.电脑下载一个新浪手游助手2.在新浪手游助手里面搜索全民K歌,可以直接安装这款游戏3.安装完成后她会自动帮你启动4.然后里面大部分游…

设想:来自未来的手机订购单

设想:来自未来的手机订购单

设想:来自未来的手机订购单,系统,兼容,用户,硬件,同步,数据,多系统,订单,由于自用的手机近日坏了,开始物色新手机,但是浏览各大数码网站、商城之后,却依然下不了选购的主意。这里是体验、应用、品牌都领先的iPhone;那边是配置性价比、易用与开放的Androi…

御剑情缘电脑版如何登录(御剑情缘

御剑情缘电脑版如何登录(御剑情缘

账号,登录,密码,服务器,注册,1. 御剑情缘电脑版如何登录账号建议您联系OPPO的客服人员,并要求客服人员给您发送OPPO游戏中心的安装包,然后进入OPPO游戏中心中下载御剑情缘使用,或者通过蓝牙或vivo互传,将OPPO手机的御剑情缘传输到vivo手机。2. …

论AI发展三境:神,神经,神经病

论AI发展三境:神,神经,神经病

论AI发展三境:神,神经,神经病,人工智能,深度学习,网络,智能,标签,强化学习,机器学习,数据,自达特茅斯会议诞生以来,人工智能已经走过60年的历史。在过去60年中,人工智能经历了两次繁荣和低谷,现在正处于第三次繁荣期,关于未来的人工智能的走向,有三种观点。…