CN116137568A - 一种基于区块链的即时聊天数据的查询方法及装置 - Google Patents
一种基于区块链的即时聊天数据的查询方法及装置 Download PDFInfo
- Publication number
- CN116137568A CN116137568A CN202310153090.7A CN202310153090A CN116137568A CN 116137568 A CN116137568 A CN 116137568A CN 202310153090 A CN202310153090 A CN 202310153090A CN 116137568 A CN116137568 A CN 116137568A
- Authority
- CN
- China
- Prior art keywords
- user terminal
- session
- blockchain
- preset user
- query
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于区块链的即时聊天数据的查询方法及装置,所述方法将即时聊天数据存储在区块链网络上进行分布式存储,在查询过程中由会话查询发起方用户通过预设用户终端发送链上消息查询请求,并明确待请求会话双方的身份标识信息,以及指定条数或分页信息,由区块链网络进行查询,并利用预设用户终端的公钥进行加密后返回,有预设用户终端利用本地私钥进行解密和展示。利用区块链去中心化、开放性、自治性、信息不可篡改和匿名性这五个基本特征,能够实现对即时聊天数据的安全存储和访问,防止隐私泄露和篡改,杜绝数据不可信的问题,极大提升数据安全性。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链的即时聊天数据的查询方法及装置。
背景技术
现有IM即时通讯技术,聊天信息都是存储在用户终端设备上或服务提供方的服务器中,数据使用传统的数据库进行存储。这种中心化的数据存储形式,容易受到内部或外部攻击,服务器的管理员可以从服务端的平台中直接查看和删除用户上传的文件,鉴于这种管理机制,用户的隐私容易发生泄漏。服务器上存储着大量的用户数据,对大用户群服务的信息劫持更是黑客们收入的重要来源,这就意味着服务器的安全直接影响着用户数据的安全。中心化存储的投入巨大,但是廉价是用户的主要使用需求,这就与企业运营盈利的目的相矛盾。当大多数数据托管在少数几个主服务器上时,攻击者更容易阻止对它们的访问。对于攻击者来说,只要在边境路由上设置内容审查,就可以阻断访问中心服务器的连接。同时网络通信遭遇DDoS攻击的风险也大大增加。
鉴于传统即时聊天数据存储和访问中存在数据不可信、易篡改、隐私易泄露的问题,亟需一种新的聊天数据存储和查询形式。
发明内容
鉴于此,本发明实施例提供了一种基于区块链的即时聊天数据的查询方法及装置,以消除或改善现有技术中存在的一个或更多个缺陷,解决现有即时聊天数据查询过程易受攻击篡改、易泄露、数据不可信的问题。
本发明的一个方面提供了一种基于区块链的即时聊天数据的查询方法,所述方法用于在区块链网络上执行,所述区块链网络由多个微节点组成,所述区块链连接一个或多个预设用户终端,该方法包括以下步骤:
获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求,所述链上消息查询请求包括待请求会话双方的身份标识信息,以及指定条数或分页信息;
所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID;
所述区块链网络根据所述待请求会话双方的身份标识信息获取会话查询发起方的用户公钥;
所述区块链网络根据所述待请求会话双方的身份标识信息以及各目标消息的ID查找链上存储的目标消息,并采用所述用户公钥对各目标消息进行加密;
将加密后的各目标消息返回至所述预设用户终端,以通过所述会话查询发起方的私钥进行解密,并呈现给所述会话查询发起方用户。
在一些实施例中,获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之前,还包括:
将会话双方的会话消息以发送时间为键,会话消息的ID为值,构建平衡树进行存储,并保存在区块链上。
在一些实施例中,所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID,包括:
获取所述会话查询发起方用户通过所述预设用户终端发送的目标时间点;
以所述目标时间点为键查询平衡树,并按照需求获取所述目标时间点前后指定条数或分页的双方会话目标消息的ID。
在一些实施例中,所述方法还包括:设置中继链对各预设用户终端以及所述区块链网络中各微节点的身份信息进行预注册,采用PKI/CA技术体系对各预设用户终端以及所述区块链网络中各微节点进行注册授权管理,为各预设用户终端以及所述区块链网络中各微节点发放基于公私密钥对相应的数字签名;
获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之后,还包括:向所述预设用户终端发送身份验证请求,接收所述预设用户终端返回的数字签名并发送至所述中继链进行验证,在验证通过的情况下,所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
在一些实施例中,获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之后,还包括:
按照预设的验证规则对所述预设用户终端发送隐私身份验证请求,以对所述会话查询发起方用户进行隐私验证;
接收所述会话查询发起方用户通过所述预设用户终端返回的隐私验证信息并验证,在验证通过的情况下,由所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
在一些实施例中,接收所述会话查询发起方用户通过所述预设用户终端返回的隐私验证信息并验证之后,还包括:在验证失败的情况下,向预设用户发送告警信息。
在一些实施例中,所述区块链网络根据所述待请求会话双方的身份标识信息以及各目标消息的ID查找链上存储的目标消息之后,还包括:
采用预设哈希算法对各目标消息进行运算,并得到第一哈希值;
采用所述用户公钥对各目标消息以及所述第一哈希值进行加密,将加密后的各目标消息以及所述第一哈希值返回至所述预设用户终端,以通过所述会话查询发起方的私钥进行解密;
由所述预设用户终端采用所述预设哈希算法对解密得到的各目标消息进行运算,并得到第二哈希值;
由所述预设用户终端将所述第一哈希值与所述第二哈希值进行比对,在一致的情况下,接收所述预设用户终端发送的查询成功反馈信息。
在一些实施例中,由所述预设用户终端将所述第一哈希值与所述第二哈希值进行比对之后,还包括:在不一致的情况下,接收所述预设用户终端发送的查询失败反馈信息。
另一方面,本发明还提供一种基于区块链的即时聊天数据的查询装置,包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现上述方法的步骤。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述方法的步骤。
本发明的有益效果至少是:
本发明所述基于区块链的即时聊天数据的查询方法及装置,基于区块链对即时聊天数据进行存储和查询,利用区块链去中心化、开放性、自治性、信息不可篡改和匿名性这五个基本特征,能够实现对即时聊天数据的安全存储和访问,防止隐私泄露和篡改,杜绝数据不可信的问题,极大提升数据安全性。
进一步的,通过以发送时间为键、会话消息的ID为值构建平衡树,以使得在数据查找过程中能够极大的节约时间,提高查找效率。
进一步的,在采用PKI/CA技术体系对各预设用户终端以及所述区块链网络中各微节点进行注册授权管理,并在查询即时聊天数据的过程中进行身份验证,能够提升安全性。
进一步的,还通过预设的验证规则对预设用户终端发送隐私身份验证,以核查用户个人身份。
进一步的,在数据查询过程中,通过同步进行哈希校验,能够保证数据完整性。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例所述基于区块链的即时聊天数据的查询方法的流程示意图。
图2为本发明另一实施例所述基于区块链的即时聊天数据的查询方法的时序图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。
在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
现有的即时聊天数据通常是基于中心化存储实现的存储和访问,但是,随着技术发展,中心化存储逐渐暴露了一系列的问题:比如存储传输效率低、安全问题严重易被攻击、系统易崩溃、存储成本高昂、无法永久存储等等。
本申请采用区块链对即时聊天数据进行分布式存储,利用区块链技术的特征,结合即时通讯技术可以解决现有技术存在的数据篡改、数据隐私泄露、数据不可信等问题。分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
具体的,本发明提供一种基于区块链的即时聊天数据的查询方法,所述方法用于在区块链网络上执行,区块链网络由多个微节点组成,区块链连接一个或多个预设用户终端。微节点可以由指定运营方提供的多个服务器节点,也可以是多个运营方共同维护的多个服务器节点。在另一些实施例中,区块链网络也可以直接采用第三方平台提供的现有网络。预设用户终端可以是手机、平板或PC端设备等。
如图1所示,该方法包括以下步骤S101~S105:
步骤S101:获取会话查询发起方用户通过预设用户终端发送的链上消息查询请求,链上消息查询请求包括待请求会话双方的身份标识信息,以及指定条数或分页信息。
步骤S102:区块链网络根据待请求会话双方的身份标示信、指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
步骤S103:区块链网络根据待请求会话双方的身份标识信息获取会话查询发起方的用户公钥。
步骤S104:区块链网络根据待请求会话双方的身份标识信息以及各目标消息的ID查找链上存储的目标消息,并采用用户公钥对各目标消息进行加密。
步骤S105:将加密后的各目标消息返回至预设用户终端,以通过会话查询发起方的私钥进行解密,并呈现给会话查询发起方用户。
在步骤S101中,会话查询发起方用户向区块链网络发送链上消息查询请求,链上消息查询请求一方面记录所查询会话消息双方的主体身份,另一方面指明所要查询的会话消息在记录中的条数或分页。这里指定条数和分页信息也可以直接采用消息发送时间进行标记。
在一些实施例中,步骤S101之前,获取会话查询发起方用户通过预设用户终端发送的链上消息查询请求之前,还包括:将会话双方的会话消息以发送时间为键,会话消息的ID为值,构建平衡树进行存储,并保存在区块链上。平衡树即二叉搜索树,基于平衡树的搜索能够有效降低检索时间,提高检索效率。
在步骤S102中,区块链在链上查找目标消息的ID,目标消息的ID标记了目标消息的存储位置,具体的,聊天记录中每一条对话消息在存储过程中对应一个ID,在查询过程中则一一提取。
在一些实施例中,区块链网络根据待请求会话双方的身份标示信、指定条数及分页信息查询指定条数或分页双方会话目标消息的ID,包括:获取会话查询发起方用户通过预设用户终端发送的目标时间点;以目标时间点为键查询平衡树,并按照需求获取目标时间点前后指定条数或分页的双方会话目标消息的ID。
在步骤S103中,由区块链网络查找会话查询发起方的用户公钥,用于后续过程中对目标消息的加密过程。用户的公私密钥采用非对称加密技术产生,其中,用户公钥在区块链网络上进行广播,用户私钥保存在本地。在对即时聊天数据进行查询的过程中,由区块链网络对即时聊天数据采用用户公钥进行加密,加密后的数据在用户端通过用户私钥进行解密。在步骤S104至S105中,区块链网络将查询到的即时聊天数据加密后发送至预设用户终端,并通过对应的用户私钥解密和展示。
在一些实施例中,所述方法还包括:设置中继链对各预设用户终端以及区块链网络中各微节点的身份信息进行预注册,采用PKI/CA技术体系对各预设用户终端以及区块链网络中各微节点进行注册授权管理,为各预设用户终端以及区块链网络中各微节点发放基于公私密钥对相应的数字签名。
在此基础上,获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之后,还包括:向预设用户终端发送身份验证请求,接收预设用户终端返回的数字签名并发送至中继链进行验证,在验证通过的情况下,区块链网络根据待请求会话双方的身份标示信、指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
本实施例中,基于数字签名对预设用户终端的安全性进行认证,以保证数据交易的安全性。
在一些实施例中,步骤S101之后,即获取会话查询发起方用户通过预设用户终端发送的链上消息查询请求之后,还包括步骤S201~S202:
步骤S201:按照预设的验证规则对预设用户终端发送隐私身份验证请求,以对会话查询发起方用户进行隐私验证。
步骤S202:接收会话查询发起方用户通过预设用户终端返回的隐私验证信息并验证,在验证通过的情况下,由区块链网络根据待请求会话双方的身份标示信、指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
在前述实施例中,虽然对预设用户客户端主体的安全性进行了验证,但是无法对用户主体进行识别和安全认证,本实施例中,基于预设值的验证规则,对操作的用户进行身份和安全认证,以确保会话查询发起方用户的身份安全性。具体的,可以通过设置密保问题,密码验证等形式,对会话查询发起方用户主体进行认证。
在一些实施例中,接收会话查询发起方用户通过预设用户终端返回的隐私验证信息并验证之后,还包括:在验证失败的情况下,向预设用户发送告警信息。
在本实施例中,如果隐私身份验证失败,则表示存在不合法用户查询即时聊天数据的情况,按照预先设定的程序,则需要向实际有权访问的用户发送告警信息。这里的预设用户可以是会话双方之一,也可以是预设的第三方用户。这里告警信息可以通过当前的即时聊天程序进行发送,也可以通过短信、邮件的形式向预设值的对象进行发送。
在一些实施例中,区块链网络根据待请求会话双方的身份标识信息以及各目标消息的ID查找链上存储的目标消息之后,还包括步骤S301~S304:
步骤S301:采用预设哈希算法对各目标消息进行运算,并得到第一哈希值。
步骤S302:采用用户公钥对各目标消息以及第一哈希值进行加密,将加密后的各目标消息以及第一哈希值返回至预设用户终端,以通过会话查询发起方的私钥进行解密。
步骤S303:由预设用户终端采用预设哈希算法对解密得到的各目标消息进行运算,并得到第二哈希值。
步骤S304:由预设用户终端将第一哈希值与第二哈希值进行比对,在一致的情况下,接收预设用户终端发送的查询成功反馈信息。
在一些实施例中,由预设用户终端将第一哈希值与第二哈希值进行比对之后,还包括步骤S305:在不一致的情况下,接收预设用户终端发送的查询失败反馈信息。
在上述步骤S301~S305中,通过计算数据的哈希值对数据完整性进行判断,如果区块链网络提供的哈希值与本地计算得到的哈希值一致则表示数据完整,否则可能存在数据被篡改的情况。进一步的,在即时聊天数据在上载区块链网络进行存储时,也可以同步计算哈希值并存储,用于后续校验数据完整性。
另一方面,本发明还提供一种基于区块链的即时聊天数据的查询装置,包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现上述方法的步骤。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述方法的步骤。
下面结合一具体实施例对本发明进行说明:
本实施例中,由用户通过链信程序用户终端访问区块链网络,并请求即时聊天数据,如图2所示,具体流程包括:
1)用户点击与对方上链消息的触发按键,以发起链上消息查询请求。
2)链信APP获取到会话双方用户的ID。
3)区块链IM服务根据会话双方用户的ID获取到指定条数(分页)的会话消息ID。
4)区块链IM服务根据会话双方用户的ID获取到该会话发起方用户的公钥。
5)区块链微节点根据推送的会话双方用户的ID及会话消息ID获取链上的会话消息。
6)区块链为节点采用用户的公钥加密会话消息并返回给区块链IM服务。
7)区块链IM服务将加密后的会话消息返回给链信APP。
8)链信APP根据用户在手机终端内存中存储的私钥对返回的消息体进行解密,得到原有的消息内容。
9)链信APP将解密后的消息内容呈现给用户。
综上所述,本发明所述基于区块链的即时聊天数据的查询方法及装置,基于区块链对即时聊天数据进行存储和查询,利用区块链去中心化、开放性、自治性、信息不可篡改和匿名性这五个基本特征,能够实现对即时聊天数据的安全存储和访问,防止隐私泄露和篡改,杜绝数据不可信的问题,极大提升数据安全性。
进一步的,通过以发送时间为键、会话消息的ID为值构建平衡树,以使得在数据查找过程中能够极大的节约时间,提高查找效率。
进一步的,在采用PKI/CA技术体系对各预设用户终端以及所述区块链网络中各微节点进行注册授权管理,并在查询即时聊天数据的过程中进行身份验证,能够提升安全性。
进一步的,还通过预设的验证规则对预设用户终端发送隐私身份验证,以核查用户个人身份。
进一步的,在数据查询过程中,通过同步进行哈希校验,能够保证数据完整性。
与上述方法相应地,本发明还提供了一种装置/系统,该装置/系统包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置/系统实现如前所述方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述边缘计算服务器部署方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、软盘、硬盘、可移动存储盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于区块链的即时聊天数据的查询方法,其特征在于,所述方法用于在区块链网络上执行,所述区块链网络由多个微节点组成,所述区块链连接一个或多个预设用户终端,该方法包括以下步骤:
获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求,所述链上消息查询请求包括待请求会话双方的身份标识信息,以及指定条数或分页信息;
所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID;
所述区块链网络根据所述待请求会话双方的身份标识信息获取会话查询发起方的用户公钥;
所述区块链网络根据所述待请求会话双方的身份标识信息以及各目标消息的ID查找链上存储的目标消息,并采用所述用户公钥对各目标消息进行加密;
将加密后的各目标消息返回至所述预设用户终端,以通过所述会话查询发起方的私钥进行解密,并呈现给所述会话查询发起方用户。
2.根据权利要求1所述的基于区块链的即时聊天数据的查询方法,其特征在于,获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之前,还包括:
将会话双方的会话消息以发送时间为键,会话消息的ID为值,构建平衡树进行存储,并保存在区块链上。
3.根据权利要求2所述的基于区块链的即时聊天数据的查询方法,其特征在于,所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID,包括:
获取所述会话查询发起方用户通过所述预设用户终端发送的目标时间点;
以所述目标时间点为键查询平衡树,并按照需求获取所述目标时间点前后指定条数或分页的双方会话目标消息的ID。
4.根据权利要求1所述的基于区块链的即时聊天数据的查询方法,其特征在于,所述方法还包括:设置中继链对各预设用户终端以及所述区块链网络中各微节点的身份信息进行预注册,采用PKI/CA技术体系对各预设用户终端以及所述区块链网络中各微节点进行注册授权管理,为各预设用户终端以及所述区块链网络中各微节点发放基于公私密钥对相应的数字签名;
获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之后,还包括:向所述预设用户终端发送身份验证请求,接收所述预设用户终端返回的数字签名并发送至所述中继链进行验证,在验证通过的情况下,所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
5.根据权利要求1所述的基于区块链的即时聊天数据的查询方法,其特征在于,获取会话查询发起方用户通过所述预设用户终端发送的链上消息查询请求之后,还包括:
按照预设的验证规则对所述预设用户终端发送隐私身份验证请求,以对所述会话查询发起方用户进行隐私验证;
接收所述会话查询发起方用户通过所述预设用户终端返回的隐私验证信息并验证,在验证通过的情况下,由所述区块链网络根据所述待请求会话双方的身份标示信、所述指定条数及分页信息查询指定条数或分页双方会话目标消息的ID。
6.根据权利要求1所述的基于区块链的即时聊天数据的查询方法,其特征在于,接收所述会话查询发起方用户通过所述预设用户终端返回的隐私验证信息并验证之后,还包括:
在验证失败的情况下,向预设用户发送告警信息。
7.根据权利要求1所述的基于区块链的即时聊天数据的查询方法,其特征在于,所述区块链网络根据所述待请求会话双方的身份标识信息以及各目标消息的ID查找链上存储的目标消息之后,还包括:
采用预设哈希算法对各目标消息进行运算,并得到第一哈希值;
采用所述用户公钥对各目标消息以及所述第一哈希值进行加密,将加密后的各目标消息以及所述第一哈希值返回至所述预设用户终端,以通过所述会话查询发起方的私钥进行解密;
由所述预设用户终端采用所述预设哈希算法对解密得到的各目标消息进行运算,并得到第二哈希值;
由所述预设用户终端将所述第一哈希值与所述第二哈希值进行比对,在一致的情况下,接收所述预设用户终端发送的查询成功反馈信息。
8.根据权利要求7所述的基于区块链的即时聊天数据的查询方法,其特征在于,由所述预设用户终端将所述第一哈希值与所述第二哈希值进行比对之后,还包括:
在不一致的情况下,接收所述预设用户终端发送的查询失败反馈信息。
9.一种基于区块链的即时聊天数据的查询装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如权利要求1至8中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310153090.7A CN116137568A (zh) | 2023-02-10 | 2023-02-10 | 一种基于区块链的即时聊天数据的查询方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310153090.7A CN116137568A (zh) | 2023-02-10 | 2023-02-10 | 一种基于区块链的即时聊天数据的查询方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116137568A true CN116137568A (zh) | 2023-05-19 |
Family
ID=86334551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310153090.7A Pending CN116137568A (zh) | 2023-02-10 | 2023-02-10 | 一种基于区块链的即时聊天数据的查询方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116137568A (zh) |
-
2023
- 2023-02-10 CN CN202310153090.7A patent/CN116137568A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768988B (zh) | 区块链访问控制方法、设备及计算机可读存储介质 | |
CN109471844B (zh) | 文件共享方法、装置、计算机设备和存储介质 | |
US9491174B2 (en) | System and method for authenticating a user | |
CN109618326A (zh) | 用户动态标识符生成方法及服务注册方法、登录验证方法 | |
CN106899410A (zh) | 一种设备身份认证的方法及装置 | |
CN113626802B (zh) | 一种设备密码的登录验证系统及方法 | |
CN110855695A (zh) | 一种改进的sdn网络安全认证方法及系统 | |
CN115001841A (zh) | 一种身份认证方法、装置及存储介质 | |
CN111148094A (zh) | 5g用户终端的注册方法、用户终端设备及介质 | |
CN115473655A (zh) | 接入网络的终端认证方法、装置及存储介质 | |
EP4270860A1 (en) | Identity authentication method, authentication access controller, request device, storage medium, program, and program product | |
CN118074919A (zh) | 一种基于可信硬件远程认证建立加密通信的方法、系统和介质 | |
CN110572392A (zh) | 一种基于Hyperledger网络的身份认证方法 | |
CN111148213B (zh) | 5g用户终端的注册方法、用户终端设备及介质 | |
CN111132149B (zh) | 5g用户终端的注册方法、用户终端设备及介质 | |
CN110807210B (zh) | 一种信息处理方法、平台、系统及计算机存储介质 | |
KR102118556B1 (ko) | 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법 | |
CN113824713B (zh) | 一种密钥生成方法、系统及存储介质 | |
CN117795515A (zh) | 计算设备的数据恢复 | |
Abbas et al. | Privacy preserving cloud-based computing platform (PPCCP) for using location based services | |
KR102357595B1 (ko) | 가로채기 해킹 공격 방지를 위한 블록체인 기반 인증 시스템 및 방법 | |
CN116137568A (zh) | 一种基于区块链的即时聊天数据的查询方法及装置 | |
CN114553566A (zh) | 数据加密方法、装置、设备及存储介质 | |
CN110830498A (zh) | 一种基于挖掘的持续攻击检测方法及系统 | |
CN117499160B (zh) | 一种基于电子档案的网络安全防护方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |