CN113489698B - 基于区块链的物联网数据保密读取方法与系统 - Google Patents
基于区块链的物联网数据保密读取方法与系统 Download PDFInfo
- Publication number
- CN113489698B CN113489698B CN202110710996.5A CN202110710996A CN113489698B CN 113489698 B CN113489698 B CN 113489698B CN 202110710996 A CN202110710996 A CN 202110710996A CN 113489698 B CN113489698 B CN 113489698B
- Authority
- CN
- China
- Prior art keywords
- data
- internet
- block
- things
- binary
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000013500 data storage Methods 0.000 claims abstract description 66
- 238000012795 verification Methods 0.000 claims abstract description 33
- 230000011218 segmentation Effects 0.000 claims abstract description 15
- 238000007781 pre-processing Methods 0.000 claims description 14
- 238000006243 chemical reaction Methods 0.000 abstract description 12
- 230000009286 beneficial effect Effects 0.000 description 8
- 230000000295 complement effect Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005336 cracking Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
Images
Classifications
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了基于区块链的物联网数据保密读取方法与系统,其包括将物联网数据进行二进制数据转换与加密、加密后的二进制数据分割与验证信息生成、分割后的二进制数据与验证信息共同存储到区块链中、从区块链的区块中读取相应的数据块拼接重组并进行验证、对数据块进行解密等不同数据存储与读取过程,其充分利用区块链自身的数据保密性对物联网数据进行存储和读取,从而有效地防止物联网数据被恶意篡改或者丢失,同时还能够大大提高物联网数据的安全性和完整性。
Description
技术领域
本发明涉及物联网数据管理的技术领域,特别涉及基于区块链的物联网数据保密读取方法与系统。
背景技术
物联网广泛应用于数据的分布式存储与读取,用户通过物联网能够在不同场合和不同时间下随时随地进行数据的读取。物联网在运行过程中不可避免会受到外界的攻击而导致其存储的数据被篡改或者丢失,这严重影响物联网的数据安全性。现有技术通常利用数据加密的方式对物联网的数据进行保密处理,但是这种方式也存在加密数据被破解的风险,其无法提高物联网数据的安全性和完整性。
发明内容
针对现有技术存在的缺陷,本发明提供基于区块链的物联网数据保密读取方法与系统,其从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;再将物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;再获取区块链包含的每个区块的数据存储容量,并根据数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;最后从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密;可见,该基于区块链的物联网数据保密读取方法与系统包括将物联网数据进行二进制数据转换与加密、加密后的二进制数据分割与验证信息生成、分割后的二进制数据与验证信息共同存储到区块链中、从区块链的区块中读取相应的数据块拼接重组并进行验证、对数据块进行解密等不同数据存储与读取过程,其充分利用区块链自身的数据保密性对物联网数据进行存储和读取,从而有效地防止物联网数据被恶意篡改或者丢失,同时还能够大大提高物联网数据的安全性和完整性。
本发明提供基于区块链的物联网数据保密读取方法,其特征在于,其包括如下步骤:
步骤S1,从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;再将所述物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;
步骤S2,获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;
步骤S3,从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密;
进一步,在所述步骤S1中,从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;再将所述物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密具体包括:
步骤S101,从物联网的数据接收端按照数据被物联网接收的时间先后顺序、收集得到相应的物联网数据,并对所述物联网数据进行数据去重处理,从而去除所述物联网中重复的数据部分;
步骤S102,将数据去重处理后的物联网数据转换为二进制形式的物联网数据后,再利用下面公式(1),对二进制形式物联网数据进行加密,
在上述公式(1)中,Q[i]表示加密后的二进制形式物联网数据中的第i个二进制数据码元,S[i]表示加密前的二进制形式物联网数据中的第i个二进制数据码元,S[1]表示加密前的二进制形式物联网数据中的第一个二进制数据码元,表示异或逻辑运算符号;
进一步,在所述步骤S2中,获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块具体包括:
步骤S201,获取区块链包含的每个区块的最大数据存储容量,并根据所述最大数据存储容量,以及下面公式(2),将加密后的二进制形式物联网数据分割为若干数据块,
在上述公式(2)中,k表示对加密后的二进制形式物联网数据分割后、每个区块需要存储的二进制数据码元个数,n表示加密后的二进制形式物联网数据包含的二进制数据码元个数,N表示区块链每个区块的最大数据存储容量、即每个区块能够存储二进制数据码元的最大个数,表示向下取整运算符号,其中由于每个区块都需要存储k个二进制数据码元以作为相应的数据块,若将加密后的二进制形式物联网数据最后一次分割剩余的二进制数据码元个数小于k,则在剩余的二进制数据码元中最后一个数据码元后面补全若干个二进制数0,从而使补全后的二进制数据码元个数为k、并且记录补全需要的二进制数0的个数,最后根据所述二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块;
步骤S202,利用下面公式(3),确定对加密后的二进制形式物联网数据分割后并存储到每个区块的数据块对应的校验值,
在上述公式(3)中,ηa表示对加密后的二进制形式物联网数据分割后并存储到第a个区块的数据块对应的校验值,%表示取余运算函数符号;
最后将分割得到的数据块及其对应校验值同时存储到相应的区块链区块中;
进一步,在所述步骤S3中,从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密具体包括:
步骤S301,从每个区块读取得到相应的数据块及其对应的校验值,并将所有读取得到的数据块按照其对应的区块编号依次进行拼接,并利用下面公式(4),生成用于控制十个指示灯工作的发光控制信号,
在上述公式(4)中,R表示控制十个指示灯工作的发光控制信号,当R>0时,表示发光控制信号用于控制十个指示灯中的R个指示灯只发出红光、其余指示灯不发光,当R=0时,表示发光控制信号用于控制十个指示灯全部只发出绿光,G[i]表示所有读取得到的数据块按照其对应的区块编号依次进行拼接后得到的二进制数据中的第i个二进制数据码元,m表示区块链中用于存储数据块的区块总个数,表示向上取整运算符号,a表示m个区块中的第a个区块,表示异或逻辑运算符号,ηa表示第a个区块的数据块对应的校验值;
步骤S302,若十个指示灯中存在发出红光的指示灯,则判断读取得到的数据块发生数据丢失,并向用户发送关于数据块读取错误的指示消息,以及重新从区块链的区块中读取数据块;
步骤S303,若十个指示灯均发出绿光,则判断读取得到的数据块并未发生数据丢失;并根据上述记录补全需要的二进制数0的个数,从经过补全的数据块中全部剔除补全对应的二进制数0;再对读取得到的所有数据块解密。
本发明还提供基于区块链的物联网数据保密读取系统,其特征在于,其包括物联网数据收集与处理模块、物联网数据加密模块、物联网数据存储模块和物联网数据读取与验证模块;其中,
所述物联网数据收集与处理模块用于从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;
所述物联网数据加密模块用于将所述物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;
所述物联网数据存储模块用于获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;
所述物联网数据读取与验证模块用于从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密;
进一步,所述物联网数据收集与处理模块用于从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理具体包括:
从物联网的数据接收端按照数据被物联网接收的时间先后顺序、收集得到相应的物联网数据,并对所述物联网数据进行数据去重处理,从而去除所述物联网中重复的数据部分;
以及,
所述物联网数据加密模块用于将所述物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密具体包括:
将数据去重处理后的物联网数据转换为二进制形式的物联网数据后,再利用下面公式(1),对二进制形式物联网数据进行加密,
在上述公式(1)中,Q[i]表示加密后的二进制形式物联网数据中的第i个二进制数据码元,S[i]表示加密前的二进制形式物联网数据中的第i个二进制数据码元,S[1]表示加密前的二进制形式物联网数据中的第一个二进制数据码元,表示异或逻辑运算符号;
进一步,所述物联网数据存储模块用于获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中具体包括:
获取区块链包含的每个区块的最大数据存储容量,并根据所述最大数据存储容量,以及下面公式(2),将加密后的二进制形式物联网数据分割为若干数据块,
在上述公式(2)中,k表示对加密后的二进制形式物联网数据分割后、每个区块需要存储的二进制数据码元个数,n表示加密后的二进制形式物联网数据包含的二进制数据码元个数,N表示区块链每个区块的最大数据存储容量、即每个区块能够存储二进制数据码元的最大个数,表示向下取整运算符号,其中由于每个区块都需要存储k个二进制数据码元以作为相应的数据块,若将加密后的二进制形式物联网数据最后一次分割剩余的二进制数据码元个数小于k,则在剩余的二进制数据码元中最后一个数据码元后面补全若干个二进制数0,从而使补全后的二进制数据码元个数为k、并且记录补全需要的二进制数0的个数,最后根据所述二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块;
再利用下面公式(3),确定对加密后的二进制形式物联网数据分割后并存储到每个区块的数据块对应的校验值,
在上述公式(3)中,ηa表示对加密后的二进制形式物联网数据分割后并存储到第a个区块的数据块对应的校验值,%表示取余运算函数符号;
最后将分割得到的数据块及其对应校验值同时存储到相应的区块链区块中;
进一步,所述物联网数据读取与验证模块用于从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密具体包括:
从每个区块读取得到相应的数据块及其对应的校验值,并将所有读取得到的数据块按照其对应的区块编号依次进行拼接,并利用下面公式(4),生成用于控制十个指示灯工作的发光控制信号,
在上述公式(4)中,R表示控制十个指示灯工作的发光控制信号,当R>0时,表示发光控制信号用于控制十个指示灯中的R个指示灯只发出红光、其余指示灯不发光,当R=0时,表示发光控制信号用于控制十个指示灯全部只发出绿光,G[i]表示所有读取得到的数据块按照其对应的区块编号依次进行拼接后得到的二进制数据中的第i个二进制数据码元,m表示区块链中用于存储数据块的区块总个数,表示向上取整运算符号,a表示m个区块中的第a个区块,表示异或逻辑运算符号,ηa表示第a个区块的数据块对应的校验值;
若十个指示灯中存在发出红光的指示灯,则判断读取得到的数据块发生数据丢失,并向用户发送关于数据块读取错误的指示消息,以及重新从区块链的区块中读取数据块;
若十个指示灯均发出绿光,则判断读取得到的数据块并未发生数据丢失;并根据上述记录补全需要的二进制数0的个数,从经过补全的数据块中全部剔除补全对应的二进制数0;再对读取得到的所有数据块解密。
相比于现有技术,该于区块链的物联网数据保密读取方法与系统包括将物联网数据进行二进制数据转换与加密、加密后的二进制数据分割与验证信息生成、分割后的二进制数据与验证信息共同存储到区块链中、从区块链的区块中读取相应的数据块拼接重组并进行验证、对数据块进行解密等不同数据存储与读取过程,其充分利用区块链自身的数据保密性对物联网数据进行存储和读取,从而有效地防止物联网数据被恶意篡改或者丢失,同时还能够大大提高物联网数据的安全性和完整性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的基于区块链的物联网数据保密读取方法的流程示意图。
图2为本发明提供的基于区块链的物联网数据保密读取系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,为本发明实施例提供的基于区块链的物联网数据保密读取方法的流程示意图。该基于区块链的物联网数据保密读取方法包括如下步骤:
步骤S1,从物联网的数据接收端中收集得到物联网数据,并对该物联网数据进行数据预处理;再将该物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;
步骤S2,获取区块链包含的每个区块的数据存储容量,并根据该数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;
步骤S3,从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密。
上述技术方案的有益效果为:该基于区块链的物联网数据保密读取方法包括将物联网数据进行二进制数据转换与加密、加密后的二进制数据分割与验证信息生成、分割后的二进制数据与验证信息共同存储到区块链中、从区块链的区块中读取相应的数据块拼接重组并进行验证、对数据块进行解密等不同数据存储与读取过程,其充分利用区块链自身的数据保密性对物联网数据进行存储和读取,从而有效地防止物联网数据被恶意篡改或者丢失,同时还能够大大提高物联网数据的安全性和完整性。
优选地,在该步骤S1中,从物联网的数据接收端中收集得到物联网数据,并对该物联网数据进行数据预处理;再将该物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密具体包括:
步骤S101,从物联网的数据接收端按照数据被物联网接收的时间先后顺序、收集得到相应的物联网数据,并对该物联网数据进行数据去重处理,从而去除该物联网中重复的数据部分;
步骤S102,将数据去重处理后的物联网数据转换为二进制形式的物联网数据后,再利用下面公式(1),对二进制形式物联网数据进行加密,
在上述公式(1)中,Q[i]表示加密后的二进制形式物联网数据中的第i个二进制数据码元,S[i]表示加密前的二进制形式物联网数据中的第i个二进制数据码元,S[1]表示加密前的二进制形式物联网数据中的第一个二进制数据码元,表示异或逻辑运算符号。
上述技术方案的有益效果为:物联网从外界接收数据的过程中可能会存在重复接收数据的情况,这样会使得物联网收集得到的物联网数据存在重复冗余,而对该物联网数据进行数据去重处理,从而去除该物联网中重复的数据部分以及降低物联网数据的冗余性,并且还能够降低后学对物联网数据进行二进制转换处理的工作量。由于二进制形式的数据具有数据结构简单和数据处理要求难度较低的特点,利用上述公式(1)将物联网数据转换为二进制形式的物联网数据能够将物联网数据中每个数据元素唯一地转换为二进制形式的数据,这样能够提高物联网数据的转换效率和转换准确性。
优选地,在该步骤S2中,获取区块链包含的每个区块的数据存储容量,并根据该数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块具体包括:
步骤S201,获取区块链包含的每个区块的最大数据存储容量,并根据该最大数据存储容量,以及下面公式(2),将加密后的二进制形式物联网数据分割为若干数据块,
在上述公式(2)中,k表示对加密后的二进制形式物联网数据分割后、每个区块需要存储的二进制数据码元个数,n表示加密后的二进制形式物联网数据包含的二进制数据码元个数,N表示区块链每个区块的最大数据存储容量、即每个区块能够存储二进制数据码元的最大个数,表示向下取整运算符号,其中由于每个区块都需要存储k个二进制数据码元以作为相应的数据块,若将加密后的二进制形式物联网数据最后一次分割剩余的二进制数据码元个数小于k,则在剩余的二进制数据码元中最后一个数据码元后面补全若干个二进制数0,从而使补全后的二进制数据码元个数为k、并且记录补全需要的二进制数0的个数,最后根据该二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块;在实际操作中,根据该二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块具体可为,将加密后的二进制形式物联网数据从第一个数据码元开始起以k个数据码元为一组数据块,对进行分割,从而获得若干组包括k个数据码元的数据块,若加密后的二进制形式物联网数据分割到最后剩余的数据码元的数量不足k个时(即剩余数据码元的数量为1至k-1),则将在剩余的数据码元后面增加若干补足数据码元,从而组成最后一组数据块,而剩余的数据码元的数量与增加若干补足数据码元的总数量为k,增加的若干补足数据码元均为二进制数据码元“0”,这样即可完成对加密后的二进制形式物联网数据的分割;
此外,上述公式(2)最终求得的k值是指每个区块需要存储的二进制数据码元个数,即每个区块存储的码元数量是需要通过码元中二进制数值“1”的数量来确定的。比如,加密后的二进制形式物联网数据为1111000,而区块链中每个区块的最大数据存储容量N=10,那么通过上述公式(2)可求出k=4,即需要将上述加密后的二进制形式物联网数据为1111001每四个码元分成一份并存储到对应的一个区块中,此时第一个区块需要存储的码元为“1111”,第二个区块需要存储的码元数量也为四个,但是剩余的码元“001”的数量不够四个,则需要在该码元“001”的后面补足码元“0”而得到码元数量为四个的连续码元,而使补足后的码元为“0010”,再将补足后的码元“0010”存储到第二个区块中;
步骤S202,利用下面公式(3),确定对加密后的二进制形式物联网数据分割后并存储到每个区块的数据块对应的校验值,
在上述公式(3)中,ηa表示对加密后的二进制形式物联网数据分割后并存储到第a个区块的数据块对应的校验值,%表示取余运算函数符号;
最后将分割得到的数据块及其对应校验值同时存储到相应的区块链区块中。
上述技术方案的有益效果为:由于区块链的每个区块是用于存储二进制形式的物联网数据,但是每个区块的存储容量是有限的,其通常无法在单个区块内存储所有物联网数据。为了保证对物联网数据的完整存储,此时需要对二进制形式的物联网数据进行分割而得到若干数据块,在将每个数据块分别存储到相应的区块链区块中才能实现对物联网数据的保密存储,同时为了充分利用每个区块的存储空间,这要求分割得到的每个数据块的数据量等于对应区块的最大数据存储容量。利用上述公式(2),能够根据区块的最大数据存储容量对二进制形式的物联网数据进行精准的分割,以保证分割得到的数据块的数据量与区块链的区块数据存储容量相一致,从而最大限度地提高区块链的存储空间利用效率。利用上述公式(3),能够确定分割后数据块的校验值,这样能够为区块中存储的数据块提供一个固定的校验标准,以便于后续读取数据后对该校验值进行验证而确定读取的数据是否存在丢失的情况。
优选地,在该步骤S3中,从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密具体包括:
步骤S301,从每个区块读取得到相应的数据块及其对应的校验值,并将所有读取得到的数据块按照其对应的区块编号依次进行拼接,并利用下面公式(4),生成用于控制十个指示灯工作的发光控制信号,
在上述公式(4)中,R表示控制十个指示灯工作的发光控制信号,当R>0时,表示发光控制信号用于控制十个指示灯中的R个指示灯只发出红光、其余指示灯不发光,当R=0时,表示发光控制信号用于控制十个指示灯全部只发出绿光,G[i]表示所有读取得到的数据块按照其对应的区块编号依次进行拼接后得到的二进制数据中的第i个二进制数据码元,m表示区块链中用于存储数据块的区块总个数,表示向上取整运算符号,a表示m个区块中的第a个区块,表示异或逻辑运算符号,ηa表示第a个区块的数据块对应的校验值;
步骤S302,若十个指示灯中存在发出红光的指示灯,则判断读取得到的数据块发生数据丢失,并向用户发送关于数据块读取错误的指示消息,以及重新从区块链的区块中读取数据块;
步骤S303,若十个指示灯均发出绿光,则判断读取得到的数据块并未发生数据丢失;并根据上述记录补全需要的二进制数0的个数,从经过补全的数据块中全部剔除补全对应的二进制数0;再对读取得到的所有数据块解密。
上述技术方案的有益效果为:利用上述公式(4),对从区块中读取得到的数据块及其校验值进行共同分析,而产生用于控制指示灯进行不同颜色发光的控制信号,这样能够使用户通过观看指示灯的实际发光状态就可直观地和快速地确定读取的数据是否存在数据丢失的情况,并且还能够准确地将读取并且确定未发生丢失情况的数据继续进行拼接重组和解密,从而保证读取的数据能够无失真地还原到原来的数据形式。
参阅图2,为本发明实施例提供的基于区块链的物联网数据保密读取系统的结构示意图。该基于区块链的物联网数据保密读取系统包括物联网数据收集与处理模块、物联网数据加密模块、物联网数据存储模块和物联网数据读取与验证模块;其中,
该物联网数据收集与处理模块用于从物联网的数据接收端中收集得到物联网数据,并对该物联网数据进行数据预处理;
该物联网数据加密模块用于将该物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;
该物联网数据存储模块用于获取区块链包含的每个区块的数据存储容量,并根据该数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;
该物联网数据读取与验证模块用于从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密。
上述技术方案的有益效果为:该基于区块链的物联网数据保密读取系统包括将物联网数据进行二进制数据转换与加密、加密后的二进制数据分割与验证信息生成、分割后的二进制数据与验证信息共同存储到区块链中、从区块链的区块中读取相应的数据块拼接重组并进行验证、对数据块进行解密等不同数据存储与读取过程,其充分利用区块链自身的数据保密性对物联网数据进行存储和读取,从而有效地防止物联网数据被恶意篡改或者丢失,同时还能够大大提高物联网数据的安全性和完整性。
优选地,该物联网数据收集与处理模块用于从物联网的数据接收端中收集得到物联网数据,并对该物联网数据进行数据预处理具体包括:
从物联网的数据接收端按照数据被物联网接收的时间先后顺序、收集得到相应的物联网数据,并对该物联网数据进行数据去重处理,从而去除该物联网中重复的数据部分;
以及,
该物联网数据加密模块用于将该物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密具体包括:
将数据去重处理后的物联网数据转换为二进制形式的物联网数据后,再利用下面公式(1),对二进制形式物联网数据进行加密,
在上述公式(1)中,Q[i]表示加密后的二进制形式物联网数据中的第i个二进制数据码元,S[i]表示加密前的二进制形式物联网数据中的第i个二进制数据码元,S[1]表示加密前的二进制形式物联网数据中的第一个二进制数据码元,表示异或逻辑运算符号。
上述技术方案的有益效果为:物联网从外界接收数据的过程中可能会存在重复接收数据的情况,这样会使得物联网收集得到的物联网数据存在重复冗余,而对该物联网数据进行数据去重处理,从而去除该物联网中重复的数据部分以及降低物联网数据的冗余性,并且还能够降低后学对物联网数据进行二进制转换处理的工作量。由于二进制形式的数据具有数据结构简单和数据处理要求难度较低的特点,利用上述公式(1)将物联网数据转换为二进制形式的物联网数据能够将物联网数据中每个数据元素唯一地转换为二进制形式的数据,这样能够提高物联网数据的转换效率和转换准确性。
优选地,该物联网数据存储模块用于获取区块链包含的每个区块的数据存储容量,并根据该数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中具体包括:
获取区块链包含的每个区块的最大数据存储容量,并根据该最大数据存储容量,以及下面公式(2),将加密后的二进制形式物联网数据分割为若干数据块,
在上述公式(2)中,k表示对加密后的二进制形式物联网数据分割后、每个区块需要存储的二进制数据码元个数,n表示加密后的二进制形式物联网数据包含的二进制数据码元个数,N表示区块链每个区块的最大数据存储容量、即每个区块能够存储二进制数据码元的最大个数,表示向下取整运算符号,其中由于每个区块都需要存储k个二进制数据码元以作为相应的数据块,若将加密后的二进制形式物联网数据最后一次分割剩余的二进制数据码元个数小于k,则在剩余的二进制数据码元中最后一个数据码元后面补全若干个二进制数0,从而使补全后的二进制数据码元个数为k、并且记录补全需要的二进制数0的个数,最后根据该二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块;在实际操作中,根据该二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块具体可为,将加密后的二进制形式物联网数据从第一个数据码元开始起以k个数据码元为一组数据块,对进行分割,从而获得若干组包括k个数据码元的数据块,若加密后的二进制形式物联网数据分割到最后剩余的数据码元的数量不足k个时(即剩余数据码元的数量为1至k-1),则将在剩余的数据码元后面增加若干补足数据码元,从而组成最后一组数据块,而剩余的数据码元的数量与增加若干补足数据码元的总数量为k,增加的若干补足数据码元均为二进制数据码元“0”,这样即可完成对加密后的二进制形式物联网数据的分割;
再利用下面公式(3),确定对加密后的二进制形式物联网数据分割后并存储到每个区块的数据块对应的校验值,
在上述公式(3)中,ηa表示对加密后的二进制形式物联网数据分割后并存储到第a个区块的数据块对应的校验值,%表示取余运算函数符号;
最后将分割得到的数据块及其对应校验值同时存储到相应的区块链区块中。
上述技术方案的有益效果为:由于区块链的每个区块是用于存储二进制形式的物联网数据,但是每个区块的存储容量是有限的,其通常无法在单个区块内存储所有物联网数据。为了保证对物联网数据的完整存储,此时需要对二进制形式的物联网数据进行分割而得到若干数据块,在将每个数据块分别存储到相应的区块链区块中才能实现对物联网数据的保密存储,同时为了充分利用每个区块的存储空间,这要求分割得到的每个数据块的数据量等于对应区块的最大数据存储容量。利用上述公式(2),能够根据区块的最大数据存储容量对二进制形式的物联网数据进行精准的分割,以保证分割得到的数据块的数据量与区块链的区块数据存储容量相一致,从而最大限度地提高区块链的存储空间利用效率。利用上述公式(3),能够确定分割后数据块的校验值,这样能够为区块中存储的数据块提供一个固定的校验标准,以便于后续读取数据后对该校验值进行验证而确定读取的数据是否存在丢失的情况。
优选地,该物联网数据读取与验证模块用于从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密具体包括:
从每个区块读取得到相应的数据块及其对应的校验值,并将所有读取得到的数据块按照其对应的区块编号依次进行拼接,并利用下面公式(4),生成用于控制十个指示灯工作的发光控制信号,
在上述公式(4)中,R表示控制十个指示灯工作的发光控制信号,当R>0时,表示发光控制信号用于控制十个指示灯中的R个指示灯只发出红光、其余指示灯不发光,当R=0时,表示发光控制信号用于控制十个指示灯全部只发出绿光,G[i]表示所有读取得到的数据块按照其对应的区块编号依次进行拼接后得到的二进制数据中的第i个二进制数据码元,m表示区块链中用于存储数据块的区块总个数,表示向上取整运算符号,a表示m个区块中的第a个区块,表示异或逻辑运算符号,ηa表示第a个区块的数据块对应的校验值;
若十个指示灯中存在发出红光的指示灯,则判断读取得到的数据块发生数据丢失,并向用户发送关于数据块读取错误的指示消息,以及重新从区块链的区块中读取数据块;
若十个指示灯均发出绿光,则判断读取得到的数据块并未发生数据丢失;并根据上述记录补全需要的二进制数0的个数,从经过补全的数据块中全部剔除补全对应的二进制数0;再对读取得到的所有数据块解密。
上述技术方案的有益效果为:利用上述公式(4),对从区块中读取得到的数据块及其校验值进行共同分析,而产生用于控制指示灯进行不同颜色发光的控制信号,这样能够使用户通过观看指示灯的实际发光状态就可直观地和快速地确定读取的数据是否存在数据丢失的情况,并且还能够准确地将读取并且确定未发生丢失情况的数据继续进行拼接重组和解密,从而保证读取的数据能够无失真地还原到原来的数据形式。
从上述实施例的内容可知,该基于区块链的物联网数据保密读取方法与系统包括将物联网数据进行二进制数据转换与加密、加密后的二进制数据分割与验证信息生成、分割后的二进制数据与验证信息共同存储到区块链中、从区块链的区块中读取相应的数据块拼接重组并进行验证、对数据块进行解密等不同数据存储与读取过程,其充分利用区块链自身的数据保密性对物联网数据进行存储和读取,从而有效地防止物联网数据被恶意篡改或者丢失,同时还能够大大提高物联网数据的安全性和完整性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (4)
1.基于区块链的物联网数据保密读取方法,其特征在于,其包括如下步骤:
步骤S1,从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;再将经过数据预处理后的物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;
步骤S2,获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;
步骤S3,从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密;
其中,在所述步骤S1中,从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;再将经过数据预处理后的物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密具体包括:
步骤S101,从物联网的数据接收端按照数据被物联网接收的时间先后顺序、收集得到相应的物联网数据,并对所述物联网数据进行数据去重处理,从而去除所述物联网中重复的数据部分;
步骤S102,将数据去重处理后的物联网数据转换为二进制形式的物联网数据后,再利用下面公式(1),对二进制形式物联网数据进行加密,
在上述公式(1)中,Q[i]表示加密后的二进制形式物联网数据中的第i个二进制数据码元,S[i]表示加密前的二进制形式物联网数据中的第i个二进制数据码元,S[1]表示加密前的二进制形式物联网数据中的第一个二进制数据码元,表示异或逻辑运算符号;
其中,在所述步骤S2中,获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块具体包括:
步骤S201,获取区块链包含的每个区块的最大数据存储容量,并根据所述最大数据存储容量,以及下面公式(2),将加密后的二进制形式物联网数据分割为若干数据块,
在上述公式(2)中,k表示对加密后的二进制形式物联网数据分割后、每个区块需要存储的二进制数据码元个数,n表示加密后的二进制形式物联网数据包含的二进制数据码元个数,N表示区块链每个区块的最大数据存储容量、即每个区块能够存储二进制数据码元的最大个数,表示向下取整运算符号,其中由于每个区块都需要存储k个二进制数据码元以作为相应的数据块,若将加密后的二进制形式物联网数据最后一次分割剩余的二进制数据码元个数小于k,则在剩余的二进制数据码元中最后一个数据码元后面补全若干个二进制数0,从而使补全后的二进制数据码元个数为k、并且记录补全需要的二进制数0的个数,最后根据所述二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块;
步骤S202,利用下面公式(3),确定对加密后的二进制形式物联网数据分割后并存储到每个区块的数据块对应的校验值,
在上述公式(3)中,ηa表示对加密后的二进制形式物联网数据分割后并存储到第a个区块的数据块对应的校验值,%表示取余运算函数符号;最后将分割得到的数据块及其对应校验值同时存储到相应的区块链区块中。
2.如权利要求1所述的基于区块链的物联网数据保密读取方法,其特征在于:
在所述步骤S3中,从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密具体包括:
步骤S301,从每个区块读取得到相应的数据块及其对应的校验值,并将所有读取得到的数据块按照其对应的区块编号依次进行拼接,并利用下面公式(4),生成用于控制十个指示灯工作的发光控制信号,
在上述公式(4)中,R表示控制十个指示灯工作的发光控制信号,当R>0时,表示发光控制信号用于控制十个指示灯中的R个指示灯只发出红光、其余指示灯不发光,当R=0时,表示发光控制信号用于控制十个指示灯全部只发出绿光,G[i]表示所有读取得到的数据块按照其对应的区块编号依次进行拼接后得到的二进制数据中的第i个二进制数据码元,m表示区块链中用于存储数据块的区块总个数,表示向上取整运算符号,a表示m个区块中的第a个区块,表示异或逻辑运算符号,ηa表示第a个区块的数据块对应的校验值;
步骤S302,若十个指示灯中存在发出红光的指示灯,则判断读取得到的数据块发生数据丢失,并向用户发送关于数据块读取错误的指示消息,以及重新从区块链的区块中读取数据块;
步骤S303,若十个指示灯均发出绿光,则判断读取得到的数据块并未发生数据丢失;并根据上述记录补全需要的二进制数0的个数,从经过补全的数据块中全部剔除补全对应的二进制数0;再对读取得到的所有数据块解密。
3.基于区块链的物联网数据保密读取系统,其特征在于,其包括物联网数据收集与处理模块、物联网数据加密模块、物联网数据存储模块和物联网数据读取与验证模块;其中,
所述物联网数据收集与处理模块用于从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理;
所述物联网数据加密模块用于将所述物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密;
所述物联网数据存储模块用于获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中;
所述物联网数据读取与验证模块用于从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密;
其中,所述物联网数据收集与处理模块用于从物联网的数据接收端中收集得到物联网数据,并对所述物联网数据进行数据预处理具体包括:从物联网的数据接收端按照数据被物联网接收的时间先后顺序、收集得到相应的物联网数据,并对所述物联网数据进行数据去重处理,从而去除所述物联网中重复的数据部分;
以及,
所述物联网数据加密模块用于将所述物联网数据转换为二进制形式物联网数据后,对二进制形式物联网数据进行加密具体包括:
将数据去重处理后的物联网数据转换为二进制形式的物联网数据后,再利用下面公式(1),对二进制形式物联网数据进行加密,
在上述公式(1)中,Q[i]表示加密后的二进制形式物联网数据中的第i个二进制数据码元,S[i]表示加密前的二进制形式物联网数据中的第i个二进制数据码元,S[1]表示加密前的二进制形式物联网数据中的第一个二进制数据码元,表示异或逻辑运算符号;
其中,所述物联网数据存储模块用于获取区块链包含的每个区块的数据存储容量,并根据所述数据存储容量,将加密后的二进制形式物联网数据分割为若干数据块,并对每个数据块增加相应的验证信息后存储至区块链相应的区块中具体包括:
获取区块链包含的每个区块的最大数据存储容量,并根据所述最大数据存储容量,以及下面公式(2),将加密后的二进制形式物联网数据分割为若干数据块,
在上述公式(2)中,k表示对加密后的二进制形式物联网数据分割后、每个区块需要存储的二进制数据码元个数,n表示加密后的二进制形式物联网数据包含的二进制数据码元个数,N表示区块链每个区块的最大数据存储容量、即每个区块能够存储二进制数据码元的最大个数,表示向下取整运算符号,其中由于每个区块都需要存储k个二进制数据码元以作为相应的数据块,若将加密后的二进制形式物联网数据最后一次分割剩余的二进制数据码元个数小于k,则在剩余的二进制数据码元中最后一个数据码元后面补全若干个二进制数0,从而使补全后的二进制数据码元个数为k、并且记录补全需要的二进制数0的个数,最后根据所述二进制数据码元个数k,将加密后的二进制形式物联网数据分割为若干数据块;
再利用下面公式(3),确定对加密后的二进制形式物联网数据分割后并存储到每个区块的数据块对应的校验值,
在上述公式(3)中,ηa表示对加密后的二进制形式物联网数据分割后并存储到第a个区块的数据块对应的校验值,%表示取余运算函数符号;最后将分割得到的数据块及其对应校验值同时存储到相应的区块链区块中。
4.如权利要求3所述的基于区块链的物联网数据保密读取系统,其特征在于:
所述物联网数据读取与验证模块用于从每个区块读取得到相应的数据块后,根据每个数据块包含的验证信息,判断数据块是否发生数据丢失;再根据上述判断的结果,生成关于数据块错误的指示消息或者对读取得到数据块进行解密具体包括:
从每个区块读取得到相应的数据块及其对应的校验值,并将所有读取得到的数据块按照其对应的区块编号依次进行拼接,并利用下面公式(4),生成用于控制十个指示灯工作的发光控制信号,
在上述公式(4)中,R表示控制十个指示灯工作的发光控制信号,当R>0时,表示发光控制信号用于控制十个指示灯中的R个指示灯只发出红光、其余指示灯不发光,当R=0时,表示发光控制信号用于控制十个指示灯全部只发出绿光,G[i]表示所有读取得到的数据块按照其对应的区块编号依次进行拼接后得到的二进制数据中的第i个二进制数据码元,m表示区块链中用于存储数据块的区块总个数,表示向上取整运算符号,a表示m个区块中的第a个区块,表示异或逻辑运算符号,ηa表示第a个区块的数据块对应的校验值;
若十个指示灯中存在发出红光的指示灯,则判断读取得到的数据块发生数据丢失,并向用户发送关于数据块读取错误的指示消息,以及重新从区块链的区块中读取数据块;
若十个指示灯均发出绿光,则判断读取得到的数据块并未发生数据丢失;并根据上述记录补全需要的二进制数0的个数,从经过补全的数据块中全部剔除补全对应的二进制数0;再对读取得到的所有数据块解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110710996.5A CN113489698B (zh) | 2021-06-25 | 2021-06-25 | 基于区块链的物联网数据保密读取方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110710996.5A CN113489698B (zh) | 2021-06-25 | 2021-06-25 | 基于区块链的物联网数据保密读取方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113489698A CN113489698A (zh) | 2021-10-08 |
CN113489698B true CN113489698B (zh) | 2022-10-21 |
Family
ID=77937862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110710996.5A Active CN113489698B (zh) | 2021-06-25 | 2021-06-25 | 基于区块链的物联网数据保密读取方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113489698B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2588659A (en) * | 2019-10-31 | 2021-05-05 | Nchain Holdings Ltd | Communication protocol using blockchain transactions |
CN111949672B (zh) * | 2020-07-30 | 2021-11-30 | 杭州电子科技大学 | 一种支持物联网数据增量更新的区块链存储方法 |
CN112733169A (zh) * | 2021-01-13 | 2021-04-30 | 深圳市星际大陆科技有限公司 | 一种基于区块链的数据管理方法、系统及终端设备 |
CN112884554B (zh) * | 2021-03-18 | 2023-11-24 | 南通大学 | 一种基于联盟链的物联网数据拍卖系统的拍卖方法 |
-
2021
- 2021-06-25 CN CN202110710996.5A patent/CN113489698B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113489698A (zh) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1406410A1 (en) | Method for an integrated protection system of data distributed processing in computer networks and system for carrying out said method | |
CN1909452A (zh) | 用于更新用于公共密钥密码的密钥的系统和方法 | |
CN107113180B (zh) | 分组发送装置、分组接收装置以及存储介质 | |
CN111201753A (zh) | 双向链接的区块链结构 | |
CN114285562B (zh) | 一种数据加密方法和装置 | |
CN117640256B (zh) | 一种无线网卡的数据加密方法、推荐装置和存储介质 | |
CN114124502B (zh) | 消息传输方法、装置、设备及介质 | |
CN112383522B (zh) | 函数参数数据传输加密方法、系统、装置及可读存储介质 | |
CN118300672B (zh) | 一种基于北斗卫星的数据传输方法及系统 | |
CN114253484B (zh) | 一种大数据云存储服务器 | |
CN114091041A (zh) | 一种基于嵌入式设备的数据传输方法、装置、设备及介质 | |
CN114239779A (zh) | 一种数据传输方法、传输系统、采集设备及接收设备 | |
CN112235101B (zh) | 基于混合编码机制的编码方法和装置、解码方法和装置 | |
CN113489698B (zh) | 基于区块链的物联网数据保密读取方法与系统 | |
CN110532290B (zh) | 基于区块链的信息验证装置、方法及存储介质 | |
CN111970237A (zh) | 一种基于水深测量数据的加密解密方法、系统及介质 | |
CN115001700B (zh) | 一种基于区块链的生态环境监管方法及系统 | |
CN114244635B (zh) | 通信设备的加密型数据编码方法 | |
CN114143098B (zh) | 数据存储方法和数据存储装置 | |
CN116405189A (zh) | 一种可裁剪防篡改视频存储的方法与系统 | |
EP4084484A1 (en) | Method and device for encryption of video stream, communication equipment, and storage medium | |
CN110517045B (zh) | 区块链数据处理方法、装置、设备和存储介质 | |
CN1252663C (zh) | 算术单元和算术方法 | |
CN116880778B (zh) | 一种基于再生编码及分布式存储的用户隐私保护方法 | |
CN113849385B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |