欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2020106936190
申请人: 西安工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种匿名通信系统,其特征在于,采用匿名通信协议,包括P2P层、secp256k1握手层、匿名数字签名控制层、单对单通信模块、群组通信模块以及区块链模块;

所述P2P层:在本匿名通信协议中,每一个节点拥有一个唯一标识ID,使用P2P机制管理节点,使用预设服务器种子的方法来发现新节点;

所述secp256k1握手层:本匿名通信协议使用secp256k1作为P2P节点握手加密算法,为单对单通信、群组通信、区块链提供消息加密服务;

所述匿名数字签名控制层:作为本匿名通信协议的安全组件,对群组通信层来的交互信息进行加密处理并下发到secp256k1握手层,经过secp256k1握手层加密后发送到P2P层中;

所述单对单通信模块:用于使任意用户之间能够进行单对单的消息通信,双方的消息仅有双方能够解密阅读;

所述群组通信模块:当参与通信的成员组成一个群组,群成员发送的消息仅本群所有人能够接收到;

所述区块链模块为任意区块链技术:本匿名通信协议为区块链模块提供匿名通信服务。

2.根据权利要求1所述的一种匿名通信系统,其特征在于,所述单对单通信模块通信时,假设用户A想与用户B通信,且用户A已知用户B的ID;

具体流程如下:

(1.1)用户A在自己的数据库中查找用户B节点ID的信息,获取用户B节点存活记录,然后使用查取到的用户B节点的地址信息去连接用户B,如果连接失败,则用户B未上线,消息无法发送;

(1.2)如果连接成功,用户A与用户B进入握手流程,若握手失败,则断开连接,若握手成功,则进行通信。

3.根据权利要求2所述的一种匿名通信系统,其特征在于,所述握手流程具体包括以下步骤:a)用户A向用户B发送自己的公钥;

b)用户B接收到公钥以后用接收到的用户A的公钥加密自己的公钥,然后加密后的结果发回给用户A;

c)用户A用自己的私钥解密,得到用户B的公钥,然后生成一个临时用户AES密钥作为共享密钥,用用户B的公钥加密后发送给用户B;

d)用户B用自己的私钥解密后得到共享密钥,用共享密钥加密握手消息标识后发送给用户A;

e)用户A收到后用共享密钥解密,判断是否是握手消息标识,如果不是,则握手失败,断开用户B的连接,否则用共享密钥加密聊天消息标识发送给用户B;

f)用户B用共享密钥解密后判断是否是聊天消息标识,如果不是,则握手失败,断开连接,否则握手成功,当握手成功后,用户A与用户B直接使用共享密钥加密通信中的数据进行通信。

4.根据权利要求1所述的一种匿名通信系统,其特征在于,所述群组通信模块通信时,基于Sub-Pub订阅机制,使用匿名数字签名算法对群组用户进行匿名,具体流程如下:(2.1)群主创建群:生成匿名数字签名的群公共参数、群公钥、群成员发布密钥及群共享密钥;

(2.2)群主发布群:群主创建一个群名,并在区块链模块中查找是否重复,如果群名已存在,则重新选择,否则将群主ID、群名、步骤(2.1)生成的群公共参数以及群公钥注册到区块链模块里进行发布群;然后群主设置关注并监听此群,并保存群成员发布密钥和群共享密钥;

(2.3)群成员加群:通过对区块链中的数据进行查找,找到感兴趣的群,获取到该群信息,然后联系群主,与群主建立单对单通信通道,群主审核该成员的资格后,与该成员一起执行发布过程;群主给该成员颁布群成员证书并发送群共享密钥,该成员得到自己的群成员签名密钥与群共享密钥,然后该成员关注并监听此群的群名,该成员同时保存群公钥;

(2.4)群成员给群内发送消息:用群共享密钥对消息进行加密,然后利用群成员签名密钥对自己加密后的消息进行签名,把加密后的消息与签名打包,然后使用压缩算法进行压缩,接着设置发送的群名,然后使用Sub-Pub订阅机制把压缩数据包推送到P2P层中进行广播;

