发明内容
本发明要解决的技术问题是克服现有的缺陷,提供一种面向区块链用户节点的数据存储方法及装置,以解决上述背景技术中提出的目前市面上一般在通过区块链对数据进行存储时,通常需要通过人工手动对数据进行分类后,对需要进行加密的数据进行手动加密,这种加密方式一般较为麻烦,且加密后再次对数据进行提取时非常麻烦,使用时存在一定的局限性的问题。
为实现上述目的,本发明提供如下技术方案:一种面向区块链用户节点的数据存储方法的装置,包括机箱,所述机箱的内部设置有若干个区块链模块,所述机箱的两侧表面上端均开设有凹槽,所述凹槽设置有两个,所述机箱的一侧表面中间部分分别设置有LED显示屏和数据接入口,所述数据接入口设置有若干个,所述机箱的一侧表面下端设置有第一散热网,所述机箱的两侧表面安装有散热板,所述散热板的内部表面设置有散热电机,所述散热电机的一端传动连接有散热风机,所述散热板的内部安装有第二散热网。
一种面向区块链用户节点的数据存储方法:包括:
步骤一:对上传至区块链的目标数据所对应的用户进行证书验证;
步骤二:当证书验证通过时,获取所述目标数据的数据类型,并基于所述数据类型对所述目标数据进行分类,获得公开数据和加密数据;
步骤三:将所述公开数据与所述加密数据根据不同方式存储在所述区块链模块。
优选的,一种面向区块链用户节点的数据存储方法,步骤3中,将所述公开数据与所述加密数据根据不同方式存储在所述区块链模块,包括:
将公开数据上传至区块链模块,并进行存储;
对加密数据通过建立非对称加密算法数据进行加密,并对所述加密数据进行清洗和过滤处理;
将处理后的所述加密数据进行上传至区块链处理,并进行存储;
当需要对加密数据进行访问时,通过访问秘钥和及用户节点对所述加密数据进行访问。
优选的,一种面向区块链用户节点的数据存储方法,步骤一中,对上传至区块链的目标数据所对应的用户进行证书验证,包括:
获取所述用户的实体证书,同时,确定验证机构的公钥;
判断所述验证机构的公钥是否能正确解开所述用户的实体证书中的数字签名;
当所述验证机构的公钥不能正确解开所述用户的实体证书中的数字签名时,则判定所述用户的实体证书不可信;
当所述验证机构的公钥能够正确解开所述用户的实体证书中的数字签名,则判定所述用户的实体证书可信,并基于判断结果输出所述用户的公钥,同时,在所述实体证书中添加所述验证机构的数字签名。
则输出所述用户的公钥,并在所述实体证书中添加所述验证机构的目标数字签名;
在所述实体证书中添加所述验证机构的目标数字签名后,还包括:
获取目标证书链,并基于所述目标证书链确定所述验证机构的根证书,同时,提取所述根证书的公钥;
基于所述根证书的公钥与所述实体证书中的所述目标数字签名进行匹配,并基于匹配结果完成对所述目标数字签名的可信验证;
其中,所述匹配结果为:当所述根证书的公钥与所述目标数字签名匹配时,则判定所述目标数据签名可信;
当所述根证书的公钥与所述实体证书中的所述目标数字签名不匹配时,则判定所述目标数据签名不可信。
优选的,一种面向区块链用户节点的数据存储方法,对用户的证书验证,还包括:
获取所述用户的实体证书,并对所述用户的实体证书的证书序列号以及有效期进行验证,具体过程为:
获取所述实体证书的序列号,同时,确定验证机构中的证书序列号;
判断所述实体证书的序列号与所述验证机构中的证书序列号是否一致,并生成第一判断结果;
其中,所述第一判断结果包括:当所述实体证书的序列号与所述验证机构中的证书序列号一致时,则判定所述实体证书为真;
否则,则判定所述实体证书为假;
获取所述实体证书的有效日期,同时,确定所述验证机构中与所述实体证书相对应的私钥有效期;
判断所述有效日期是否属于所述私钥有效期,并生成第二判断结果;
其中,所述第二判断结果包括:当所述有效日期属于所述私钥有效期,则判定所述实体证书为安全的;
否则,则判定所述实体证书不是安全的;
基于所述第一判断结果与所述第二判断结果完成对所述用户的实体证书的证书序列号以及有效期的验证。
优选的,一种面向区块链用户节点的数据存储方法,将处理后的所述加密数据进行上传至区块链处理,并进行存储,包括:
步骤101:建立区块链数据系统的数据层、网络层、共识层、激励层、合约层和应用层;
步骤102:在区块链数据系统中建立非对称加密算法数据,同时,将非对称加密算法数据压缩成加密数据压缩包;
步骤103:将加密数据压缩包均复制传输至数据层、网络层、共识层、激励层、合约层和应用层中,通过服务器解析每个加密数据压缩包得到加密公钥指令和加密私钥指令;
步骤104:在所述数据层内建立底层数据区块以及相关的数据时间戳数据,通过数据层解析出的加密公钥指令和加密私钥指令分别对所述层数据区块以及相关的数据时间戳数据进行加密运行处理,并将每一组加密公钥指令和加密私钥指令分别运行在网络层、共识层、激励层、合约层和应用层中的加密数据块;
步骤105:循环所述步骤104,逐步将数据层、网络层、共识层、激励层、合约层和应用层生成密文运行,并且上传至服务器。
优选的,一种面向区块链用户节点的数据存储方法,对所述加密数据进行清洗时,参照如下公式:
式中,Pij表示第j个数据库中第i种数据的分类类别;Cij表示第j个数据库中第i种数据的类别;Coi表示第i种数据库的评价标准,Qij表示第j个数据中第i种数据类别的数量。
其中,当数据库域内有m个数据类别含有第i种数据,则该种数据在数据库内的总等标负荷为:
其中,Pi表示第i种数据在数据库内的总等标负荷;j表示当前个数据类别;m表示数据类别总个数;
该地区的总等标负荷为:
其中,P表示该地区的总等标负荷;i表示当前种类数据;n表示数据种类总个数;Pj表示第j种数据再数据库内的总等标负荷;
数据库内第i种数据库的区块链负荷比为:
其中,Ki表示第i种数据库的区块链负荷比;
数据数据库内第j个数据的等标负荷比为:
其中,Kj表示第j个数据的等标负荷比;
判断所述数据库内第i种数据库的区块链负荷比与所述数据库内第j种数据库的区块链负荷比是否大于80%;
若所述数据库内第i种数据库的区块链负荷比与所述数据库内第j种数据库的区块链负荷比均等于大于80%,则判定对所述加密数据清洗成功;
若所述数据库内第i种数据库的区块链负荷比或所述数据库内第j种数据库的区块链负荷比小于80%,则判定所述加密数据没有清洗成功。
优选的,一种面向区块链用户节点的数据存储方法,通过访问秘钥和及用户节点对所述加密数据进行访问,包括:将访问秘钥接接通用户节点,通过用户节点对存储系统进行访问,在区块链中输入秘钥后,访问所述加密数据,并确定所述加密数据的访问频率;
其中,对所述加密数据的访问频率进行计算的公式如下:
式中,xi表示第i次访问数据的数值,n表示每次访问的时间,每次访问时间的误差可以用标准误差表示,i表示当前访问的时间点,表示所述加密数据的访问频率。
优选的,一种面向区块链用户节点的数据存储方法,将公开数据上传至区块链模块,并进行存储,包括:
基于所述区块链模块生成节点读取指令,并将所述节点读取指令发送至所述区块链模块的数据存储终端;
基于所述数据存储终端确定处于空闲状态的空闲数据存储节点,并提取所述空闲数据存储节点的节点属性;
根据所述空闲数据存储节点以及所述空闲数据存储节点的节点属性生成响应报告,并将所述响应报告基于所述数据存储终端向用户终端进行反馈;
确定所述公开数据的数据总量,以及所述公开数据的数据标识;
基于所述响应报告、所述公开数据的数据总量以及所述公开数据的数据标识制定数据传输方案;
基于所述数据传输方案将所述公开数据分别上传至所述区块链模块中的空闲数据存储节点中进行存储;
获取所述数据存储节点中所述公开数据的存储状态,并基于所述区块链模块将所述存储状态向所述用户终端进行共享,并完成对所述公开数据向所述区块链模块的上传与存储。
优选的,一种面向区块链用户节点的数据存储方法,基于所述区块链模块将所述存储状态向所述用户终端进行共享,包括:
获取所述用户终端与所述区块链模块的数据通信位置节点,并确定所述数据通信位置节点的节点标识;
获取所述用户终端与所述区块链模块的通信方式种集,并根据所述数据通信位置节点的节点标识,在所述通信方式种类中匹配最佳通信方式;
根据所述最佳通信方式,建立对所述用户终端与所述区块链模块的目标通信链路;
获取所述用户终端的信息读取请求,同时,确定所述区块链模块的信息传递请求;
基于所述用户终端根据所述目标通信链路向所述区块链模块发送信息读取请求,并根据所述区块链模块对所述信息读取请求进行第一验证,并生成第一验证码;
同时,基于所述区块链模块根据所述目标通信链路向所述用户终端发送信息传递请求,并基于所述用户终端对所述信息传递请求进行第二验证,并生成第二验证码;
将所述第一验证码与所述第二验证码进行匹配,判断所述区块链模块是否可以将所述公开数据的存储状态向所述用户终端进行共享;
当所述第一验证码与所述第二验证码不相匹配时,则判定所述区块链模块不可以将所述公开数据的存储状态向所述用户终端进行共享;
否则,则判定所述区块链模块可以将所述公开数据的存储状态向所述用户终端进行共享,同时,将所述第二验证码作为包标识对所述公开数据的存储状态进行打包,获得目标数据包;
将所述目标数据包基于所述目标通信链路传输至所述用户终端,实现所述公共数据的存储状态在所述用户终端的共享。
与现有技术相比,本发明提供了一种面向区块链用户节点的数据存储方法及装置,具备以下有益效果:
1、本发明通过设置的数据层、网络层、共识层、激励层、合约层和应用层,对加密的数据建立底层数据区块,从而更加方便对数据进行加密和对加密数据进行提取,避免了目前市面上一般在通过区块链对数据进行存储时,通常需要通过人工手动对数据进行分类后,对需要进行加密的数据进行手动加密,这种加密方式一般较为麻烦,且加密后再次对数据进行提取时非常麻烦,使用时存在一定的局限性的问题;
2、本发明通过数据层内解析出的加密公钥指令和加密私钥指令分别对层数据区块以及相关的数据时间戳等技术数据进行加密运行处理,将网络层、共识层、激励层、合约层和应用层建立成一个总的辅助区域块,使用其中一组加密公钥指令和加密私钥指令运行在这个辅助区域块中,同时加密公钥运行于加密会话密钥、验证数字签名和加密可以用相应的私钥解密的数据,从而建立一个整体的区域链数据加密系统可以提高全网的密钥和加密数据的安全性;
3、本发明通过设置的数据分类模块,首先通过数据分类模块对上传的数据进行自动分类,将公开数据直接上传至区块链模块进行公开,大大加快了数据的处理速度,通过设置的数据清洗模块和数据过滤模块,数据通过各个节点上传至区块链后,通过数据清洗模块对数据进行清洗,随后通过数据过滤模块对数据进行过滤,有效地保证了在区块链存储的数据为有效数据,从而更加节省区块链的存储空间。
4.通过确定区块链模块中的空闲数据存储节点并制定数据传输方案,从而有利于将用户终端的公开数据实现精准的存储,有利于避免区块链模块中进行数据存储时,不会出现数据存储混乱的现象,通过将公开数据的存储状态向用户终端进行共享,有利于用户实时掌握数据存储状态,从而提高了区块链模块中数据存储的便利性;通过对区块链模块的数据存储可靠指数以丢失因子,有效确定公开数据在区块链模块中发生丢失的概率,从而极大的提高了在区块链模块中数据存储的安全性。
5.通过建立目标通信链路以及分别对信息读取请求以及信息传递请求进行安全验证,并通过第一验证码与第二验证码是否匹配来确定是将公开数据的存储状态向用户终端进行共享,从而提高了数据共享的安全性以及精确性,通过将公开数据的存储状态进行打包,并将第二验证码作为包标识,从而有利于用户终端的精确识别,进而提高了区块链用户节点数据存储的安全性以及便利性。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参阅图1-7,本发明提供一种技术方案:一种面向区块链用户节点的数据存储方法的装置,包括机箱1,机箱1的内部设置有若干个区块链模块,机箱1的两侧表面上端均开设有凹槽2,凹槽2设置有两个,机箱1的一侧表面中间部分分别设置有LED显示屏4和数据接入口3,数据接入口3设置有若干个,机箱1的一侧表面下端设置有第一散热网5,机箱1的两侧表面安装有散热板6,散热板6的内部表面设置有散热电机8,散热电机8的一端传动连接有散热风机9,散热板6的内部安装有第二散热网7,通过设置的两个散热网,当存储装置在对数据进行存储时,可以有效的保证存储装置的正常运行,防止装置出现卡顿的现象造成数据的丢失。
一种面向区块链用户节点的数据存储方法,包括以下步骤:
步骤一:对上传至区块链的目标数据所对应的用户进行证书验证;
步骤二:当证书验证通过时,获取所述目标数据的数据类型,并基于所述数据类型对所述目标数据进行分类,获得公开数据和加密数据;
步骤三:将所述公开数据与所述加密数据根据不同方式存储在所述区块链模块。
该实施例中,步骤3中,将所述公开数据与所述加密数据根据不同方式存储在所述区块链模块,包括:将公开数据上传至区块链模块,并进行存储;对加密数据通过建立非对称加密算法数据进行加密,并对所述加密数据进行清洗和过滤处理;将处理后的所述加密数据进行上传至区块链处理,并进行存储;当需要对加密数据进行访问时,通过访问秘钥和及用户节点对所述加密数据进行访问。
该实施例中,加密后对数据进行加密的清洗和过滤,将过滤后的数据进行上传至区块链处理后,进行存储,通过设置的数据分类模块,首先通过数据分类模块对上传的数据进行自动分类,将公开数据直接上传至区块链模块进行公开,大大加快了数据的处理速度,通过设置的数据清洗模块和数据过滤模块,数据通过各个节点上传至区块链后,通过数据清洗模块对数据进行清洗,随后通过数据过滤模块对数据进行过滤,有效地保证了在区块链存储的数据为有效数据,从而更加节省区块链的存储空间;当需要对加密数据进行访问时,通过访问秘钥和各个数据节点对详细数据进行访问。
实施例二
本发明中,优选的,步骤一中,对用户的证书进行验证的方法为:
获取所述用户的实体证书,同时,确定验证机构的公钥;
判断所述验证机构的公钥是否能正确解开所述用户的实体证书中的数字签名;
当所述验证机构的公钥不能正确解开所述用户的实体证书中的数字签名时,则判定所述用户的实体证书不可信;
当所述验证机构的公钥能够正确解开所述用户的实体证书中的数字签名,则判定所述用户的实体证书可信,并基于判断结果输出所述用户的公钥,同时,在所述实体证书中添加所述验证机构的数字签名。
则输出所述用户的公钥,并在所述实体证书中添加所述验证机构的目标数字签名;
在所述实体证书中添加所述验证机构的目标数字签名后,还包括:
获取目标证书链,并基于所述目标证书链确定所述验证机构的根证书,同时,提取所述根证书的公钥;
基于所述根证书的公钥与所述实体证书中的所述目标数字签名进行匹配,并基于匹配结果完成对所述目标数字签名的可信验证;
其中,所述匹配结果为:当所述根证书的公钥与所述目标数字签名匹配时,则判定所述目标数据签名可信;
当所述根证书的公钥与所述实体证书中的所述目标数字签名不匹配时,则判定所述目标数据签名不可信。
该实施例中,验证者CA的公钥是否能正确解开客户实体证书中的发行者的数字签名,即:两个证书在交换传递之后,要进行拆封,看是否能够拆封,一个证书或证书链的拆封操作,是为了从中获得一个公钥,可示为X1p?X1<<X2>>,这为一个中缀操作,其左操作数为一个认证机构的公钥,右操作数则为该认证机构所颁发的一个证书,如果能正确解开,输出结果为用户的公钥,从证书内容列表中可以看出,证书结构的最后内容是认证机构CA的数字签名,即一个可信任的CA已经在证书上用自己的私钥做了签名,如果用该CA的公钥就可以拆封一个用户实体的证书,那么,这个签名被验证是正确的,因为它证明了这个证书是由权威的、可信任的认证机构所签发,因此,这个实体证书是真实可信的。
该实施例中,对证书链的验证方法为:通过证书链追溯到可信赖的CA的根(ROOT),即要验证签发用户实体证书的CA是否是权威可信的CA,证书链验证的要求是,路径中每个证书从最终实体到根证书都是有效的,并且每个证书都要正确地对应发行该证书的权威可信任性CA,操作表达式为Ap?A<<B>>B<<C>>,指出该操作使用A的公钥,从B的证书中获得B的公钥Bp,然后再通过Bp来解封C的证书,操作的最终结果得到了C的公钥Cp,这就是一个证书链的认证拆封过程,通过设置的证书验证,可以有效的对用户上传的数据的设备和数据本身进行验证,从而有效的保证了数据的安全性。
实施例三
在实施例二的基础上,对用户的证书验证,还包括:
获取所述用户的实体证书,并对所述用户的实体证书的证书序列号以及有效期进行验证,具体过程为:
获取所述实体证书的序列号,同时,确定验证机构中的证书序列号;
判断所述实体证书的序列号与所述验证机构中的证书序列号是否一致,并生成第一判断结果;
其中,所述第一判断结果包括:当所述实体证书的序列号与所述验证机构中的证书序列号一致时,则判定所述实体证书为真;
否则,则判定所述实体证书为假;
获取所述实体证书的有效日期,同时,确定所述验证机构中与所述实体证书相对应的私钥有效期;
判断所述有效日期是否属于所述私钥有效期,并生成第二判断结果;
其中,所述第二判断结果包括:当所述有效日期属于所述私钥有效期,则判定所述实体证书为安全的;
否则,则判定所述实体证书不是安全的;
基于所述第一判断结果与所述第二判断结果完成对所述用户的实体证书的证书序列号以及有效期的验证。
该实施例中,对证书序列号和有效期的验证方法为:序列号的验证是指检查实体证书中的签名实体序列号是否与签发者证书的序列号相一致,验证证书的真伪,验证操作过程是:用户实体证书中的Authority Key Identifier扩展项Cert Serial Number,即签发证书的序列号,检查CA证书中的Certificate Serial Number证书序列号,二者应该相一致,否则证书不是可信任的认证机构CA所签发,用户实体证书的有效期Validity Period及私钥的有效期Priva Key Usege Period,应当在CA证书的有效日期Validity Period之内若超过CA证书有效期,实体证书应作废,环境是不安全的;用户实体证书有效期开始时间Validity Period中notBefore日期应在CA证书的私钥有效期Private Key Usagc Period日期之内,否则证书是不安全的。
实施例四
在实施例一的基础上,将处理后的所述加密数据进行上传至区块链处理,并进行存储,包括:
步骤101:建立区块链数据系统的数据层、网络层、共识层、激励层、合约层和应用层;
步骤102:在区块链数据系统中建立非对称加密算法数据,同时,将非对称加密算法数据压缩成加密数据压缩包;
步骤103:将加密数据压缩包均复制传输至数据层、网络层、共识层、激励层、合约层和应用层中,通过服务器解析每个加密数据压缩包得到加密公钥指令和加密私钥指令;
步骤104:在所述数据层内建立底层数据区块以及相关的数据时间戳数据,通过数据层解析出的加密公钥指令和加密私钥指令分别对所述层数据区块以及相关的数据时间戳数据进行加密运行处理,并将每一组加密公钥指令和加密私钥指令分别运行在网络层、共识层、激励层、合约层和应用层中的加密数据块;
步骤105:循环所述步骤104,逐步将数据层、网络层、共识层、激励层、合约层和应用层生成密文运行,并且上传至服务器。
该实施例中,首先建立区块链数据系统的数据层、网络层、共识层、激励层、合约层和应用层,在区域链数据系统中建立非对称加密算法数据,同时将非对称加密算法数据压缩成加密数据压缩包,将加密数据压缩包均复制传输至数据层、网络层、共识层、激励层、合约层和应用层中,通过服务器解析每个加密数据压缩包得到加密公钥指令和加密私钥指令,数据层内建立底层数据区块以及相关的数据时间戳等技术数据,通过数据层内解析出的加密公钥指令和加密私钥指令分别对层数据区块以及相关的数据时间戳等技术数据进行加密运行处理,将每一组加密公钥指令和加密私钥指令分别运行在网络层、共识层、激励层、合约层和应用层中,授权网络层、共识层、激励层、合约层和应用层中的加密数据块,以确定网络层、共识层、激励层、合约层和应用层中的每个加密数据块都可以运行加密私钥指令和加密私钥指令,随后循环上述步骤,逐步将数据层、网络层、共识层、激励层、合约层和应用层生成密文运行,并且上传至服务器,本发明通过设置的数据层、网络层、共识层、激励层、合约层和应用层,对加密的数据建立底层数据区块,从而更加方便对数据进行加密和对加密数据进行提取,避免了目前市面上一般在通过区块链对数据进行存储时,通常需要通过人工手动对数据进行分类后,对需要进行加密的数据进行手动加密,这种加密方式一般较为麻烦,且加密后再次对数据进行提取时非常麻烦,使用时存在一定的局限性的问题。
实施例五
在实施例一的基础上,对所述加密数据进行清洗时,参照如下公式:
式中,Pij表示第j个数据库中第i种数据的分类类别;Cij表示第j个数据库中第i种数据的类别;Coi表示第i种数据库的评价标准,Qij表示第j个数据中第i种数据类别的数量。
其中,当数据库域内有m个数据类别含有第i种数据,则该种数据在数据库内的总等标负荷为:
其中,Pi表示第i种数据在数据库内的总等标负荷;j表示当前个数据类别;m表示数据类别总个数;
该地区的总等标负荷为:
其中,P表示该地区的总等标负荷;i表示当前种类数据;n表示数据种类总个数;Pj表示第j种数据再数据库内的总等标负荷;
数据库内第i种数据库的区块链负荷比为:
其中,Ki表示第i种数据库的区块链负荷比;
数据数据库内第j个数据的等标负荷比为:
其中,Kj表示第j个数据的等标负荷比;
判断所述数据库内第i种数据库的区块链负荷比与所述数据库内第j种数据库的区块链负荷比是否大于80%;
若所述数据库内第i种数据库的区块链负荷比与所述数据库内第j种数据库的区块链负荷比均等于大于80%,则判定对所述加密数据清洗成功;
若所述数据库内第i种数据库的区块链负荷比或所述数据库内第j种数据库的区块链负荷比小于80%,则判定所述加密数据没有清洗成功。
该实施例中,数据库内的主要数据:按照数据库内数据的等标负荷比排序,将累计百分比大于80%的数据,通过数据层内解析出的加密公钥指令和加密私钥指令分别对层数据区块以及相关的数据时间戳等技术数据进行加密运行处理,将网络层、共识层、激励层、合约层和应用层建立成一个总的辅助区域块,使用其中一组加密公钥指令和加密私钥指令运行在这个辅助区域块中,同时加密公钥运行于加密会话密钥、验证数字签名和加密可以用相应的私钥解密的数据,从而建立一个整体的区域链数据加密系统可以提高全网的密钥和加密数据的安全性。
通过访问秘钥和及用户节点对所述加密数据进行访问,包括:将访问秘钥接接通用户节点,通过用户节点对存储系统进行访问,在区块链中输入秘钥后,访问所述加密数据,并确定所述加密数据的访问频率;
其中,对所述加密数据的访问频率进行计算的公式如下:
式中,xi表示第i次访问数据的数值,n表示每次访问的时间,每次访问时间的误差可以用标准误差表示,i表示当前访问的时间点,表示所述加密数据的访问频率。
实施例六
在实施例一的基础上,将公开数据上传至区块链模块,并进行存储,包括:
基于所述区块链模块生成节点读取指令,并将所述节点读取指令发送至所述区块链模块的数据存储终端;
基于所述数据存储终端确定处于空闲状态的空闲数据存储节点,并提取所述空闲数据存储节点的节点属性;
根据所述空闲数据存储节点以及所述空闲数据存储节点的节点属性生成响应报告,并将所述响应报告基于所述数据存储终端向用户终端进行反馈;
确定所述公开数据的数据总量,以及所述公开数据的数据标识;
基于所述响应报告、所述公开数据的数据总量以及所述公开数据的数据标识制定数据传输方案;
基于所述数据传输方案将所述公开数据分别上传至所述区块链模块中的空闲数据存储节点中进行存储;
获取所述数据存储节点中所述公开数据的存储状态,并基于所述区块链模块将所述存储状态向所述用户终端进行共享,并完成对所述公开数据向所述区块链模块的上传与存储。
该实施例中,节点读取指令可以是用来读取区块链模块的数据存储终端的节点分布状态以及节点工作状态(例如节点的信息,节点是否处于空闲状态等)的指令。
该实施例中,空闲数据存储节点可以没有数据的节点,即可以随时将数据存储至空闲数据存储节点。
该实施例中,节点属性可以是空闲数据存储节点的地址、空闲数据存储节点的数据存放量等属性。
该实施例中,响应报告可以是基于空闲数据存储节点的总个数以及空闲数据存储节点的节点属性确定的报告,用来用户终端进行反馈的报告,用户通过响应报告有利于准确制定数据传输方案。
该实施例中,数据传输方案是用来将公开数据分别传输至区块链模块中的空闲数据存储节点中的。
该实施例中,公开数据的数据标识可以是公开数据的数据字符串的表现形式等。
该实施例中,存储状态可以是公开数据具体存放在哪一个空闲数据存储节点中,以及数据存储的完整性等。
该实施例中,制定数据传输方案之后,且在将所述公开数据分别上传至所述区块链模块中的空闲数据存储节点中进行存储之前,还包括:
在所述区块链模块设定安全初始值m0,同时,确定校验验证初始时间;
根据所述安全初始值m0以及校验验证初始时间,并基于如下公式计算所述区块链模块的数据存储可靠指数;
其中,R(trust)表示所述区块链模块的数据存储可靠指数;ω表示数据校验因子,且取值范围为(0.01,0.03);m0表示所述安全初始值;j表示当前次对所述区块链模块进行安全验证;n表示对所述区块链模块进行安全验证的总次数;k表示在t0到tnow期间所述区块链模块进行安全验证中没有通过安全验证的次数;t0表示所述校验验证初始时间;tnow表示当前验证时间;
基于所述区块链模块的数据存储可靠指数,确定所述公开数据存储至所述区块链模块中的丢失因子;
其中,e表示在所述公开数据存储至所述区块链模块中的丢失因子,且取值范围为(0,1);τ表示常识,且取值为2.01;
根据所述公开数据存储至所述区块链模块中的丢失因子,对所述公开数据在区块链中的丢失概率进行评估,获得目标丢失概率;
将所述目标丢失概率与丢失概率阈值进行比较,判断是否可以将所述公开数据上传至所述区块链模块中;
当所述目标丢失概率等于或大于所述丢失概率阈值时,则判定可以将所述公开数据上传至所述区块链模块中;
否则,则判定不可以将所述公开数据上传至所述区块链模块中,且基于所述丢失因子对所述区块链模块进行存储安全性优化,并在优化后,对所述公开数据进行存储。
上述目标丢失概率可以是基于区块链模块中的丢失因子进行评估后获得的结果是当公开数据上传到区块链模块中时,发生丢失的概率;
上述丢失概率阈值是提前设定好的,用来衡量是否可以将公开数据上传至区块链模块中进行数据存储。
上述技术方案的有益效果是:通过确定区块链模块中的空闲数据存储节点并制定数据传输方案,从而有利于将用户终端的公开数据实现精准的存储,有利于避免区块链模块中进行数据存储时,不会出现数据存储混乱的现象,通过将公开数据的存储状态向用户终端进行共享,有利于用户实时掌握数据存储状态,从而提高了区块链模块中数据存储的便利性;通过对区块链模块的数据存储可靠指数以丢失因子,有效确定公开数据在区块链模块中发生丢失的概率,从而极大的提高了在区块链模块中数据存储的安全性。
实施例七
在实施例一的基础上,基于所述区块链模块将所述存储状态向所述用户终端进行共享,包括:
获取所述用户终端与所述区块链模块的数据通信位置节点,并确定所述数据通信位置节点的节点标识;
获取所述用户终端与所述区块链模块的通信方式种集,并根据所述数据通信位置节点的节点标识,在所述通信方式种类中匹配最佳通信方式;
根据所述最佳通信方式,建立对所述用户终端与所述区块链模块的目标通信链路;
获取所述用户终端的信息读取请求,同时,确定所述区块链模块的信息传递请求;
基于所述用户终端根据所述目标通信链路向所述区块链模块发送信息读取请求,并根据所述区块链模块对所述信息读取请求进行第一验证,并生成第一验证码;
同时,基于所述区块链模块根据所述目标通信链路向所述用户终端发送信息传递请求,并基于所述用户终端对所述信息传递请求进行第二验证,并生成第二验证码;
将所述第一验证码与所述第二验证码进行匹配,判断所述区块链模块是否可以将所述公开数据的存储状态向所述用户终端进行共享;
当所述第一验证码与所述第二验证码不相匹配时,则判定所述区块链模块不可以将所述公开数据的存储状态向所述用户终端进行共享;
否则,则判定所述区块链模块可以将所述公开数据的存储状态向所述用户终端进行共享,同时,将所述第二验证码作为包标识对所述公开数据的存储状态进行打包,获得目标数据包;
将所述目标数据包基于所述目标通信链路传输至所述用户终端,实现所述公共数据的存储状态在所述用户终端的共享。
该实施例中,数据通信位置节点可以是用户终端与区块链模块中进行数据通信的节点(包含节点的位置等信息)。
该实施例中,节点标识可以是表征数据通信位置节点的特征,例如包括数据通信位置节点的节点运行状态,节点通信地址等。
该实施例中,通信方式种类集可以是通过确定不同的通信帧格式、通信时间频率等,从而确定的通信方式种类集,包括多个通信方式,例如通信帧格式为A、通信时间频率为第一通信时间频率,则确定的通信方式种类为第一通信方式种类;若通信帧格式为B、通信时间频率为第二通信时间频率。则确定的通信方式种类为第二通信方式种类等。
该实施例中,最佳通信方式可以是在通信方式种类集中选择与节点标识相符合的通信方式为最佳通信方式。
该实施例中,目标通信链路可以是用来将公共数据的存储状态通过区块链模块传输至用户终端中的物理通信线路。
该实施例中,信息读取请求可以是基于用户终端向区块链模块进行信息读取的请求。
该实施例中,信息传递请求可以是基于区块链模块向用户终端传递信息的请求。
该实施例中,第一验证可以是区块链模块对信息读取请求的安全验证,可以是通过特定的方式进行验证,从而确定第一验证码。
该实施例中,第二验证可以是基于用户终端对信息传递请求的安全验证,从而确定第二验证码。
上述技术方案的有益效果是:通过建立目标通信链路以及分别对信息读取请求以及信息传递请求进行安全验证,并通过第一验证码与第二验证码是否匹配来确定是将公开数据的存储状态向用户终端进行共享,从而提高了数据共享的安全性以及精确性,通过将公开数据的存储状态进行打包,并将第二验证码作为包标识,从而有利于用户终端的精确识别,进而提高了区块链用户节点数据存储的安全性以及便利性。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。