[发明专利]一种基于区块链的位置寻呼和自动应答方法有效
申请号: | 202110785130.0 | 申请日: | 2021-07-12 |
公开(公告)号: | CN113573269B | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 刘儿兀;杨昌鑫 | 申请(专利权)人: | 同济大学 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;H04L9/32 |
代理公司: | 上海科律专利代理事务所(特殊普通合伙) 31290 | 代理人: | 叶凤 |
地址: | 200092 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 位置 寻呼 自动 应答 方法 | ||
1.一种基于区块链的位置寻呼和自动应答方法,其特征是,包括:
步骤一:使用超级账本技术(Hyperledger Fabric)对室内场馆和场馆中的人流进行建模,通过超级账本技术中的Fabric-CA模块对场馆中的人流进行身份认证以及通过基于属性的访问控制技术(Attribute-Based-Access-Control)对场馆中的人流进行身份识别;
步骤二:通过使用秘钥协商算法建立双向的隐私保护机制,配合双向的位置共享能够实现位置共享和隐私保护的自动化;
步骤一中所述建模:拥有n个子场馆1、2、3、4…n,同样地,将联盟链的基础架构调整为一个组织、n个Peer节点P1、P2、P3、P4…Pn、一个CA节点,这n个Peer节点在同一个通道中;相应地,这n个Peer节点分别对应于n个子场馆1、2、3、4…n;假设n个场馆均有进馆口,那么在入口处,游客可获得CA节点颁发的身份证书;自动地,用户在使用基于区块链的位置寻呼和自动应答服务时,会根据其所在的场馆自动连接Peer节点进行服务请求和访问;在Hyperledger Fabric中,一个组织对应于一个CA,这个CA负责颁发和管理此组织下所有用户的身份证书;只要是同一个根据组织下的用户,那么用户可连接到该组织下的任意Peer节点进行基于区块链的服务的请求和访问;
步骤二中所述双向隐私保护机制及配合双向位置共享,具体算法为:
定义四个计算模块,包括计算模块SendAKeyAgr、计算模块RevAndAgr、计算模块SendLmToTheOther、计算模块DecryptLm4TheOther;
上述各个计算模块之间的关系为:在一次位置寻呼和自动应答会话的过程中,参与者双方均先初始化变量,初始化完成后,参与者双方便依次调用SendAKeyAgr、RevAndAgr计算模块完成秘钥的协商,SendLmToTheOther、DecryptLm4TheOther计算模块完成位置的加密和解密;
所述计算模块SendAKeyAgr的算法步骤如下:
A1,调用智能合约的CreateAKey方法生成一条秘钥协商消息;
A2,每生成一条秘钥协商消息,更新己方的From变量,From←UA;
A3,每生成一条秘钥协商消息,更新己方的Seq变量,Seq←Seq+1;
其中,智能合约的CreateAKey方法,旨在根据输入生成一条秘钥消息,其输入为Seq,UA,UB,sessionid,其输出为秘钥协商消息{Seq:1,From:UA,To:UB,PubKey:X,Session:sessionid};
所述计算模块RevAndAgr的算法步骤如下:
B1,当己方的Seq4时,循环进行B2~B7操作:
B2,调用智能合约的QueryMyKeys方法,获取所有接受方为自己的秘钥协商消息;
B3,从所有的秘钥协商消息中找到和己方Seq变量值相同的sequence的那条秘钥协商消息result[i],此秘钥协商消息即为此次处理所需要的那条秘钥协商消息;
B4,如果此时己方的From变量不为空,那么更新己方的To变量To←result[i].to;
B5,将己方的Seq值更新为Seq←Seq+1;
B6,如果己方的Seq值小于4,那么调用计算模块SendAKeyAgr发送秘钥协商消息;
B7,如果己方的From==To时,己方即可计算出此次秘钥协商会话的协商秘钥K←(Yx)mod p,退出循环;
其中,智能合约的QueryMyKeys方法,旨在根据给定的输入返回若干在此位置寻呼和自动应答会话中的秘钥协商消息,其输入为sessionid,其输出为若干在此位置寻呼和自动应答会话中的秘钥协商消息;
所述计算模块SendLmToTheOther的算法步骤如下:
C1,使用协商秘钥K作为对称加密函数encrypt的输入,并使用encrypt函数加密己方的位置;
C2,调用智能合约的CreateALocation方法生成加密位置消息;
其中,智能合约的CreateALocation方法,旨在根据给定的输入创建一条加密位置消息,其输入为le,UA,UB,sessionid,其输出为加密位置消息形如{Location:le,From:UA,To:UB,Session:sessionid};
所述的计算模块DecryptLm4TheOther的算法步骤如下:
D1,调用智能合约的QueryMyLocations方法查询发送给己方的所有加密位置消息;
D2,遍历所有加密位置消息,查询此处会话中的对方发送给己方的加密位置消息location[i];
D3,使用协商秘钥K解密对方发送给己方的加密位置消息;
其中,智能合约的QueryMyLocations方法,旨在根据给定的输入查询指定的位置消息,其输入为sessionid,其输出为若干在此位置寻呼和自动应答会话中的加密位置消息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于同济大学,未经同济大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110785130.0/1.html,转载请声明来源钻瓜专利网。