iso file download
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210308365.5 (22)申请日 2022.03.25 (71)申请人 南京邮电大 学 地址 210003 江苏省南京市栖霞区亚 东新 城文苑路9号 (72)发明人 孙国梓 刘坤  (74)专利代理 机构 南京正联知识产权代理有限 公司 32243 专利代理师 王素琴 (51)Int.Cl. H04L 9/40(2022.01) H04L 9/32(2006.01) H04L 9/08(2006.01) H04L 67/1095(2022.01) H04L 67/1097(2022.01)G06F 16/27(2019.01) (54)发明名称 基于区块链的分布式数据同步加密方法 (57)摘要 本发明提供一种基于区块链的分布式数据 同步加密方法, 数据同步节点通过随机密钥函数 生成密钥Key; 将明文Di加入时间序列后行加密, 得到密文数据Ci; 将密文数据Ci共享到所有的目 的节点; 通过散列函数Hash计算, 获得对应的哈 希散列作为密文数据Ci的密文散列; 生成键值对 上链数据Mkv, 上传到区块链平台; 区块链平台验 证节点身份成功后将键值对上链数据Mkv记录到 区块链账本; 目的节点收到密文数据Ci后, 向区 块链平台请求获取键值对上链数据Mkv, 获取密 钥Key通过高级加密标准AES解密Ci, 获取明文 Di; 该方法采用对称加密算法对分布式数据库同 步数据进行加密, 保证共享过程中的数据隐私安 全, 能够保证数据的不可篡改性与可追溯性, 并 保证密钥存取的节点身份安全。 权利要求书3页 说明书7页 附图3页 CN 114679319 A 2022.06.28 CN 114679319 A 1.一种基于区块链的分布式数据同步加密方法, 其特 征在于: 包括以下步骤, S1、 产生数据变动的分布式数据库节点即数据同步节点, 数据同步节点通过随机密钥 函数生成密钥K ey, 密钥用于对待同步数据, 即明文Di进行加密和解密; S2、 数据同步节点将明文Di加入时间序列后, 采用生成密钥通过高级加密标准AES实现 的对称加密算法进行加密, 得到密文数据Ci; S3、 数据同步节点将密文数据Ci共享到区块链系统内所有的目的节点; S4、 数据同步节点将密文数据Ci通过散列函数Hash计算, 获得对应的哈希散列作为密文 数据Ci的密文散列Hash(Ci); S5、 数据同步节点将密钥Key、 分布式数据库节点ID与同步时间作为存储数据, 以密文 散列Hash(Ci)为数据索引组合, 生 成键值对 上链数据Mkv, 然后通过程序包SDK上传到区块链 平台; S6、 区块链平台通过数据同步节点请求中的证书信息验证节点身份, 身份验证成功后 将键值对上链数据Mkv记录到区块链账本; S7、 目的节点对收到的密文数据Ci进行Hash计算获得密文散列, 然后目的节点向区块链 平台请求身份验 证, 身份验证成功后, 通 过密文散列向区块链平台请求获取上链数据Mkv, 进 而获取密钥K ey后, 通过高级加密标准AES解密 密文数据Ci, 获取明文Di。 2.如权利要求1所述的基于区块链的分布式数据同步加密方法, 其特征在于: 步骤S1 中, 数据同步节点 通过随机密钥函数生成密钥K ey, 具体为, S11、 确定密钥Key的基本参数: 最终生成密钥长度lkey与密钥复杂度Okey, 最终生成密钥 长度lkey=(l1,l2)∈Z, l1,l2为最短及最长的密钥长度, 密钥复杂度Okey决定生成密钥的组 合复杂度; S12、 数据同步节点根据 选择的lkey及Okey参数调用随机选择函数Rand(lkey,Okey,n), n为 不重复计数, 随机选择函数以lkey为次数进行遍历生 成随机密钥值, 密钥值组合为最 终生成 密钥Key。 3.如权利要求1所述的基于区块链的分布式数据同步加密方法, 其特征在于: 步骤S2 中, 数据同步节点将同步数据, 即为明文Di, 加入时间序列后, 采用生成密钥通过高级加密 标准AES实现的对称加密算法进行加密, 得到密文数据Ci, 具体为, S21、 数据同步节点生成明文Di, i为分布式系统同步数据唯一索引, 后续明文Di要计算 Hash散列, 为减少Hash冲突每 个明文Di在生成时加入生成时间序列; S22、 设高级加密标准AES的加密函数为E, 则Ci=E(Key,Di), 加密函数把明文Di和密钥 Key作为加密函数的参数输入, 加密函数E会输出对应的密文数据Ci。 4.如权利要求3所述的基于区块链 的分布式数据同步加密方法, 其特征在于: 步骤S21 中, 数据同步节点 生成明文Di, 具体为, S211、 数据同步节点查询本地数据库数据同步记录表, 获取其顺序主键的最大值 Nidmax, 同时获取 数据同步节点在系统内的唯一标识ID; S212、 获取此时系统时间Tnow, 并通过序列化函数format获取时间序列化值S=format (Tnow); S213、 原始数据Dini中引入外部嵌入函数Ex, 将时间序列化值S嵌入到原始数据中以获 取明文Di;权 利 要 求 书 1/3 页 2 CN 114679319 A 2S214、 综合 步骤S211、 步骤S212、 步骤S213计算获取明文Di, 如下: 5.如权利要求1 ‑4任一项所述的基于区块链的分布式数据同步加密方法, 其特征在于: 步骤S3中, 数据同步节点将密文数据Ci共享到区块链系统内所有的目的节点, 具体为, S31、 分布式数据库节点之间彼此保持通信, 由传输控制协议TCP作为通信协议, 同时定 义目的节点 “心跳”机制保持节点存活性, 数据同步节点对区块链系统内所有的目的节点判 定心跳是否正常; S32、 数据同步节点向所有保持心跳正常的目的节点发送数据密文, 每个目的节点在收 到密文后将在T时间后回复完整性校验结果。 6.如权利要求5所述的基于区块链 的分布式数据同步加密方法, 其特征在于: 步骤S31 中, 定义目的节点 “心跳”机制保持节点存活性, 具体为, S311、 建立发送通信包定时器Kat(t), t为 通信包的发送间隔时间; S312、 根据发送通信包定时器Kat(t)发送通信包, 同时更新收到通信包的时间Rtk, k为 次数; S313、 建立判断定时器Jt(b), b为连接标识符, 每次收到通信包b=t rue; S314、 判断定时器Jt(b)不断计算收到的通信包间隔TJt=Tnow‑Rtk, Tnow为当前时间, 如 果TJt大于设定值, 则将连接标识符b=false判作超时, 目 的节点心跳不正常; 否则连接标识 符b=true, 目的节点心跳正常。 7.如权利要求1 ‑4任一项所述的基于区块链的分布式数据同步加密方法, 其特征在于: 步骤S5中, 数据同步节点将密钥 Key、 分布式数据库节点ID与同步时间作为存储数据, 以密 文散列Hash(Ci)为数据索引组合, 以密 文散列为数据索引组合, 生 成键值对 上链数据Mkv, 然 后通过程序包S DK上传到区块链 平台, 具体为, S51、 数据同步节点获取本节点在系统内的唯一标识ID, 同时获取当前 时间Tnow, 按照轻 量化编程语言JavaScript对象表示法JSON格式序列号组合 为数据序列{Key,ID,Tnow}; S52、 区块链账本记录包括不可更改的区块链和状态数据库账本, 其中状态数据库以键 值对Key‑Value的形式存在, 采用密文散列Hash(Ci)组成键值对上链数据Mkv={Hash(Ci), {Key,ID,Tnow}}; S53、 每个数据同步节点都作 为区块链平台的客户端Client, 数据同步节点调用本地逻 辑中的软件开 发套件SDK程序指 定到区块链平台的背书节 点进行Set请求, 将键值对上链数 据Mkv上传至区块链 平台。 8.如权利要求1 ‑4任一项所述的基于区块链的分布式数据同步加密方法, 其特征在于: 步骤S6中, 区块链平台通过数据同步节点请求中的证书信息验证节点身份, 身份验证成功 后将键值对上链数据Mkv记录到区块链账本, 具体为, S61、 在区块链平台中设置认证CA节点进行Client身份验证, 数据同步节点作为Client 向作为服务端Server的CA节点发出注册申请, Server返回注册密码用于Client用户登录, 以便获取身份证书, 区块链平 台对每次Client请求都会验证用户身份, 用户身份验证成功 后建立连接, 进入下一 步骤S62;权 利 要 求 书 2/3 页 3 CN 114679319 A 3

PDF文档 专利 基于区块链的分布式数据同步加密方法

文档预览
中文文档 14 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 基于区块链的分布式数据同步加密方法 第 1 页 专利 基于区块链的分布式数据同步加密方法 第 2 页 专利 基于区块链的分布式数据同步加密方法 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-07 12:40:29上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。