一种基于区块链的钢材质保书隐私保护和分享方法及系统
技术领域
本发明涉及钢铁行业制造与信息化技术领域,尤其是涉及一种基于区块链的钢材质保书隐私保护和分享方法及系统。
背景技术
每一件钢材产品在钢厂出厂时都会附带一份质保书,标明所用原材料规格、性能参数,提供主要性能指标的检测报告或结果,具有法律效力。目前钢厂质保书PDF文件大多存储在钢厂本地,少数钢厂通过接口对接将数据提供给钢铁电商交易平台,有些钢厂只提供其二方钢厂销售平台网址,由用户自己登录后下载。钢铁电商交易平台中,钢厂(卖家)挂货并负责上传提供钢材质保书,买家浏览钢材时可以查看部分结构化的钢材质保信息,只有买家产生了购买行为,生成了合同,最终买家才可以下载质保书。为了使买家更方便获得质保书,现有专利申请CN104503715A提出一种钢铁行业的动态质保书管理系统,包括质保书结构配置模块、质保书打印模块、质保书数据抽取模块和质保书运算模块,将复杂质保书结构配置模块通过表格进行配置,业务数据动态获取,并由核心处理组件运算动态绘制生成客户需要的质保书文件。该专利申请实现质保书模板动态绘制,解决静态质保书模板无法快速扩展的弊端,提高用户工作效率,为企业节约成本。
但从当前现状分析,一方面,钢材质保书存在真实性问题,钢材交易过程中难以证明质保书没有被篡改或伪造;另一方面,钢厂希望保护自己的质保书,其他钢厂不能随意获取自己的质保书,只有买家购买后才能下载质保书。这两者之间存在矛盾。因此,如何在保证信息安全的情况下提供真实有效的数据是本领域亟待解决的技术问题。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种信息安全性高的基于区块链的钢材质保书隐私保护和分享方法。
本发明的目的可以通过以下技术方案来实现:
一种基于区块链的钢材质保书隐私保护和分享方法,该方法包括以下步骤:
构建区块链平台,钢材生产机构和钢材销售机构基于唯一身份认证信息接入所述区块链平台;
区块链平台接收经所述钢材生产机构签名上传的钢材资源信息、质保信息和质保书文件说明信息,同时将加密后的质保书文件保存至分布式文件存储模块中;
区块链平台在接收到所述钢材销售机构的查询请求时反馈相应的质保信息;
区块链平台在接收到所述钢材销售机构的购买确认信息后,响应下载请求从所述分布式文件存储模块调用相应的加密后的质保书文件并反馈,同时反馈对应的质保书文件密钥密文,所述钢材销售机构对接收到的加密的质保书文件进行解密,得到明文的质保书文件以供已购买用户下载。
进一步地,所述唯一身份认证信息包括身份代码和密钥对。
进一步地,所述钢材资源信息包括捆包号、产地代码、重量、数量、品种、规格和牌号。
进一步地,所述质保信息包括捆包号、产地代码、检测项和检测结果清单。
进一步地,所述质保书文件说明信息包括捆包号、产地代码、质保书名称、质保书哈希和质保书文件密钥密文,所述质保书文件密钥密文由钢材生产机构随机生成的用于对质保书文件进行加密的对称加密密钥通过钢材销售机构的公钥加密而成,所述钢材销售机构在接收到加密的质保书文件后,先用私钥解密收到的质保书文件密钥密文,然后使用质保书文件密钥对加密的质保书文件进行解密。
进一步地,所述购买确认信息包括订单号、买方代码、供应商代码、捆包号、产地代码、重量、数量、品种、规格和牌号。
进一步地,从所述分布式文件存储模块调用相应的质保书文件具体为:
接收下载请求,根据捆包号和产地代码查询相应钢材资源信息、质保信息、质保书文件说明信息和购买确认信息是否存在,并校验购买确认信息,校验通过后获取相应的质保书文件反馈给所述钢材销售机构。
进一步地,该方法还包括:
钢材销售机构响应质保书查验请求。
进一步地,所述响应质保书查验请求具体为:
对接收到的待查验质保书文件,计算文件哈希值,然后与所述区块链平台上对应的质保书文件哈希值进行对比,相同则查验通过,否则查验失败。
本发明还提供一种基于区块链的钢材质保书隐私保护和分享系统,包括:
区块链平台,用于实现钢材生产机构和钢材销售机构的信息交互,采用如上所述的方法对钢材质保书进行隐私保护和分享;
分布式文件存储模块,用于存储加密后的质保书文件。
与现有技术相比,本发明具有如下有益效果:
1、本发明基于区块链智能合约技术,在区块链上存储钢厂发布的钢材质保信息、质保书文件的哈希值,区块链上的数据不可篡改,电商交易平台和用户可以使用质保书文件的哈希值进行质保书真实性校验,解决了钢材质保书是否篡改或伪造的查验问题,实现质保书文件不易被篡改或伪造的情况下对特定买家开放分享,保证了数据的真实有效和信息安全性。
2、本发明将质保书文件和质保书文件说明信息分开存储,进一步提高了信息的安全性。
3、本发明通过区块链平台接收质保书的加密文件,并在分布式文件存储中可靠存储,每家钢厂都不能看到其他钢厂的质保书明文数据,解决了质保书在钢厂间的隐私保护问题。本发明在区块链中并不保存质保书原文,只保存质保书哈希值。分布式文件存储支持海量质保书的存储,并且每个质保书都与区块链上的质保书哈希值锚定,既能解决质保书文件的大数据量存储和不可篡改问题,又能控制区块链上交易记录的数据量和保障区块链的交易性能。
4、本发明基于订单使用实现质保书文件的下载限控制,在发生了钢材交易并将订单上链后,才能从质保书隐私保护系统中获取已购钢材的质保书加密文件,解密后提供给已购钢材的买家下载,解决了钢厂质保书对用户的隐私保护问题。
5、本发明将钢材生产机构和钢材销售机构接入所述区块链平台,实现分布式区块链节点部署,以分布式存储的方式保证底层数据的安全性和高可用性。同时采用了分布式的存储引擎存储非结构化数据及流数据,具有较好的水平线性弹性扩展性,从而满足区块链系统对于海量存储的需求。
附图说明
图1为本发明的流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例1
如图1所示,本实施例提供一种基于区块链的钢材质保书隐私保护和分享方法,该方法包括以下步骤:构建区块链平台(质保书隐私保护系统),钢材生产机构(钢厂)和钢材销售机构(电商交易平台)基于唯一身份认证信息接入所述区块链平台,所述唯一身份认证信息包括身份代码identity_key和密钥对(公私public_key和私钥private_key);区块链平台接收经所述钢材生产机构签名上传的钢材资源信息resource_info、质保信息quality_info和质保书文件说明信息(不含文件原文)quality_file_info,同时将加密后的质保书文件quality_file_encrypt保存至分布式文件存储模块中;区块链平台在接收到所述钢材销售机构的查询请求时反馈相应的质保信息;区块链平台在接收到所述钢材销售机构的购买确认信息后,响应下载请求从所述分布式文件存储模块调用相应的质保书文件并反馈以供下载。
钢材生产机构与区块链平台的信息交互具体包括:
2.1)钢材生产机构基于唯一身份认证信息接入所述区块链平台,以自己的身份签名上传钢材的资源信息resource_info和质保信息quality_info,其中,钢材资源信息包括捆包号pack_code、产地代码manufacture_code、重量pack_weight、数量、品种、规格、牌号等,质保信息包括捆包号pack_code、产地代码manufacture_code、检测项和检测结果清单;
2.2)随机生成一个质保书对称加密密钥quality_file_aes_key,并使用电商交易平台的公钥加密quality_file_aes_key后得到quality_file_aes_key_encrypt;
2.3)以自己的身份签名上传和钢材的质保书文件说明信息quality_file_info,包括捆包号pack_code、产地代码manufacture_code、质保书名称quality_file_name、质保书哈希值quality_file_hash、质保书文件密钥密文quality_file_aes_key_encrypt;
2.4)将质保书文件quality_file用对称加密密钥quality_file_aes_key加密后得到质保书的加密文件quality_file_encrypt,然后上传quality_file_encrypt到分布式文件存储中。
从所述分布式文件存储模块调用相应的质保书文件并反馈具体为:接收下载请求,根据捆包号和产地代码查询相应钢材资源信息、质保信息、质保书文件说明信息和购买确认信息是否存在,并校验购买确认信息,校验通过后获取相应的质保书文件反馈给所述钢材销售机构。上述交互过程具体为:
4.1)买家在电商交易平台下单购买钢材,电商交易平台通过系统接口对接质保书隐私保护系统,以平台的身份签名和上传订单信息order_info(订单号order_code、买方代码buyer_code、供应商代码provider_code、捆包号pack_code、产地代码manufacture_code、重量pack_weight、数量、品种、规格、牌号等)到区块链。
4.2)买家在电商交易平台点击下载已购钢材的质保书,电商交易平台根据买家代码buyer_code、捆包号pack_code、产地代码manufacture_code向质保书隐私保护系统请求质保书文件。
4.3)质保书隐私保护系统根据捆包号pack_code和产地代码manufacture_code检查区块链中对应资源信息、质保信息、质量文件说明信息和订单是否存在,并且相关订单的买家中有buyer_code,校验通过后从质量文件说明信息中得到质保书文件名quality_file_name和对称加密密钥的密文quality_file_aes_key_encrypt。
4.4)质保书隐私保护系统根据捆包号pack_code、产地代码manufacture_code和质保书文件名quality_file_name从分布式文件存储中获取质保书的加密文件quality_file_encrypt,将quality_file_encrypt和quality_file_aes_key_encrypt返回电商交易平台。
4.5)电商交易平台用自己的私钥解密quality_file_aes_key_encrypt得到对称加密密钥quality_file_aes_key,然后再用quality_file_aes_key解密quality_file_encrypt得到明文的质保书文件quality_file。
在另一实施例中,该方法还包括:钢材销售机构响应质保书查验请求,具体为:
对接收到的待查验质保书文件,计算文件哈希值,然后与所述区块链平台上对应的质保书文件哈希值进行对比,相同则查验通过,否则查验失败。
实施例2
本实施例提供一种基于区块链的钢材质保书隐私保护和分享系统,包括:区块链平台,用于实现钢材生产机构和钢材销售机构的信息交互,采用如实施例1所述的方法对钢材质保书进行隐私保护和分享;以及分布式文件存储模块,用于存储加密后的质保书文件。
区块链平台对接多个钢材生产机构,钢厂数据管理会使用数据隐私保护的方式来实现,一个钢厂无法访问其他钢厂的质保书文件。在钢厂数据管理中,钢厂可以一次上传质保信息和质保书,钢材质保数据在买方购买前和购买后以不同的形式呈现给买方,整体业务逻辑、权限控制以智能合约的方式进行实现。
在连接到区块链平台的钢材销售机构中,用户在线浏览钢材时可以看到部分结构化质保信息,但是无法获得具有法律效力的质保书。产生购买行为后,买方可以下载已购钢材的质保书。订单生效交易记录通过区块链存证,保证交易过程、交易数据的真实性和不可篡改。
采用区块链作为底层架构后,整体对买方而言是透明无感知的。钢厂签发的每一张质保书都会存储在区块链上。用户在获取质保书后,可以使用质保书隐私保护系统的区块链数据来进行真伪校验,防止篡改和伪造质保书。同时结合区块链的可信价值数据传输网络,也为买方提供了信用的保证。
该基于区块链的钢材质保书隐私保护和分享系统对钢厂、电商交易平台和买方的区块链API服务如表1所示。
表1
通过智能合约来控制钢材质保书信息上链及查看分享的业务逻辑,包括所有完整的钢材资源信息、质保信息、质保书、交易数据、用户数据、授权信息等,减少人工操作,提升协作效率。智能合约自动执行,减少人为失误和违规操作,降低不合规行为导致的风险。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。