CN117744128B - 基于区块链的电商交易数据安全管理方法 - Google Patents
基于区块链的电商交易数据安全管理方法 Download PDFInfo
- Publication number
- CN117744128B CN117744128B CN202410193188.XA CN202410193188A CN117744128B CN 117744128 B CN117744128 B CN 117744128B CN 202410193188 A CN202410193188 A CN 202410193188A CN 117744128 B CN117744128 B CN 117744128B
- Authority
- CN
- China
- Prior art keywords
- binary
- weight
- submatrices
- matrix
- submatrix
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 9
- 239000011159 matrix material Substances 0.000 claims abstract description 174
- 238000000034 method Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 12
- 238000012795 verification Methods 0.000 abstract description 9
- 230000008859 change Effects 0.000 description 22
- 230000000694 effects Effects 0.000 description 11
- 230000000295 complement effect Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000000153 supplemental effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Classifications
-
- 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
- Storage Device Security (AREA)
Abstract
本发明涉及数据加密技术领域,更具体地,本发明涉及基于区块链的电商交易数据安全管理方法,方法包括:将电商交易数据转换为多个二值子矩阵,获取二值子矩阵中每个位置的嵌入权重;根据嵌入权重以及元素值确定偏向元素值,从而获取所有二值子矩阵中同一个位置的整体偏向程度,根据整体偏向程度以及嵌入权重获取权重矩阵中每个位置的权重优选度,为权重矩阵中每个位置分配权重值,根据权重矩阵向各个二值子矩阵嵌入秘密消息,根据嵌入秘密消息之后的二值子矩阵获取密文,对密文进行验证存储。本发明实现了电商交易数据加密的同时实现了电商交易数据的防篡改验证,对电商交易数据安全管理的效率更高。
Description
技术领域
本发明一般地涉及数据加密技术领域。更具体地,本发明涉及基于区块链的电商交易数据安全管理方法。
背景技术
电商交易数据包含了商户、用户、交易账户、交易金额等信息,涉及到商户以及用户隐私。电商交易数据一旦被写入区块链,几乎不可能被篡改,这有助于防范数据泄露、欺诈和其他安全威胁,提高电商平台和用户数据的保护水平。
但在电商交易数据传输至区块链的过程中,可能会被攻击者截获,为了确保电商交易数据的安全性以及完整性,在电商交易数据写入区块链之前,需要对电商交易数据进行加密以及防篡改验证。
现有的加密步骤与防篡改验证步骤独立,对电商交易数据加密以及防篡改验证至少需要两个步骤,无法在电商交易数据的加密的同时实现防篡改验证。
发明内容
为解决上述一个或多个技术问题,本发明提出基于区块链的电商交易数据安全管理方法,该方法包括以下步骤:
将电商交易数据编码为二进制数据,将二进制数据填充到空矩阵中,得到二值矩阵;
将二值矩阵分割成多个二值子矩阵;对于每个二值子矩阵,根据二值子矩阵中每个位置的元素值在电商交易数据编码成的二进制数据中对应的比特位,获取二值子矩阵中每个位置的嵌入权重;
根据所有二值子矩阵中所有位置的嵌入权重以及元素值确定偏向元素值;根据偏向元素值获取所有二值子矩阵的整体偏向程度;根据所有二值子矩阵的整体偏向程度、所有二值子矩阵中同一个位置的偏向元素值的比例以及偏向元素值在所有二值子矩阵中的整体比例,获取所有二值子矩阵中同一个位置的整体偏向程度;
设置空的权重矩阵,根据所有二值子矩阵中同一个位置的整体偏向程度以及该位置在每个二值子矩阵中的嵌入权重获取权重矩阵中对应位置的权重优选度;根据所述权重优选度为权重矩阵中每个位置分配权重值,更新权重矩阵;
利用分块隐藏算法,根据权重矩阵向各个二值子矩阵嵌入秘密消息,得到密文,在嵌入过程中,从多个嵌入方式中选择合适的嵌入方式进行秘密消息的嵌入;
基于区块链对密文进行验证存储。
优选的,所述获取二值子矩阵中每个位置的嵌入权重,包括:
获取二值子矩阵中每个位置的元素值在电商交易数据中编码成的二进制数据中对应的比特位的序号,所述序号是从二进制数据的最低比特位向最高比特位计数的,将得到的序号作为每个位置的比特序号;
将二值子矩阵中每个位置的比特序号与所有位置的比特序号之和的比值,作为每个位置的嵌入权重。
优选的,所述根据所有二值子矩阵中所有位置的嵌入权重以及元素值确定偏向元素值,包括:
根据每个二值子矩阵中所有位置的嵌入权重以及元素值获取每个二值子矩阵的偏向性;
获取偏向性大于0的二值子矩阵在所有二值子矩阵中的数量占比,若数量占比大于或等于,将元素值1作为偏向元素值;若数量占比小于/>,将元素值0作为偏向元素值。
优选的,所述偏向性满足关系式:
其中,表示第i个二值子矩阵的偏向性;i表示二值子矩阵的序号;j表示二值子矩阵中位置的序号;/>表示第i个二值子矩阵中第j个位置的嵌入权重;/>表示第i个二值子矩阵中第j个位置的元素值;f( )表示关于二值子矩阵中每个位置的元素值的函数,当元素值为1时,返回函数值1,当元素值为0时,返回函数值-1;m表示二值子矩阵的行数;n表示二值子矩阵的列数。
优选的,所述根据偏向元素值获取所有二值子矩阵的整体偏向程度,包括:
对于每个二值子矩阵,获取二值子矩阵中所有元素值为1的位置的嵌入权重之和,作为第一权重,以及二值子矩阵中所有元素值为0的位置的嵌入权重之和,作为第二权重;
当偏向元素值为1时,对于每个偏向性大于0的二值子矩阵,将二值子矩阵的第一权重与第二权重的比值减一,作为二值子矩阵的偏向程度,将所有偏向性大于0的二值子矩阵的偏向程度的均值作为所有二值子矩阵的整体偏向程度;
当偏向元素值为0时,对于每个偏向性小于0的二值子矩阵,将二值子矩阵的第二权重与第一权重的比值减一,作为二值子矩阵的偏向程度,将所有偏向性小于0的二值子矩阵的偏向程度的均值作为所有二值子矩阵的整体偏向程度。
优选的,所述所有二值子矩阵中同一个位置的整体偏向程度满足关系式:
式中,表示所有二值子矩阵中第j个位置的整体偏向程度;j表示二值子矩阵中位置的序号;/>表示所有二值子矩阵的整体偏向程度;/>表示所有二值子矩阵中第j个位置的偏向元素值的比例;P表示偏向元素值在所有二值子矩阵中的整体比例。
优选的,所述权重优选度满足关系式:
其中,表示权重矩阵中第j个位置的权重优选度;/>表示第i个二值子矩阵中第j个位置的嵌入权重;j表示二值子矩阵中位置的序号;B表示二值子矩阵的数量;m表示二值子矩阵的行数,n表示二值子矩阵的列数;/>表示所有二值子矩阵中第j个位置的整体偏向程度。
优选的,根据所述权重优选度为权重矩阵中每个位置分配权重值,更新权重矩阵,包括:
权重值的取值范围为[1,-1],在[1,/>-1]范围内的每个整数值作为权重矩阵中的权重值至少应该出现/>次,在[1,/>-1]范围内的前/>个整数作为权重矩阵中的权重值应该出现的次数为/>+1,其中/>为向下取整符号,m表示二值子矩阵的行数,n表示二值子矩阵的列数;
将所有权重值按照从小到大的顺序构建权重序列,权重序列中每种权重值的出现次数与每种权重值在权重矩阵中应该出现的次数相同;
按照权重矩阵中每个位置的权重优选度从大到小的顺序,将权重序列中的每个元素依次分配给权重矩阵中每个位置,实现权重矩阵的更新。
优选的,所述从多个嵌入方式中选择合适的嵌入方式进行秘密消息的嵌入,包括:
获取每种嵌入方式的优选度:
其中,表示第k种嵌入方式的优选度,k表示嵌入方式的序号;/>表示第k种嵌入方式第s个需要改变的位置的嵌入权重,s表示嵌入方式中需要改变的位置的序号;/>表示第k种嵌入方式中需要改变的位置的数量;
将优选度最大的嵌入方式作为合适的嵌入方式。
优选的,所述所有二值子矩阵中同一个位置的偏向元素值的比例的获取方法为:
对于所有二值子矩阵中同一个位置,获取该位置的元素值为偏向元素值的二值子矩阵的数量,将该数量与所有二值子矩阵的数量的比值,作为所有二值子矩阵中该位置的偏向元素值的比例。
本发明具有以下有益效果:
本发明通过向电商交易数据转换成的二值矩阵的每个二值子矩阵嵌入秘密消息,既实现了电商交易数据的加密,又同时实现了电商交易数据的防篡改验证,本发明相较于现有的算法提高了电商交易数据的安全管理效率。
进一步地,本发明根据二值子矩阵中每个元素在电商交易数据的数字或文字对应的二进制数据中的比特位的位置,为每个二值子矩阵中每个位置赋予嵌入权重,根据嵌入权重来获取权重矩阵,使得后续在向二值子矩阵嵌入秘密消息的时候,尽可能改变嵌入权重大的位置,使得得到的密文与原始的电商交易数据差异尽可能大,攻击者无法利用密文中的规律来猜测电商交易数据,保密性更好。
进一步地,本发明在向二值子矩阵嵌入秘密消息时,选择多种嵌入方式中的最优的嵌入方式进行秘密消息的嵌入,可以使得尽可能多的位置发生改变,嵌入权重尽可能大的位置发生改变,从而使得最终得到的密文与原始的电商交易数据之间的差异进一步扩大,保密性进一步加强。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是本发明实施例基于区块链的电商交易数据安全管理方法的步骤流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图来详细描述本发明的具体实施方式。
请参阅图1,其示出了本发明一个实施例提供的基于区块链的电商交易数据安全管理方法的步骤流程图,该方法包括以下步骤:
S001.将电商交易数据转换为二值矩阵。
需要说明的是,电商交易数据中包含了商品信息、商户信息、用户信息、订单编号、交易账户、交易金额等,涉及到商户以及用户的隐私,为防止隐私泄露,在传向区块链时需要加密。由于电商交易数据中包含了不同数据类型的数据,为了统一加密,需将电商交易数据中的数据统一类型。
在一个实施例中,将电商交易数据中包含的所有数据编码为二进制形式,构成一个二进制序列,例如商品信息、商户信息以及用户信息等为文字形式,则利用GB2312编码、UTF-8编码或UTF-16编码将其编码为二进制形式,对于编码方式具体不做限定,实施人员可根据实际实施情况设置编码方式;订单编号、交易账户、交易金额等为数字形式,则利用十进制数据与二进制数据之间的转换规则将其转换为二进制形式。
将二进制序列的长度记为L,构建一个MN大小的空矩阵,M表示矩阵的行数,M=,N表示矩阵的列数,N=/>,其中/>表示向上取整符号。
将二进制序列中的每个比特位按照S型扫描的方式依次填充到空矩阵中,实施人员也可采用其他的扫描方式,例如Z字型扫描、回型扫描、Hilbert扫描等。对于填充之后的矩阵中仍然空着的位置,随机填入0或1,使得矩阵中每个位置有值,且值为0或1,将此时得到的矩阵作为二值矩阵。
至此,将电商交易数据转换为了二值矩阵。
S002.对二值矩阵进行分割,得到多个二值子矩阵,获取每个二值子矩阵中每个位置的嵌入权重。
需要说明的是,Tseng等人提出了一种针对二值矩阵的分块隐藏算法,该算法通过对二值矩阵进行分块,对每个分块嵌入秘密消息。在嵌入过程中,通过对分块与密钥进行异或操作,将异或操作结果与权重矩阵进行相乘,将相乘的结果除以进行取余,将取余的结果与需要嵌入秘密消息进行比较,当不相同时,通过改变分块中某些位置的元素值,使得取余的结果与需要嵌入秘密消息相同,从而达到嵌入秘密消息的目的,其中z表示向分块中嵌入的秘密消息对应的比特数。对分块中某些位置进行改变,会带来二值矩阵对应电商交易数据的改变,当改变非常大时,能达到加密的效果。因此本发明的目的是利用Tseng分块隐藏算法对电商交易数据进行加密,同时向电商交易数据中嵌入秘密消息,实现防篡改验证。
在一个实施例中,将二值矩阵分割成多个大小为mn的二值子矩阵,其中m表示二值子矩阵的行数,n表示二值子矩阵的列数。实施人员可根据实际实施情况设置m和n的大小,例如m=n=4。需要说明的是,若在对二值矩阵进行分割的过程中,存在部分处于二值矩阵边界的二值子矩阵大小不足m/>n,则对二值矩阵的行和列进行扩充,对于扩充的位置随机填入0或1,使得所有的二值子矩阵的大小均为m/>n。
需要说明的是,二值子矩阵中的每个元素都是电商交易数据中的数据转换成的二进制数中的一个比特位,对二值子矩阵嵌入秘密信息会改变二值子矩阵中部分位置的元素值,即改变电商交易数据中的数据转换成的二进制数中的比特位,从而达到加密的效果。
对于电商交易数据中订单编号、交易账户、交易金额等数字形式的数据来说,改变数字对应的二进制数据的越高位的比特位,则会导致数字产生巨大的改变,加密效果更好,而改变数字对应的二进制数据的越低位的比特位,数字产生变化的越小,加密效果较差,例如十进制数字201对应的二进制为11001001,改变二进制11001001的最高位的结果为01001001,对应的十进制数字变为了73,而改变二进制11001001的最低位的结果为11001000,对应的十进制数字变为了200,可以看出,73与原数字201相比差异非常大,而200接近原数字201。
对于电商交易数据中的商品信息、商户信息以及用户信息等文字形式的数据来说,文字通过GB2312编码、UTF-8编码或UTF-16编码等编码方式编码为二进制形式,在此些编码中,二进制的越高位代表的信息越重要,例如在GB2312编码中第一个字节(即高位的8个比特位)表示区号,用来表示所编码的对象的类型,第二个字节(即低位的8个比特位)用来表示具体的内容,若对越高位的比特位进行改变,则会导致区号发生改变,文字可被加密成其他类型的数据,例如符号、数字等,此时加密效果更好,攻击者无法根据密文中的数据类型推断被加密的内容;若对越低位的比特位进行改变,加密结果不会改变文字类型,加密效果相对较差。
因此本发明根据二值子矩阵中每个元素在电商交易数据的数字或文字对应的二进制数据中的比特位的位置,为每个二值子矩阵中每个位置赋予嵌入权重,使得后续在向二值子矩阵嵌入秘密消息的时候,尽可能改变嵌入权重大的位置,达到更好的加密效果。
在一个实施例中,对于每个二值子矩阵中的每个位置,获取该位置的元素在电商交易数据中对应的数字或文字的二进制数据中对应的比特位的序号,该序号是从二进制数据的最低比特位向最高比特位计数的,将得到的序号作为该位置的比特序号。
对于每个二值子矩阵,将二值子矩阵中每个位置的比特序号与所有位置的比特序号之和的比值,作为每个位置的嵌入权重。对于每个位置来说,当该位置的元素在电商交易数据中对应的数字或文字的二进制数据中对应的比特位越处于高位,其嵌入权重越大,后续嵌入秘密消息时,改变该位置的可能性越大;当该位置的元素在电商交易数据中对应的数字或文字的二进制数据中对应的比特位越处于低位,其嵌入权重越小,后续嵌入秘密消息时,改变该位置的可能性越小。
至此,获取了每个二值子矩阵中每个位置的嵌入权重。
S003.根据所有二值子矩阵中每个位置的嵌入权重构建权重矩阵。
需要说明的是,在Tseng分块隐藏算法中,改变二值子矩阵中哪个位置能够实现向二值子矩阵嵌入秘密消息,与权重矩阵密切相关。为了使得嵌入秘密消息时二值子矩阵中嵌入权重大的位置尽可能多改变,本发明根据所有二值子矩阵中每个位置的元素值以及嵌入权重来构建权重矩阵。
在一个实施例中,构建一个与二值子矩阵大小相同的空矩阵,作为权重矩阵。
对于每个二值子矩阵,根据二值子矩阵中所有位置的嵌入权重以及元素值获取二值子矩阵的偏向性:
其中,表示第i个二值子矩阵的偏向性;i表示二值子矩阵的序号;j表示二值子矩阵中位置的序号;/>表示第i个二值子矩阵中第j个位置的嵌入权重;/>表示第i个二值子矩阵中第j个位置的元素值;f( )表示关于二值子矩阵中每个位置的元素值的函数,当元素值为1时,返回函数值1,当元素值为0时,返回函数值-1;m表示二值子矩阵的行数;n表示二值子矩阵的列数;当/>为正时,第i个二值子矩阵中元素值为1的位置的嵌入权重越大,后续向第i个二值子矩阵中嵌入秘密信息时,元素值为1的位置改变为密文带来的改变越大;当/>为负数时,第i个二值子矩阵中元素值为0的位置嵌入权重越大,后续向第i个二值子矩阵中嵌入秘密信息时,元素值为0的位置改变为密文带来的改变越大。
获取偏向性大于0的二值子矩阵在所有二值子矩阵中的数量占比,若数量占比大于或等于,说明对于整体来说,元素值为1的位置改变为密文带来的改变较大,此时将元素值1作为偏向元素值;若数量占比小于/>,说明对于整体来说,元素值为0的位置改变为密文带来的改变较大,此时将元素值0作为偏向元素值。
对于每个二值子矩阵,获取二值子矩阵中所有元素值为1的位置的嵌入权重之和,作为第一权重,以及二值子矩阵中所有元素值为0的位置的嵌入权重之和,作为第二权重。
当偏向元素值为1时,对于每个偏向性大于0的二值子矩阵,将二值子矩阵的第一权重与第二权重的比值减一,作为二值子矩阵的偏向程度,将所有偏向性大于0的二值子矩阵的偏向程度的均值作为所有二值子矩阵的整体偏向程度。
当偏向元素值为0时,对于每个偏向性小于0的二值子矩阵,将二值子矩阵的第二权重与第一权重的比值减一,作为二值子矩阵的偏向程度。将所有偏向性小于0的二值子矩阵的偏向程度的均值作为所有二值子矩阵的整体偏向程度。
对于所有二值子矩阵中同一个位置,获取该位置的元素值为偏向元素值的二值子矩阵的数量,将该数量与所有二值子矩阵的数量的比值,作为所有二值子矩阵中该位置的偏向元素值的比例。
将所有二值子矩阵中偏向元素值出现的数量与所有二值子矩阵中元素的数量的比值,作为偏向元素值在所有二值子矩阵中的整体比例。
根据所有二值子矩阵的整体偏向程度、所有二值子矩阵中同一个位置的偏向元素值的比例以及偏向元素值在所有二值子矩阵中的整体比例,获取所有二值子矩阵中同一个位置的整体偏向程度:
式中,表示所有二值子矩阵中第j个位置的整体偏向程度;j表示二值子矩阵中位置的序号;/>表示所有二值子矩阵的整体偏向程度;/>表示所有二值子矩阵中第j个位置的偏向元素值的比例;P表示偏向元素值在所有二值子矩阵中的整体比例。
需要说明的是,由于所有二值子矩阵的整体偏向程度反映了所有二值子矩阵所有位置综合起来,偏向元素值对应的位置的嵌入权重相较于另一元素值对应位置的嵌入权重的优异性,而所有二值子矩阵同一位置的偏向元素值的比例可能与所有二值子矩阵所有位置综合起来偏向元素值的比例(即偏向元素值在所有二值子矩阵中的整体比例P)不同,当该位置的偏向元素值的比例大于偏向元素值在所有二值子矩阵中的整体比例P时,应在所有二值子矩阵的整体偏向程度D的基础上增大该位置的整体偏向程度,使得该位置的整体偏向程度更适用该位置本身,反之,当该位置的偏向元素值的比例小于偏向元素值在所有二值子矩阵中的整体比例P时,应在所有二值子矩阵的整体偏向程度D的基础上减小该位置的整体偏向程度。因此在上式中,当所有二值子矩阵中第j个位置的偏向元素值的比例大于P时,将作为指数,利用伽马变换的方式对所有二值子矩阵的整体偏向程度进行修正,使其增大,以得到所有二值子矩阵中第j个位置的整体偏向程度,当偏向元素值的比例越大时,对所有二值子矩阵的整体偏向程度增大的程度越大,进而使得所有二值子矩阵中第j个位置的整体偏向程度越大;当所有二值子矩阵中第j个位置的偏向元素值的比例小于P时,将/>作为指数,利用伽马变换的方式对所有二值子矩阵的整体偏向程度进行修正,使其减小,以得到所有二值子矩阵中第j个位置的整体偏向程度,当偏向元素值的比例越小时,对所有二值子矩阵的整体偏向程度减小的程度越大,进而使得所有二值子矩阵中第j个位置的整体偏向程度越小;当所有二值子矩阵中第j个位置的偏向元素值的比例等于P时,所有二值子矩阵中第j个位置的整体偏向程度等于所有二值子矩阵的整体偏向程度。
需要说明的是,权重矩阵中包含的所有权重值是由权重矩阵的大小决定的,权重矩阵的大小为mn,权重值的取值范围为[1,/>-1],在[1,/>-1]范围内的每个整数值作为权重矩阵中的权重值至少应该出现/>次,在[1,-1]范围内的前/>个整数作为权重矩阵中的权重值应该出现的次数为/>+1,其中/>为向下取整符号。需要说明的是,权重矩阵中包含的权重值的大小以及应该出现的次数为Tseng分块隐藏算法中的公知技术,在此不再详细赘述。
在一个实施例中,将所有权重值按照从小到大的顺序构建权重序列,权重序列中每种权重值的出现次数与每种权重值在权重矩阵中应该出现的次数相同。
需要进一步说明的是,权重矩阵中权重值分布的位置不同,带来的嵌入效果不同,为了使得后续根据权重矩阵向二值子矩阵嵌入秘密消息时,二值子矩阵中嵌入权重大的位置尽可能发生改变,同时二值子矩阵中尽可能多的位置发生改变,本发明根据所有二值子矩阵中同一个位置的整体偏向程度以及该位置在每个二值子矩阵中的嵌入权重获取权重矩阵中对应位置的权重优选度,以便根据权重优选度为权重矩阵中每个位置选择最合适的权重值。
在一个实施例中,根据所有二值子矩阵中同一个位置的整体偏向程度以及该位置在每个二值子矩阵中的嵌入权重以及获取权重矩阵中对应位置的权重优选度:
其中,表示权重矩阵中第j个位置的权重优选度;/>表示第i个二值子矩阵中第j个位置的嵌入权重;j表示二值子矩阵中位置的序号,由于二值子矩阵的大小与权重矩阵的大小相同,二值子矩阵中的位置与权重矩阵中的位置对应,因此j也表示权重矩阵中位置的序号;B表示二值子矩阵的数量;m表示二值子矩阵的行数,n表示二值子矩阵的列数,由于权重矩阵的大小与二值子矩阵的大小相同,因此m也表示权重矩阵的行数,n也表示权重矩阵的列数;/>表示所有二值子矩阵中第j个位置的整体偏向程度。
表示所有二值子矩阵中第j个位置的嵌入权重总和,在所有二值子矩阵中所有位置的嵌入权重总和中的占比。当占比越大,说明后续向各个二值子矩阵嵌入秘密消息时,改变各个二值子矩阵的第j个位置带来的变化越大,反之,当占比越小,说明后续向各个二值子矩阵嵌入秘密消息时,改变各个二值子矩阵的第j个位置带来的变化越小。当所有二值子矩阵中第j个位置的整体偏向程度越大时,说明该位置的偏向元素值越多,且该位置的偏向性越强,后续向各个二值子矩阵嵌入秘密消息时,改变各个二值子矩阵的第j个位置时,对于偏向元素值改变的越多,带来的变化也就越大,反之,当所有二值子矩阵中第j个位置的整体偏向程度越小时,说明该位置的偏向元素值越少,后续向各个二值子矩阵嵌入秘密消息时,改变各个二值子矩阵的第j个位置时,对于偏向元素值改变的越少,带来的变化也就越少。因此将占比/>与该位置的整体偏向程度/>综合起来,得到权重矩阵中对应位置的权重优选度。
需要说明的是,权重优选度用来选择为权重矩阵中对应位置赋予哪个权重值。当权重矩阵中某个位置的权重优选度越大时,向各个二值子矩阵嵌入秘密消息时,改变各个二值子矩阵中的对应位置能够带来密文更大的改变,而权重矩阵中某个位置的权重优选度越小时,向各个二值子矩阵嵌入秘密消息时,改变各个二值子矩阵中对应的位置,为密文带来的改变较小。因此当权重矩阵中某个位置的权重优选度越大时,需要为该位置选择能够让各个二值子矩阵中对应位置改变数量越多的权重值。在Tseng分块隐藏算法中,权重矩阵中权重值较小的位置在二值子矩阵中改变的可能性越大,权重值较大的位置在二值子矩阵中改变的可能性越小,因此对于权重矩阵中权重优选度越大的位置,应为其赋予越小的权重值,对于权重优选度越小的位置,应为其赋予越大的权重值。
在一个实施例中,按照权重矩阵中每个位置的权重优选度从大到小的顺序,将权重序列中的每个元素依次分配给权重矩阵中每个位置,实现权重矩阵的更新,得到最终的权重矩阵。
至此,获取了权重矩阵。
S004.根据权重矩阵将秘密消息嵌入到各二值子矩阵中,实现电商交易数据的加密。
由区块链向商户分配一个密钥以及一条嵌入信息,密钥为与二值子矩阵大小相同的矩阵,且密钥中每个位置的元素值为0或1。嵌入信息为一串二进制数据,需要说明的是,密钥以及嵌入信息为Tseng分块隐藏算法中的公知内容,在此不再详细赘述。
对于每个二值子矩阵来说,其可嵌入的数据量为比特,因此将秘密消息分割为B个长度为/>比特的字串,将每个字串转换为十进制形式,并将转换之后的结果依次作为每个二值子矩阵的秘密消息,其中B表示二值子均值的数量。
利用Tseng分块隐藏算法,根据密钥以及权重矩阵,向各个二值子矩阵嵌入其对应的秘密消息,在该过程中,各个二值子矩阵与密钥进行异或操作,异或操作结果与权重矩阵相乘,相乘的结果除以进行取余,记录各个二值子矩阵对应的取余结果,作为各个二值子矩阵的补充数据。对于每个二值子矩阵,在向二值子矩阵嵌入秘密消息时,获取所有符合条件的嵌入方式,在所有嵌入方式中选择最优的嵌入方式进行秘密消息的嵌入。需要说明的是,二值子矩阵与密钥进行异或操作、异或操作结果与权重矩阵相乘、相乘的结果除以/>进行取余、向二值子矩阵嵌入秘密消息时获取所有符合条件的嵌入方式,均为Tseng分块隐藏算法中的公知内容,在此不再详细赘述。
需要说明的是,在向二值子矩阵嵌入秘密消息时,有很多嵌入方式能够实现秘密消息的嵌入,但不同的嵌入方式中需要改变的位置的数量不同,同时需要改变的位置的嵌入权重不同,采用不同的嵌入方式向二值子矩阵嵌入秘密消息之后得到的密文与电商交易数据的差异不同,为了实现密文与电商交易数据之间差异的最大化,避免攻击者根据密文中的数据规律推测出电商交易数据,本发明根据每种嵌入方式中需要改变的位置的数量以及每个需要改变的位置的嵌入权重来筛选最优的嵌入方式。
在一个实施例中,获取每种嵌入方式的优选度:
其中,表示第k种嵌入方式的优选度,k表示嵌入方式的序号;/>表示第k种嵌入方式第s个需要改变的位置的嵌入权重,s表示嵌入方式中需要改变的位置的序号;/>表示第k种嵌入方式中需要改变的位置的数量;当该嵌入方式中需要改变的位置数量越多,同时所有需要改变的位置的嵌入权重之和越大时,选择该嵌入方式嵌入秘密消息,会使得得到的密文与原始的电商交易数据相差越大,加密效果越好;反之,当该嵌入方式中需要改变的位置数量越少,同时所有需要改变的位置的嵌入权重之和越小时,选择该嵌入方式嵌入秘密消息,会使得得到的密文与原始的电商交易数据相差越小,加密效果越差。
将优选度最大的嵌入方式作为最优的嵌入方式。
将嵌入秘密消息之后的二值子矩阵按照二值子矩阵的顺序构成一个大的二值矩阵,记作二值密文矩阵,记录二值密文矩阵的大小,用XY来表示,其中X表示二值密文矩阵的行数,Y表示二值密文矩阵的列数,将二值密文矩阵中的所有元素展开成一维的序列,作为二值密文序列,采用步骤S001中的编码方式,对二值密文序列进行解码,将解码结果作为密文。
需要说明的是,非对称加密算法的加密效果好,安全性强,但加密和解密速度慢,不适合对数据量大的数据进行加密,由于电商交易数据的数据量较大,因此本发明对于电商交易数据不采用非对称加密算法进行加密。而权重矩阵以及补充数据的数据量非常小,因此本发明利用非对称加密算法对权重矩阵以及补充数据进行加密,以确保其安全性。
在一个实施例中,将权重矩阵中的所有权重值展开成一维的序列,对该序列进行非对称加密,将加密结果作为第一补充密钥。
将所有二值子矩阵的补充数据构成补充数据序列,对补充数据序列进行非对称加密,将加密结果作为第二补充密文。
需要说明的是,本发明对非对称加密的具体算法不做限制,实施人员可根据实际实施情况选择非对称加密算法,例如ECC椭圆加密算法、RSA加密算法。
至此,实现了电商交易数据的加密,得到了密文、第一补充密文以及第二补充密文。
S005.对电商交易数据进行验证存储。
将密文、第一补充密文以及第二补充密文传输至区块链,对密文进行存储前,验证密文是否被篡改:
利用步骤S001中的编码方法,将密文编码为二进制数据,并将得到的二进制数据的每个比特位填充到XY大小的空矩阵中,得到二值密文矩阵,其中X表示二值密文矩阵的行数,Y表示二值密文矩阵的列数。
对第一补充密文进行解密,将解密结果填充到mn大小的空矩阵中,得到权重矩阵。利用Tseng分块隐藏算法,根据密钥以及权重矩阵,提取二值密文矩阵中嵌入的所有秘密消息,将提取出的所有秘密消息转换为长度为/>的二进制数据,并将得到的二进制数据按照顺序拼接在一起,作为二值密文矩阵中实际嵌入的嵌入信息。将二值密文矩阵中提取出的嵌入信息与区块链中保存的嵌入信息进行比对,当二者相同时,密文未被篡改,将密文、第一补充密文以及第二补充密文写入区块链中;当二者不相同时,密文已被篡改,此时发送端发送消息,要求对密文进行重传。
至此,实现了密文的防篡改验证。
S006.对电商交易数据进行解密还原。
当需要读取区块链中存储的电商交易数据时,需要对密文进行解密,具体为:
利用步骤S005中的方法,将密文转换为二值密文矩阵,将二值密文矩阵分割为多个mn大小的二值密文子矩阵。
对第二补充密文进行解密,得到补充数据序列,补充数据序列中每个补充数据对应一个二值密文子矩阵,例如补充数据序列中第v个补充数据对应第v个二值密文子矩阵,利用Tseng分块隐藏算法,根据密钥以及权重矩阵,向各个二值密文子矩阵嵌入其对应的补充数据,在该过程中,对于每个二值密文子矩阵,在向二值密文子矩阵嵌入补充数据时,获取所有符合条件的嵌入方式,利用步骤S004中的方法在所有嵌入方式中选择最优的嵌入方式进行补充数据的嵌入。
需要说明的是,在Tseng分块隐藏算法中,向二值子矩阵嵌入秘密消息时,需要对二值子矩阵与密钥进行异或操作,异或操作结果与权重矩阵相乘,相乘的结果除以进行取余,补充数据为取余结果,向二值子矩阵中嵌入秘密消息,是将取余结果由补充数据变化为了秘密消息,而二值密文子矩阵对应的取余结果为秘密消息,向二值密文子矩阵嵌入补充数据,是将取余结果由秘密消息变化为了补充数据,向二值密文子矩阵嵌入补充数据时,选取最优的嵌入方式时采用的选取规则与向二值子矩阵中嵌入秘密消息时的选取规则相同,因此向二值密文子矩阵嵌入补充数据是向二值子矩阵中嵌入秘密消息的反操作,可实现二值密文子矩阵向二值子矩阵的还原。
将嵌入补充数据之后的二值密文子矩阵按照二值密文子矩阵的顺序构成一个XY大小的二值矩阵,利用步骤S001中的扫描方式将X/>Y大小的二值矩阵中前M行N列的元素提取出来,构成一个一维的二值序列,采用步骤S001中的编码方式,对二值序列中前L个比特位进行解码,得到电商交易数据,其中L为步骤S001中电商交易数据转换成的二进制序列的长度。
至此,实现了电商交易数据的解密。
通过以上步骤,完成了电商交易数据的安全管理。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.基于区块链的电商交易数据安全管理方法,其特征在于,包括:
将电商交易数据编码为二进制数据,将二进制数据填充到空矩阵中,得到二值矩阵;
将二值矩阵分割成多个二值子矩阵;对于每个二值子矩阵,根据二值子矩阵中每个位置的元素值在电商交易数据编码成的二进制数据中对应的比特位,获取二值子矩阵中每个位置的嵌入权重;
根据所有二值子矩阵中所有位置的嵌入权重以及元素值确定偏向元素值;根据偏向元素值获取所有二值子矩阵的整体偏向程度;根据所有二值子矩阵的整体偏向程度、所有二值子矩阵中同一个位置的偏向元素值的比例以及偏向元素值在所有二值子矩阵中的整体比例,获取所有二值子矩阵中同一个位置的整体偏向程度;
设置空的权重矩阵,根据所有二值子矩阵中同一个位置的整体偏向程度以及该位置在每个二值子矩阵中的嵌入权重获取权重矩阵中对应位置的权重优选度;根据所述权重优选度为权重矩阵中每个位置分配权重值,更新权重矩阵;
利用分块隐藏算法,根据权重矩阵向各个二值子矩阵嵌入秘密消息,得到密文,在嵌入过程中,从多个嵌入方式中选择合适的嵌入方式进行秘密消息的嵌入;
基于区块链对密文进行验证存储;
所述根据所有二值子矩阵中所有位置的嵌入权重以及元素值确定偏向元素值,包括:
根据每个二值子矩阵中所有位置的嵌入权重以及元素值获取每个二值子矩阵的偏向性;
获取偏向性大于0的二值子矩阵在所有二值子矩阵中的数量占比,若数量占比大于或等于,将元素值1作为偏向元素值;若数量占比小于/>,将元素值0作为偏向元素值;
所述偏向性满足关系式:
其中,表示第i个二值子矩阵的偏向性;i表示二值子矩阵的序号;j表示二值子矩阵中位置的序号;/>表示第i个二值子矩阵中第j个位置的嵌入权重;/>表示第i个二值子矩阵中第j个位置的元素值;f( )表示关于二值子矩阵中每个位置的元素值的函数,当元素值为1时,返回函数值1,当元素值为0时,返回函数值-1;m表示二值子矩阵的行数;n表示二值子矩阵的列数;
所述根据偏向元素值获取所有二值子矩阵的整体偏向程度,包括:
对于每个二值子矩阵,获取二值子矩阵中所有元素值为1的位置的嵌入权重之和,作为第一权重,以及二值子矩阵中所有元素值为0的位置的嵌入权重之和,作为第二权重;
当偏向元素值为1时,对于每个偏向性大于0的二值子矩阵,将二值子矩阵的第一权重与第二权重的比值减一,作为二值子矩阵的偏向程度,将所有偏向性大于0的二值子矩阵的偏向程度的均值作为所有二值子矩阵的整体偏向程度;
当偏向元素值为0时,对于每个偏向性小于0的二值子矩阵,将二值子矩阵的第二权重与第一权重的比值减一,作为二值子矩阵的偏向程度,将所有偏向性小于0的二值子矩阵的偏向程度的均值作为所有二值子矩阵的整体偏向程度;
所述所有二值子矩阵中同一个位置的整体偏向程度满足关系式:
式中,表示所有二值子矩阵中第j个位置的整体偏向程度;j表示二值子矩阵中位置的序号;/>表示所有二值子矩阵的整体偏向程度;/>表示所有二值子矩阵中第j个位置的偏向元素值的比例;P表示偏向元素值在所有二值子矩阵中的整体比例;
所述权重优选度满足关系式:
其中,表示权重矩阵中第j个位置的权重优选度;/>表示第i个二值子矩阵中第j个位置的嵌入权重;j表示二值子矩阵中位置的序号;B表示二值子矩阵的数量;m表示二值子矩阵的行数,n表示二值子矩阵的列数;/>表示所有二值子矩阵中第j个位置的整体偏向程度;
所述从多个嵌入方式中选择合适的嵌入方式进行秘密消息的嵌入,包括:
获取每种嵌入方式的优选度:
其中,表示第k种嵌入方式的优选度,k表示嵌入方式的序号;/>表示第k种嵌入方式第s个需要改变的位置的嵌入权重,s表示嵌入方式中需要改变的位置的序号;/>表示第k种嵌入方式中需要改变的位置的数量;
将优选度最大的嵌入方式作为合适的嵌入方式;
所述所有二值子矩阵中同一个位置的偏向元素值的比例的获取方法为:
对于所有二值子矩阵中同一个位置,获取该位置的元素值为偏向元素值的二值子矩阵的数量,将该数量与所有二值子矩阵的数量的比值,作为所有二值子矩阵中该位置的偏向元素值的比例;
将所有二值子矩阵中偏向元素值出现的数量与所有二值子矩阵中元素的数量的比值,作为偏向元素值在所有二值子矩阵中的整体比例。
2.根据权利要求1所述的基于区块链的电商交易数据安全管理方法,其特征在于,所述获取二值子矩阵中每个位置的嵌入权重,包括:
获取二值子矩阵中每个位置的元素值在电商交易数据中编码成的二进制数据中对应的比特位的序号,所述序号是从二进制数据的最低比特位向最高比特位计数的,将得到的序号作为每个位置的比特序号;
将二值子矩阵中每个位置的比特序号与所有位置的比特序号之和的比值,作为每个位置的嵌入权重。
3.根据权利要求2所述的基于区块链的电商交易数据安全管理方法,其特征在于,根据所述权重优选度为权重矩阵中每个位置分配权重值,更新权重矩阵,包括:
权重值的取值范围为[1,-1],在[1,/>-1]范围内的每个整数值作为权重矩阵中的权重值至少应该出现/>次,在[1,/>-1]范围内的前/>个整数作为权重矩阵中的权重值应该出现的次数为/>+1,其中/>为向下取整符号,m表示二值子矩阵的行数,n表示二值子矩阵的列数;
将所有权重值按照从小到大的顺序构建权重序列,权重序列中每种权重值的出现次数与每种权重值在权重矩阵中应该出现的次数相同;
按照权重矩阵中每个位置的权重优选度从大到小的顺序,将权重序列中的每个元素依次分配给权重矩阵中每个位置,实现权重矩阵的更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410193188.XA CN117744128B (zh) | 2024-02-21 | 2024-02-21 | 基于区块链的电商交易数据安全管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410193188.XA CN117744128B (zh) | 2024-02-21 | 2024-02-21 | 基于区块链的电商交易数据安全管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117744128A CN117744128A (zh) | 2024-03-22 |
CN117744128B true CN117744128B (zh) | 2024-05-14 |
Family
ID=90261419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410193188.XA Active CN117744128B (zh) | 2024-02-21 | 2024-02-21 | 基于区块链的电商交易数据安全管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117744128B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012235276A (ja) * | 2011-04-28 | 2012-11-29 | Jvc Kenwood Corp | 符号化装置、復号装置、符号化方法、復号方法、送信装置、送信方法 |
CN107423762A (zh) * | 2017-07-26 | 2017-12-01 | 江南大学 | 基于流形正则化的半监督指纹定位算法 |
CN113347212A (zh) * | 2021-08-05 | 2021-09-03 | 北京微芯区块链与边缘计算研究院 | 基于区块链的可信服务调度方法、装置、设备和存储介质 |
CN114546251A (zh) * | 2021-05-27 | 2022-05-27 | 北京灵汐科技有限公司 | 权重矩阵数据存储方法、数据获取方法和装置、电子设备 |
CN115640846A (zh) * | 2022-09-07 | 2023-01-24 | 南京邮电大学 | 一种基于区块链的面向数据不平衡问题的联邦学习方法 |
CN116506105A (zh) * | 2023-06-26 | 2023-07-28 | 山东极光智能科技有限公司 | 基于区块链的数据防窃取、篡改加密方法 |
CN116910181A (zh) * | 2023-07-19 | 2023-10-20 | 西安石油大学 | 一种融合稀疏与低秩的信息检索方法 |
-
2024
- 2024-02-21 CN CN202410193188.XA patent/CN117744128B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012235276A (ja) * | 2011-04-28 | 2012-11-29 | Jvc Kenwood Corp | 符号化装置、復号装置、符号化方法、復号方法、送信装置、送信方法 |
CN107423762A (zh) * | 2017-07-26 | 2017-12-01 | 江南大学 | 基于流形正则化的半监督指纹定位算法 |
CN114546251A (zh) * | 2021-05-27 | 2022-05-27 | 北京灵汐科技有限公司 | 权重矩阵数据存储方法、数据获取方法和装置、电子设备 |
CN113347212A (zh) * | 2021-08-05 | 2021-09-03 | 北京微芯区块链与边缘计算研究院 | 基于区块链的可信服务调度方法、装置、设备和存储介质 |
CN115640846A (zh) * | 2022-09-07 | 2023-01-24 | 南京邮电大学 | 一种基于区块链的面向数据不平衡问题的联邦学习方法 |
CN116506105A (zh) * | 2023-06-26 | 2023-07-28 | 山东极光智能科技有限公司 | 基于区块链的数据防窃取、篡改加密方法 |
CN116910181A (zh) * | 2023-07-19 | 2023-10-20 | 西安石油大学 | 一种融合稀疏与低秩的信息检索方法 |
Non-Patent Citations (1)
Title |
---|
基于最小冗余的非平衡数据特征选择方法研究;黄书豪;《万方数据学位论文库》;20231002;1-84 * |
Also Published As
Publication number | Publication date |
---|---|
CN117744128A (zh) | 2024-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Barker et al. | Recommendation for random number generation using deterministic random bit generators (revised) | |
US8284933B2 (en) | Encrypting variable-length passwords to yield fixed-length encrypted passwords | |
US4736423A (en) | Technique for reducing RSA Crypto variable storage | |
CN101610088B (zh) | 基于具有安全特性的压缩技术来编码数据的系统和方法 | |
AU2008327506B2 (en) | Method and system for encryption of data | |
CN100576227C (zh) | 一种软件加密注册防盗版方法 | |
US20110103579A1 (en) | Format preserving encryption systems for data strings with constraints | |
CN116032474B (zh) | 一种基于大数据计算机网络安全防护系统 | |
CA2452419A1 (en) | Method for an integrated protection system of data distributed processing in computer networks and system for carrying out said method | |
KR20070084197A (ko) | 준군을 이용한 암호화 프리미티브, 에러 코딩, 및 의사난수 향상 방법 | |
CN115659409B (zh) | 一种金融资产交易数据安全存储方法 | |
CN100401309C (zh) | 税控设备软件版本智能升级加密验证方法 | |
Barker et al. | Sp 800-90a. recommendation for random number generation using deterministic random bit generators | |
CN106228502B (zh) | 卫星遥感影像tiff文件的数字水印嵌入和提取方法 | |
CN109274485A (zh) | 一种数据加密方法、数据认证方法及相关设备和系统 | |
CN105488423A (zh) | 一种数据文件的审核校验系统及方法 | |
Dumas et al. | Foundations of coding: compression, encryption, error correction | |
CN115664847A (zh) | 一种互联网教育平台的用户信息安全存储方法 | |
US6125183A (en) | Cryptosystem for optical storage | |
CN112235319B (zh) | 数据加密、解密方法、装置和加解密电路 | |
CN117744128B (zh) | 基于区块链的电商交易数据安全管理方法 | |
KR101584127B1 (ko) | 거부적 암호화 시스템 및 방법 | |
CN117708847A (zh) | 基于数据压缩与加密的3c产品租赁平台数据处理方法 | |
US20020136400A1 (en) | R-conversion encryption method and system | |
Fischlin | Incremental cryptography and memory checkers |
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 |