[发明专利]一种区块链文件存储系统及其方法在审
申请号: | 201911395576.1 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111147502A | 公开(公告)日: | 2020-05-12 |
发明(设计)人: | 骆扬杰;薛斌;谢雨 | 申请(专利权)人: | 合肥都市链情商务有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;H04L9/08;G06F21/62 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
地址: | 230031 安徽省合肥*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 区块 文件 存储系统 及其 方法 | ||
1.一种区块链文件存储系统,其特征是应用于用户将文件上传到区块链进行存储的场景中;所述区块链文件存储系统包括:上传子系统、区块链管理子系统以及文件管理子系统;
所述上传子系统包括:文件上传模块、文件转换模块;
所述区块链管理子系统包括:地址生成模块、公私钥生成模块、文件上链模块;
所述文件管理子模块包括:文件查询模块、文件解密模块;
所述地址生成模块获取用户提出的地址申请后,生成用户所需的区块链地址以及地址私钥,并记为用户地址Addr以及地址私钥FromK;
所述公私钥生成模块接收用户的密钥请求后,生成所述用户的非对称公钥以及私钥,并记为用户的公钥Pub以及私钥Pri;
所述文件上传模块接收用户上传的所有文件以及用于构建区块链交易的属性信息,包括:用户地址Addr和地址私钥FromK、用户的公钥Pub和私钥Pri;
所述文件转换模块将用户上传的文件转换为区块链上可存储的数据格式;
所述文件上链模块获取格式转换后的文件并存储在与所述用户地址Addr所关联的区块链交易上,并由所述区块链进行加密处理,得到加密后的文件;
设置所述区块链交易上的属性信息包括:交易发起地址From、交易发起地址的私钥FromKey、交易发起使用非对称公钥PrivateFrom、交易发起使用的非对称私钥PrivateFromKey、交易接收地址To、交易接收使用的非对称公钥PrivateFor、交易附属数据Input;
所述文件上链模块在所述区块链交易的属性信息中指定:所述交易发起地址From为用户的地址Addr,所述交易发起地址的私钥FromKey为用户的地址私钥FromK,所述交易发起使用非对称公钥PrivateFrom为用户的公钥Pub,所述交易发起使用的非对称私钥PrivateFromKey为用户的私钥Pri,所述交易接收地址To为用户的地址Addr,所述交易接收使用的非对称公钥PrivateFor为用户的公钥Pub,交易附属数据Input为格式转换后的文件;
所述文件上链模块将区块链交易提交得到的区块链交易编号TranHash并返回给用户,从而完成文件存储过程;
所述文件查询模块接收用户提交的区块链交易编号TranHash后,查询区块链上是否存在相应交易,如果不存在,则返回失败;如果存在,则将通过所述区块链交易编号TranHash获取加密后文件的数据索引Hash,并连同用户的公钥Pub、私钥Pri提交给所述文件解密模块;
所述文件解密模块通过所述加密后文件的数据索引Hash查询区块链上的加密后的文件,再通过用户的公钥Pub和私钥Pri进行解密,如果解密失败,则返回空,如果解密成功,则将解密后的原始文件返回给用户。
2.根据权利要求1所述的区块链文件存储系统,其特征是,所述文件转换模块是按如下过程对文件进行转换:
所述文件转换模块读取用户上传的文件并转换为二进制数据,再将二进制数据进行压缩,从而得到格式转换后的文件。
3.一种区块链文件存储方法,其特征是应用于用户将文件上传到区块链进行存储的平台中,并按如下步骤进行:
步骤1:所述用户提交地址申请至平台中,所述平台生成一个区块链地址以及对应的地址私钥,并记为地址Addr以及地址私钥FromK;
步骤2、所述用户提交密钥请求至平台中,所述平台生成一个加密所需的公私钥,并记为公钥Pub以及私钥Pri;
步骤3:所述用户上传所需存储的文件至平台中,所述平台将用户上传的文件转换为区块链上可存储的数据格式,记为格式转换后的文件;
步骤4、所述平台将格式转换后的文件存储在与所述用户地址Addr所关联的区块链交易上,并由所述区块链进行加密处理,得到加密后的文件;
步骤5、所述平台在所述区块链交易上设置属性信息,包括:交易发起地址From、交易发起地址的私钥FromKey、交易发起使用非对称公钥PrivateFrom、交易发起使用的非对称私钥PrivateFromKey、交易接收地址To、交易接收使用的非对称公钥PrivateFor、交易附属数据Input;
步骤6、所述平台在所述区块链交易的属性信息中指定:
所述交易发起地址From为用户的地址Addr,所述交易发起地址的私钥FromKey为用户的地址私钥FromK,所述交易发起使用非对称公钥PrivateFrom为用户的公钥Pub,所述交易发起使用的非对称私钥PrivateFromKey为用户的私钥Pri,所述交易接收地址To为用户的地址Addr,所述交易接收使用的非对称公钥PrivateFor为用户的公钥Pub,交易附属数据Input为文件转换后的数据;
步骤7:所述平台将区块链交易提交得到的区块链交易编号TranHash并返回给用户,从而完成文件存储;
步骤8:所述平台接收用户提交的区块链交易编号TranHash,并查询区块链上是否存在相关交易,如果不存在,则返回失败;如果存在,则执行步骤9;
步骤9:所述平台通过所述区块链交易编号TranHash获得加密后文件的数据索引Hash,查询区块链上的加密后的文件,再通过用户的公钥Pub,私钥Pri进行解密,如果解密失败,则返回空,如果解密成功,将解密后的原始文件返回给用户,从而完成文件下载过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥都市链情商务有限公司,未经合肥都市链情商务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911395576.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种具有油液降温功能的散热器
- 下一篇:一种检验样本存储柜