摩拜单车开锁实现原理剖析

您所在的位置:网站首页 怎样打开摩拜单车的锁 摩拜单车开锁实现原理剖析

摩拜单车开锁实现原理剖析

#摩拜单车开锁实现原理剖析| 来源: 网络整理| 查看: 265

1.开锁技术可能性分析

1  mqtt 实现 

摩拜服务器作为broker, 手机APP 和  智能锁作为 subcriber/publisher, 过程如下

1.  智能锁和摩拜云端保持长连接,订阅开锁消息(根据ID)

2. APP 用mqtt 登录上 摩拜borker后 携带智能锁号订阅 请求开锁消息(根据ID)

3. borker 收到 开锁消息后,经过业务处理,向智能锁发送开锁消息,同时向APP发送请求开锁消息

2.  Restful Api 短连接实现 摩拜服务器不采用MQTT协议,过程如下 1. 智能锁和摩拜服务器采用私有协议保持长连接 2. 手机APP 通过 Restful API post 智能锁ID 到服务器请求开锁 3. 服务器业务鉴权(是否注册,登录,余额足够),如果鉴权通过则向智能锁发送开锁命令,同时将开锁结果存在数据库 4.返回鉴权结果,如果余额够,则每隔一定周期调用Restful API 查询开锁进度,页面给予刷新,呈现相关结果。 2. 定位摩拜IP,截获开锁过程中的协议 要验证摩拜的实现过程,做靠谱的做法是分析开锁过程中的协议 为此特地找来一辆摩拜单车,用APP开锁,用wireshark 截获开锁过程中的协议,并对协议进行分析

在服务器返回证书的时候可以看到,证书的内容 *.mobike.com ,因此摩拜服务器的IP是 118.89.213.135

经过查询得知IP地址居然是北京腾讯,考虑到腾讯是摩拜的股东,这也就不奇怪了。

3.开过过程协议分析 3.1 开始开锁

3.2 结束开锁

3.3 结论

从开始开锁到结束开锁 手机APP 向 摩拜服务器的443 端口 发送了14次连接请求,如果APP和服务器是长连接,APP大可不必向同一端口反复连接请求,因此有理由相信,摩拜单车开锁过程中采用的是短连接,最有可能是APP 反复调用 RestApi 接口来获取状态



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3