上个周末,亦来云成功举办了首届黑客马拉松大赛。大赛共有14支队伍参加,其中一等奖为ZLX战队,二等奖由火柴盒和毛毛虫队摘得,其实二等奖的这两只队伍是一对兄弟战队,一起包揽二等奖的感觉还是蛮爽的。
为什么叫兄弟战队呢,因为在开始我们组队的时候超过了大赛规定的5个人的人数限制,于是我们就拆分成了两只队伍,开发出两个作品。
今天不谈我们的作品,来看看一等奖队伍的作品是什么。
他们做的是一款基于区块链的智能硬件共享平台,在这个平台上,不同用户之间可以互相添加好友,成为好友后,用户B可向用户A申请授权控制A的智能硬件。
这个项目的核心有两点,一是身份认证,二是共享平台。
身份认证.jpg该图为现场其团队展示的示意图。
图中显示了身份认证主要为由终端(用户)、服务器、MiddleBox(区块链)构成的三角关系。
1、首先,将身份信息和授权信息通过智能合约部署在区块链上,以便后续读写
2、通过手机等终端设备采集用户个人信息进行注册
3、将采集到的身份存储到区块链,具体内容为改用户公钥和身份哈希
4、返回存储结果,即存储在区块链的地址Address
5、当用户再次登录app时,向服务器申请访问,发送数据为登录的身份哈希及其签名、用户Address
6、服务器根据用户Address查询区块链上的Pk和身份哈希
7、返回查询结果
8、服务器验证返回的查询结果和用户提供的信息,通过后提供服务(图中的9)
至此完成了用户首次注册信息上链,再次登录的身份认证。
共享平台.jpg该图为共享平台即授权管理平台的设计图。
其中Carrier SDK为大赛官方提供的开发工具包,用于在没有IP的情况下实现两个用户进行点对点通信。该模型中用于建立好友关系,发送相关消息。
其过程为:
1、首先用户A和用户B登录服务器,实现身份认证。
3、建立好友关系
4、通过carrier可发送消息获取彼此设备列表
5、用户B向用户A发起授权申请
6、用户A同意后将授权信息通过智能合约记录到区块链
7、区块链返回记录结果
8、用户A反馈B授权结果,即授权成功
9、用户B想服务器请求对A的设备进行控制
10、服务器向区块链查询授权信息
11、成功后即可控制A的智能设备
该模型实现了基于大赛给定的Carrier SDk进行添加好友及相关消息发送功能,并在此基础知识实现了共享平台的设计及实现,获得大赛200ELA奖励。
小编微信:bbcstdy
网友评论