(2.5)群成员接受消息:收到此广播的成员查看自己是否监听此群,如果未监听,则直接转发此广播给自己的邻居,否则保存此数据包后再转发,然后对数据包进行解压缩,得到使用群共享密钥加密后的消息与签名,接着使用群公钥对签名进行验签,如果验签成功,则说明是本群发送的消息,如果失败,则丢弃此包;再使用自己保存的群共享密钥对加密后的消息进行解密,得到原文消息。

5.根据权利要求4所述的一种匿名通信系统,其特征在于,还包括步骤(2.6)判断两条消息是否由同一成员发出:执行与匿名数字签名机制中的连接过程,根据结果得知是否由同一成员发出。

6.一种匿名通信方法,采用权利要求1所述的一种匿名通信系统,其特征在于,包括单对单通信及群组通信,当单对单通信时,假设用户A想与用户B通信,且用户A已知用户B的ID;

具体流程如下:

(1.1)用户A在自己的数据库中查找用户B节点ID的信息,获取用户B节点存活记录,然后使用查取到的用户B节点的地址信息去连接用户B,如果连接失败,则用户B未上线,消息无法发送;

(1.2)如果连接成功,用户A与用户B进入握手流程,若握手失败,则断开连接,若握手成功,则进行通信。

7.根据权利要求6所述的一种匿名通信方法,其特征在于,所述握手流程具体包括以下步骤:a)用户A向用户B发送自己的公钥;

b)用户B接收到公钥以后用接收到的用户A的公钥加密自己的公钥,然后加密后的结果发回给用户A;

c)用户A用自己的私钥解密,得到用户B的公钥,然后生成一个临时用户AES密钥作为共享密钥,用用户B的公钥加密后发送给用户B;

d)用户B用自己的私钥解密后得到共享密钥,用共享密钥加密握手消息标识后发送给用户A;

e)用户A收到后用共享密钥解密,判断是否是握手消息标识,如果不是,则握手失败,断开用户B的连接,否则用共享密钥加密聊天消息标识发送给用户B;

f)用户B用共享密钥解密后判断是否是聊天消息标识,如果不是,则握手失败,断开连接,否则握手成功,当握手成功后,用户A与用户B直接使用共享密钥加密通信中的数据进行通信。

8.根据权利要求6所述的一种匿名通信方法,其特征在于,当群组通信时,基于Sub-Pub订阅机制,使用匿名数字签名算法对群组用户进行匿名,具体流程如下:(2.1)群主创建群:生成匿名数字签名的群公共参数、群公钥、群成员发布密钥及群共享密钥;

(2.2)群主发布群:群主创建唯一群名,并在区块链模块中查找是否重复,如果群名已存在,则重新选择,否则将群主ID、群名、步骤(2.1)生成的群公共参数以及群公钥注册到区块链模块里进行发布群;然后设置关注并监听此群,群主保存群成员发布密钥和群共享密钥;

(2.3)群成员加群:通过对区块链中数据进行查找,找到感兴趣的群,获取到该群信息,然后联系群主,与群主建立单对单通信通道,群主审核该成员的资格后,与该成员一起执行发布过程;群主给该成员颁布群成员证书并发送群共享密钥,该成员得到自己的群成员签名密钥与群共享密钥,然后该成员关注并监听此群,该成员同时保存群公钥;

(2.4)群成员给群内发送消息:用群共享密钥对消息进行加密,然后利用群成员签名密钥对自己加密后的消息进行签名,把加密后的消息与签名打包,然后使用压缩算法进行压缩,接着设置发送的群名,然后使用Sub-Pub订阅机制把压缩数据包推送到P2P层中进行广播;

(2.5)群成员接受消息:收到此广播的成员查看自己是否监听此群,如果未监听,则直接转发此广播给自己的邻居,否则保存此数据包后再转发,然后对数据包进行解压缩,得到使用群共享密钥加密后的消息与签名,接着使用群公钥对签名进行验签,如果验签成功,则说明是本群发送的消息,如果失败,则丢弃此包;再使用自己保存的群共享密钥对加密后的消息进行解密,得到原文消息。

9.根据权利要求8所述的一种匿名通信方法,其特征在于,还包括步骤(2.6)判断两条消息是否由同一成员发出:执行与匿名数字签名机制中的连接过程,根据结果得知是否由同一成员发出。