CN113779594B - 基于区块链的数据分发共享方法及系统 - Google Patents
基于区块链的数据分发共享方法及系统 Download PDFInfo
- Publication number
- CN113779594B CN113779594B CN202110937572.2A CN202110937572A CN113779594B CN 113779594 B CN113779594 B CN 113779594B CN 202110937572 A CN202110937572 A CN 202110937572A CN 113779594 B CN113779594 B CN 113779594B
- Authority
- CN
- China
- Prior art keywords
- data
- counterfeiting
- information
- tracing
- traceability
- 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
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000009826 distribution Methods 0.000 title claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000005540 biological transmission Effects 0.000 claims description 14
- 238000005516 engineering process Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims description 6
- 230000010365 information processing Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 abstract description 9
- 239000000969 carrier Substances 0.000 abstract description 2
- 239000004744 fabric Substances 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000007726 management method Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- JLQUFIHWVLZVTJ-UHFFFAOYSA-N carbosulfan Chemical group CCCCN(CCCC)SN(C)C(=O)OC1=CC=CC2=C1OC(C)(C)C2 JLQUFIHWVLZVTJ-UHFFFAOYSA-N 0.000 description 1
- 230000006854 communication Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000009958 sewing Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明属于区块链技术领域,特别涉及一种基于区块链的数据分发共享方法及系统,基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;检验被授权用户数据查询请求指令合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息。本发明能够在提供基本的数据防伪查询、转手交易和线上过户服务的同时安全的进行用户管理,解决数据交易平台生产、分发与共享流程中数据上传效率低、签名算法强度低等问题,能够保障线上数据交易安全性、可靠性和公正性,具有较好应用前景。
Description
技术领域
本发明属于区块链技术领域,特别涉及一种基于区块链的数据分发共享方法及系统。
背景技术
随着人民生活水平、生活质量的不断提高,数据消费逐渐融入人们的生活,数据交易(包括二手交易)日益频繁,暴利驱动下,假冒伪劣数据日益猖獗,对数据平台造成了恶劣影响。传统的数据防伪溯源技术手段如物理防伪、数字签名、二维码溯源、RFID等往往无法兼顾效率和安全性,区块链技术通过自身独特的数据处理方式巧妙地解决了此问题。不同于一般数据的防伪溯源应用,二手数据交易必须透明、加密技术更加强大、分发过程全程可视。二维码溯源方案通过工业缝纫,复制伪造二维码的代价超过了其能获取的利益,使造假者无利可图,实现了二维码和织物之间的“一物一码”。但此方案在数据溯源场景下适用面仅限于服装等实物数据,而且也无法实现数据的全程可控可查。基于区块链和QR码的溯源系统,在防伪的同时兼顾了溯源的功能,但QR码安全性不高,基于以太坊的设计又限制了溯源信息上传的速度。
发明内容
为此,本发明提供一种基于区块链的数据分发共享方法及系统,利用智能合约连接用户与系统服务,将合法的用户节点加入系统,并对不同用户对区块链网络分配相应权限,能够在提供基本的数据防伪查询、转手交易和线上过户服务的同时安全的进行用户管理,解决数据交易平台生产、分发与共享流程中数据上传效率低、签名算法强度低等问题,促进线上数据交易的安全性、可靠性和公正性。
按照本发明所提供的设计方案,一种基于区块链的数据分发共享方法,包含:
基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;
检验被授权用户数据查询请求指令合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息。
作为本发明基于区块链的数据分发共享方法,进一步地,构建数据防伪溯源平台中,分别构建用于用户节点数据追溯处理的溯源模型、用于用户节点数据防伪处理的防伪模型、及用于将用户节点上传的数据溯源信息封装至带有时间戳数据区块的防伪溯源联盟链区块,其中,防伪溯源联盟区块对数据进行封装中,利用混合加密算法分别对用户节点个人隐私信息和用户签名数据进行双重加密。
作为本发明基于区块链的数据分发共享方法,进一步地,所述溯源模型和防伪模型均用多元组表示,其中,溯源模型PIT=fp(M,D,T,C,S,I,E),防伪模型PAC=Fp(M,D,T,C,S,I,E,fp),其中,M代表数据生产者集合,D代表数据存储者集合,T代表传输方,C代表获取数据的用户节点集合,S代表数据交易平台,I代表区块链,E代表平台,fp代表所有不同要素之间及相同要素之间关联信息处理函数,PIT代表信息追溯结果,Fp为针对溯源模型中各个参与者和参与过程整合出合法传输记录满足条件关系的防伪处理函数。
作为本发明基于区块链的数据分发共享方法,进一步地,溯源模型及范围模型中,数据生产者对注册数据载体分配防伪溯源码并申请该注册数据载体的初始所有权,数据存储者对数据载体进行销售并记录当前节点转发和/或交易信息,用户节点通过扫描数据载体查询码来判断数据载体真伪。
作为本发明基于区块链的数据分发共享方法,进一步地,利用混合加密算法进行双重加密中,首先,利用国密SM2加密算法作为公钥算法生成公私钥对,并对用户节点隐私信息进行加密;然后,结合国密SM3加密算法对节点公钥中联盟链区块地址进行哈希散列加密计算,生成用户签名信息。
作为本发明基于区块链的数据分发共享方法,进一步地,防伪溯源联盟链区块包含:区块头和区块体,其中,区块头中设置有时间戳、前一个区块哈希地址、默克尔根及当前区块链相关信息,区块体中设置有上传至区块链网络中经过验证的数据防伪溯源信息及相关交易数据。
作为本发明基于区块链的数据分发共享方法,进一步地,联盟链各节点对数据进行加解密中,利用证书颁发权威机构CA生成数字证书,利用数字证书模式对节点数据操作权限进行身份审查。
作为本发明基于区块链的数据分发共享方法,进一步地,利用QR码及S2i码技术融合数据载体特征信息共同加密转换生成用于数据载体标识的数据载体防伪溯源码,并将数据载体防伪溯源码放置于数据载体包装内。
作为本发明基于区块链的数据分发共享方法,进一步地,数据载体防伪溯源码生成中,通过设置计数器来限制利用防伪溯源码的查询次数。
进一步地,本发明还提供一种基于区块链的数据分发共享系统,包含:平台设置模块及数据查询模块,其中,
平台设置模块,用于基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;
数据查询模块,用于检验被授权用户数据查询请求指令合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息。
本发明的有益效果:
本发明利用智能合约连接用户与系统服务,将合法的用户节点加入系统,并对不同用户对区块链网络分配相应权限,能够在提供基本的数据防伪查询、转手交易和线上过户服务的同时安全的进行用户管理,解决数据交易平台生产、分发与共享流程中数据上传效率低、签名算法强度低等问题,能够保障线上数据交易的安全性、可靠性和公正性,除应用于数据溯源外,通还可适用于征信和权属管理、知识版权保护、电子票据溯源等其他行业,实用性强,具有广阔的应用前景。
附图说明:
图1为实施例中基于区块链的数据分发共享流程示意;
图2为实施例中溯源模型要素组成示意;
图3为实施例中防伪模型要素组成示意;
图4为实施例中混合加密签名过程;
图5为实施例中Fabric联盟链技术平台架构示意;
图6为实施例中S2i码编码原理示意;
图7为实施例中数据分发共享平台系统架构示意。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
数据分发与共享需求日益紧迫,传统的基于区块链的数据分发与共享技术手段往往无法兼顾效率和安全性,很难达到数据溯源安全、透明、高效的要求。针对当前电子数据造假多、鉴定难等问题,本发明实施例,提供一种基于区块链的数据分发共享方法,参见图1所示,包含:
S101、基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;
S102、检验被授权用户数据查询请求指令合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息。
利用智能合约连接用户与系统服务,将合法的用户节点加入系统,并对不同用户对区块链网络分配相应权限,能够在提供基本的数据防伪查询、转手交易和线上过户服务的同时安全的进行用户管理,解决数据交易平台生产、分发与共享流程中数据上传效率低、签名算法强度低等问题,能够保障线上数据交易的安全性、可靠性和公正性,除应用于数据溯源外,通还可适用于征信和权属管理、知识版权保护、电子票据溯源等其他行业,实用性强。
作为本发明实施例中基于区块链的数据分发共享方法,进一步地,构建数据防伪溯源平台中,分别构建用于用户节点数据追溯处理的溯源模型、用于用户节点数据防伪处理的防伪模型、及用于将用户节点上传的数据溯源信息封装至带有时间戳数据区块的防伪溯源联盟链区块,其中,防伪溯源联盟区块对数据进行封装中,利用混合加密算法分别对用户节点个人隐私信息和用户签名数据进行双重加密。进一步地,所述溯源模型和防伪模型均用多元组表示,其中,溯源模型PIT=fp(M,D,T,C,S,I,E),防伪模型PAC=Fp(M,D,T,C,S,I,E,fp),其中,M代表数据生产者集合,D代表数据存储者集合,T代表传输方,C代表获取数据的用户节点集合,S代表数据交易平台,I代表区块链,E代表平台,fp代表所有不同要素之间及相同要素之间关联信息处理函数,PIT代表信息追溯结果,Fp为针对溯源模型中各个参与者和参与过程整合出合法传输记录满足条件关系的防伪处理函数。
参见图2和3所示,利用fp信息处理函数来获取所有不同要素之间、相同要素之间的联系,并通过溯源模型输出信息追溯结果;利用Fp防伪处理函数,针对溯源模型中的各个参与者和参与的过程整合出合法传输记录满足的基本条件和关系,只有所有环节均合法,最终才可被判断为真实数据,通过防伪模型输出数据产品信息防伪结果。
作为本发明实施例中基于区块链的数据分发共享方法,进一步地,溯源模型及范围模型中,数据生产者对注册数据载体分配防伪溯源码并申请该注册数据载体的初始所有权,数据存储者对数据载体进行销售并记录当前节点转发和/或交易信息,用户节点通过扫描数据载体查询码来判断数据载体真伪。进一步地,防伪溯源联盟链区块包含:区块头和区块体,其中,区块头中设置有时间戳、前一个区块哈希地址、默克尔根及当前区块链相关信息,区块体中设置有上传至区块链网络中经过验证的数据防伪溯源信息及相关交易数据。
在防伪溯源框架中,将数据生产商、数据传输商、数据共享方等上传的数据溯源信息,封装至带有时间戳的数据区块中。防伪溯源区块由两部分组成:一部分是区块头(header),另一部分是区块体(body)。区块头中包含时间戳(Timestamp)、前一个区块的哈希地址、默克尔根以及当前区块链系统的有关信息。其中,包含在上传信息至区块链网络过程中经过验证的数据防伪溯源信息和交易数量。区块格式如表1所示:
表1区块格式
作为本发明实施例中基于区块链的数据分发共享方法,进一步地,利用混合加密算法进行双重加密中,首先,利用国密SM2加密算法作为公钥算法生成公私钥对,并对用户节点隐私信息进行加密;然后,结合国密SM3加密算法对节点公钥中联盟链区块地址进行哈希散列加密计算,生成用户签名信息。
SM2算法全称SM2椭圆曲线公钥密码算法,是我国自主知识产权的商用密码算法,属于椭圆曲线加密算法(ECC)的一种。此算法有两个极为显著的优势:①求解难度较大。SM2算法拥有指数级的计算复杂度。②所需密钥长度短。在同等安全程度要求下,SM2较其他公钥密码算法所需密钥长度更小。SM2算法可运用于数字签名、密钥交换、公钥加密等,且密码强度以及加解密速度要远远高于国际上的RSA算法。我国也制定了SM2算法的一系列标准:GB/T 32918.2-2016:SM2数字签名算法;GB/T 32918.3-2016:SM3密钥交换协议;GB/T32918.4-2016:SM2公钥加密算法。国密SM3算法整体结构在SHA-256算法的基础上扩充了更先进的设计机制。包括增加快速雪崩效应的P置换、全异或操作、消息双字介入等。这样能大幅减少局部碰撞发生的频率,极大增加了差分分析破解法、线性分析破解法的难度。
针对目前基于区块链架构的互联网数据共享平台与交易平台易发生用户数据失窃被盗问题,区块链使用安全可能面临巨大风险。区块链架构自身安全性很高,并通过非对称加密技术保护信息传输安全性和有效性,但是用户对于私匙使用和保存的安全管理和保护工作却不够严谨。复制冒用真实二维码难度大、成本高,针对此种情况造假者可能会试图盗取或篡改区块链溯源信息,非法向防伪溯源链上传内容,从而使假数据变成“真数据”。针对此问题,本案实施例中,参见图4所示,基于国密SM2和SM3的混合加解密算法,以SM2加密算法作为公钥算法生成公钥和私钥对用户个人隐私信息进行加密,以SM3加密算法作为散列算法生成区块链区块地址并进行散列计算,通过提升数字签名算法的强度加强本方案安全性。
使用非对称加密算法进行信息加密和签名可以保护数据交易过程中消费者身份信息与交易信息不被窃取,并且保护区块链溯源数据共享平台的安全,如图4所示的平台混合加密通信过程,其中,公私钥的产生利用了SM2椭圆曲线机密算法和SM3杂凑算法。在数据生产商区块链平台与数据消费者的信息交互过程中,生产商接收消费者的公钥对发送的信息进行加密,消费者使用私钥对接收的信息进行解密,以下为加密过程,参数说明如表2所示。
表2参数说明
符号 | 含义 |
ENTL | 由两个字节表示的ID的比特长度 |
a,b | 系统曲线参数 |
XG,YG | 基点 |
XA,YA | 用户的公钥 |
(1)生成密钥对
Step1.利用随机数发生器生成整数h∈(1,n-2);
Step2.G为基点,计算点P=(xp,yp)=[h]G。
则私钥为h,公钥为P
(2)预处理
Step1.输入用户身份信息表示ID和用户的公钥Q;
Step2.通过公式Z=SM3(EMTL||ID||a||b||xG||yG||xA||yA)计算得到中间参量Z。
Step3.输入中间参量Z和待签名消息M;
Step4.通过计算公式H=SM3(Z||M)计算得到中间参量H;
(3)生成签名
Step1.输入签名者私钥h、预处理的结果H和待签名消息M
Step2.置
Step3.使用随机数发生器生成随机数k∈[1,n-1];
Step4.计算椭圆曲线点(x1,y1)=[k]G,的x1转化为整形;
Step5.计算r=(e+x1)mod n;
Step6.计算s=((1+dA)-1·(k-r·dA))modn;
Step7.将(r,s)转化为字符串;
Step8.最终所得消息M的签名即为(r,s)。
作为本发明实施例中基于区块链的数据分发共享方法,进一步地,联盟链各节点对数据进行加解密中,利用证书颁发权威机构CA生成数字证书,利用数字证书模式对节点数据操作权限进行身份审查。
由于区块链所具有的不可篡改、分布式存储、公开透明的特点,因此可以作为解决数据防伪溯源的新思路。联盟链是一种具有身份认证的区块链,节点须经认证才能加入区块链网络,各节点通过CA机构颁发的证书实现联盟链权限管理、对接入系统的节点进行身份识别和权限分配、明确用户身份信息。在联盟链上,不同业务逻辑对应的不同智能合约,是运行在验证节点上的分布式交易程序,自动执行特定业务数据的算法规则,可以完成信息管理和查询功能,并满足其安全特性。由于联盟链上的节点数量较少,且每个节点也都具有很高的信任度,所以并不需要针对每个节点进行交易验证,更容易达成共识,相同时间内处理交易数要远高于公有链,交易费用相对于公有链也更低。与公有链不同,交易数据不会对全网公开,能做到身份认证,保护用户隐私,相比之下联盟链更适合数据的溯源。Hyperledger Fabric作为免费开源的联盟区块链项目,功能强大,维护成本低。同时Fabric提供了基于Node.js SDK、Go SDK、Java SDK等网络应用开发包以及Fabric CA证书授权中心。参见图5所示Fabric联盟链技术平台架构,模块化的设计在方便开发的同时保证了各个节点的独立性,适应溯源场景下各节点分布且独立的特点。本案实施例中,以Fabric为技术依托的联盟链保证方案较强的可扩展性,可应用于数据溯源、征信和权属管理、知识版权保护、电子票据溯源等行业,具有广阔的应用前景。
作为本发明实施例中基于区块链的数据分发共享方法,进一步地,利用QR码及S2i码技术融合数据载体特征信息共同加密转换生成用于数据载体标识的数据载体防伪溯源码,并将数据载体防伪溯源码放置于数据载体包装内。
二维码具有成本低、抗损性强、储存量大等优点,消费者利用智能手机自带摄像头扫描二维码进行数据溯源和二手交易更加便利,二维码对移动终端计算能力要求低,操作简单、方便,且其抗损性强,在数据多次转手的情况下,仍可以保持可识别性,可以更好的解决数据溯源环节复杂,信息内容多的问题。S2i码是一种“可视化、高安全、超容量”的新型二维码,是一种将密码学和物理载体的典型特征相结合,通过特殊的编码方式将文字、照片等可数字化的信息和防伪功能信息共同加密转换形成的二维码图像。S2i技术在数据防伪中应用的图像标签是根据印刷设备的极限参数设计的,即使经过高清扫描仪复制后再印刷,其图像点阵会因为油墨的交融而变的模糊不清。编码原理如图6所示,在现有工艺基础上可大量印制且不产生成本的基础上,S2i码使得每件数据都拥有属于自己无法被复制的唯一标识。S2i码技术其结合了二维码的优点,同时类似于易损标签,不可复制,是一种具有高信息容量、高纠错率和高安全性的二维图像。本案实施例中,利用S2i码和QR码双码机制保证系统具备交易不可篡改和伪造、加强型SM2和SM3混合加密算法和智能合约保证系统具备高安全溯源能力。
进一步地,本案实施例中,针对数据载体防伪溯源码生成过程,通过设置计数器来限制利用防伪溯源码的查询次数。通过采用双码+计数器设计,将防伪查询码放置于数据载体包装内,提高不法分子获取成本及难度,通过查询次数限制使不法分子不敢轻易重用二维码,同时将QR码与S2i码结合使防伪查询码不可复制不可转移,从而有效打击不法分子制假售假行为。
进一步地,基于上述的方法,本发明实施例还提供一种基于区块链的数据分发共享系统,包含:平台设置模块及数据查询模块,其中,
平台设置模块,用于基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;
数据查询模块,用于检验被授权用户数据查询请求指令合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息。
为验证本案方案有效性,下面结合基于B/S架构的客户端和分发共享服务器对本案方案实现过程做进一步解释说明:
参见图7所示,客户端分为溯源节点客户端和消费者客户端两种,溯源节点客户端主要为溯源链上各节点提供数据载体防伪溯源码扫描、身份认证与溯源信息上传服务,并额外为数据生产商提供数据唯一编号与二维码生成功能;消费者客户端主要为消费者提供防伪查询、所有权绑定与分发共享服务。分发共享服务器基于Fabric架构开发,由五大功能模块组成:①角色信息管理模块;②数据信息管理模块;③数据信息上传模块;④数据查询模块;⑤数据载体二维码标签管理模块。各模块功能如表3所示,模块相互配合完成对防伪溯源系统各个请求的响应。
在Fabric区块链的基础上,通过设计数据区块格式和不同场景下的智能合约实现数据的可溯源化,并采用NodeSDK连接底层网络和上层应用,前端采用Node.js完成数据信息的可视化展示,智能合约采取Go语言,将数据品溯源信息储存在区块链网络上。
(1)运行环境配置
表4运行环境配置信息
所需软件 | 版本号 |
Nodejs | 8.1.0 |
Go | 1.9.2 |
Docker | 18.09.2 |
Docker-compose | 1.23.2 |
Hyperledger Fabric | 1.4.0 |
(2)Fabric配置与部署
使用Fabric区块链,开发时需要对Fabric进行配置,主要包括三步:第一步是确认组织结构并生成各结点对应身份证书。第二步是初始化Fabric区块链网络,写入创世块的初始内容。第三步是将已配置好的单个身份结点初始化,并加入到同样初始化完毕的区块链网络通道中。生成组织结构和身份证书,生成过程依赖crypto-config.yaml配置文件,之后依据Fabric提供的cryptogen模块和crypto-config.yaml配置文件来生成组织关系和身份证书。生成创世区块,创建服务启动初始区块及应用通道交易配置文件定义在名为configtx.yaml文件中,包括Ordered节点信息,Organization节点信息,Channel信息。使用Fabric中的configtxgen工具,通过配置文件中的信息生成创世区块,并更新相关的通道信息,完成区块链的初始化。
数据生产信息如表5所示,用于记录数据生产信息,主要由生产商提供。
表5数据生产信息表
列名 | 所属类型 | 说明 |
CargoInfos | 自定义类 | 数据信息 |
CargoProInfo | CargoInfos | 数据生产信息 |
CargoID | CargoInfos | 数据唯一编号 |
ProInfosJSONasBytes | Json字段 | 数据信息的json编码 |
转发信息如表6所示,用于记录数据传输过程中数据的中转运输信息。
表6数据转发信息表
传输信息如表7所示,记录数据传输地点,记录数据传输时间,是溯源过程的最终环节。
表7数据传输信息
列名 | 所属类 | 说明 |
StoreID | StoreInfos | 传输载体设备节点编号 |
StoreName | StoreInfos | 传输载体ID |
StoreCost | StoreInfos | 传输字节数 |
StoreTm | StoreInfos | 传输时间 |
IngInfosJSONasBytes | Json字段 | 传输信息的json编码 |
可使用Go语言进行智能合约的开发,并采用模块化的方式,针对不同的身份以及功能模块开发专属的智能合约。智能合约中的Invoke函数整合了合约体现的所有功能。首先智能合约收到应用层传递到数据,判断数据量是否合法,如果不合法返回shim.Error;之后判断所上传数据的编号是否合法:向底层网络发送查询编号请求,若返回为err.Error则说明此数据编号未使用,数据编号合法、数据编号信息合法,则读入数据其他生产信息。将CargoProInfo下的所有变量通过Marshal函数整合未json字段,若编码失败,返回Error将json字段上传至区块链网络,若上传失败则返回Error。信息查询过程需要调用区块链网络中有关数据的全部信息,并进行整合、传递,最终返回数据的全部信息。
针对现有的数据防伪溯源手段进行深入研究分析,充分结合数据本身特点,基于Fabric架构实现数据防伪溯源与线上分发共享,联盟链的CA可以实现用户的身份审核和准入机制,保证了加入链中进行交易的人都是和合法用户;采用双码+计数器设计,将防伪查询码放置于数据载体包装内,提高不法分子获取成本及难度,通过查询次数限制使不法分子不敢轻易重用二维码,同时将QR码与S2i码结合使防伪查询码不可复制不可转移,从而有效打击不法分子制假售假行为;基于所有权的电子鉴定证书,对每个数据载体赋予"身份证",电子鉴定证书中记录着数据从出厂至传输的全过程,这个过程相当于在对数据跟踪溯源建立基础。同时基于分布式帐本和共识机制,当完全交易后,会自动完成所有权信息的更新,对交易双方进行监管,让交易过程更加可信、可证和透明;采用SM2作为公钥密码算法产生公私钥来对用户身份信息进行加密保护。合法的用户身份信息需要私钥签名,否则无法秘密的对区块信息进行篡改,保证了身份的不可伪造性。如果攻击者截获了区块信息,试图对区块进行篡改。由于加密算法的安全性,攻击者无法对区块进行解密,所以无法在隐蔽的情况下对区块信息进行篡改,该方法满足安全性。采用SM3算法作为生成区块地址及散列计算的散列算法,即使攻击者得到公钥,反推出身份认证区块地点所在位置,查询所得的用户身份信息仍处于加密状态,无法破解用户身份信息。本方案除应用于数据溯源外,还可应用于征信和权属管理、知识版权保护、电子票据溯源等其他行业,具有广阔的应用前景。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
基于上述的方法和/或系统,本发明实施例还提供一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的方法。
基于上述的方法和/或系统,本发明实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述的方法。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (2)
1.一种基于区块链的数据分发共享方法,其特征在于,包含如下内容:
基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;其中,构建数据防伪溯源平台中,分别构建用于用户节点数据追溯处理的溯源模型、用于用户节点数据防伪处理的防伪模型、及用于将用户节点上传的数据溯源信息封装至带有时间戳数据区块的防伪溯源联盟链区块,其中,防伪溯源联盟链区块对数据进行封装中,利用混合加密算法分别对用户节点个人隐私信息和用户签名数据进行双重加密;所述溯源模型和防伪模型均用多元组表示,其中,溯源模型PIT=fp(M,D,T,C,S,I,E),防伪模型PAC=Fp(M,D,T,C,S,I,E,fp),其中,M代表数据生产者集合,D代表数据存储者集合,T代表传输者,C代表获取数据的用户节点集合,S代表数据交易平台,I代表区块链,E代表平台,fp代表所有不同要素之间及相同要素之间关联信息处理函数,PIT代表信息追溯结果,Fp为针对溯源模型中各个参与者和参与过程整合出合法传输记录满足条件关系的防伪处理函数;溯源模型及范围模型中,数据生产者对数据载体分配防伪溯源码并申请该数据载体的初始所有权,数据存储者对数据进行传输并记录当前节点转发和/或交易信息,用户节点通过扫描数据载体查询码来判断数据载体真伪;利用混合加密算法进行双重加密的过程中,首先,利用国密SM2加密算法作为公钥算法生成公私钥对,并对用户节点隐私信息进行加密;然后,结合国密SM3加密算法对节点公钥中联盟链区块地址进行哈希散列加密计算,生成用户签名信息;防伪溯源联盟链区块包含:区块头和区块体,其中,区块头中设置有时间戳、前一个区块哈希地址、默克尔根及当前区块链相关信息,区块体中设置有上传至区块链网络中经过验证的数据防伪溯源信息及相关交易数据;
检验被授权用户数据查询请求指令的合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息,其中,联盟链各节点对数据进行加解密中,利用证书颁发权威机构CA生成数字证书,利用数字证书模式对节点数据操作权限进行身份审查;利用QR码及S2i码技术融合数据载体特征信息共同加密转换生成用于数据载体标识的数据载体防伪溯源码,并将数据载体防伪溯源码放置于数据载体包装内;数据载体防伪溯源码生成中,通过设置计数器来限制利用防伪溯源码的查询次数。
2.一种基于区块链的数据分发共享系统,其特征在于,基于权利要求1所述的方法实现,包含:平台设置模块及数据查询模块,其中,
平台设置模块,用于基于智能合约构建数据防伪溯源平台,依据应用层用户不同角色设置相应用户节点并进行实例化,在联盟链网络中生成用户节点对应的智能合约,以执行联盟链各节点数据载体防伪溯源码扫描和/或身份认证和/或溯源信息加密上传服务;
数据查询模块,用于检验被授权用户数据查询请求指令的合法性,并通过解密操作获取被授权用户数据查询请求的共享数据信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110937572.2A CN113779594B (zh) | 2021-08-16 | 2021-08-16 | 基于区块链的数据分发共享方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110937572.2A CN113779594B (zh) | 2021-08-16 | 2021-08-16 | 基于区块链的数据分发共享方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113779594A CN113779594A (zh) | 2021-12-10 |
CN113779594B true CN113779594B (zh) | 2023-12-08 |
Family
ID=78837826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110937572.2A Active CN113779594B (zh) | 2021-08-16 | 2021-08-16 | 基于区块链的数据分发共享方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113779594B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114547677B (zh) * | 2022-01-29 | 2024-06-14 | 国网青海省电力公司电力科学研究院 | 一种多方电力部门协同用户隐私保护和溯源方法及系统 |
CN117478706B (zh) * | 2023-12-27 | 2024-03-08 | 西安捷成优禾智能科技有限公司 | 一种基于区块链的机加工平台数据共享系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108122159A (zh) * | 2017-12-22 | 2018-06-05 | 中链科技有限公司 | 一种基于区块链的保理信息处理方法及系统 |
CN108229627A (zh) * | 2017-12-25 | 2018-06-29 | 刘世洪 | 农产品质量安全全程溯源时空混合编码及编码方法 |
CN109377198A (zh) * | 2018-12-24 | 2019-02-22 | 上海金融期货信息技术有限公司 | 一种基于联盟链多方共识的签约系统 |
CN110175855A (zh) * | 2019-05-06 | 2019-08-27 | 江苏链路区块链技术有限公司 | 一种基于区块链的二维码防伪溯源实现方法 |
CN110969447A (zh) * | 2019-11-25 | 2020-04-07 | 江苏省农业科学院 | 一种基于区块链技术的产品深度溯源系统 |
CN112733204A (zh) * | 2021-01-16 | 2021-04-30 | 阳江市链点创新科技发展有限公司 | 一种基于区块链和多重签名技术的防伪溯源方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110807641A (zh) * | 2018-08-01 | 2020-02-18 | 隽名有限公司 | 宠物食品溯源系统 |
-
2021
- 2021-08-16 CN CN202110937572.2A patent/CN113779594B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108122159A (zh) * | 2017-12-22 | 2018-06-05 | 中链科技有限公司 | 一种基于区块链的保理信息处理方法及系统 |
CN108229627A (zh) * | 2017-12-25 | 2018-06-29 | 刘世洪 | 农产品质量安全全程溯源时空混合编码及编码方法 |
CN109377198A (zh) * | 2018-12-24 | 2019-02-22 | 上海金融期货信息技术有限公司 | 一种基于联盟链多方共识的签约系统 |
CN110175855A (zh) * | 2019-05-06 | 2019-08-27 | 江苏链路区块链技术有限公司 | 一种基于区块链的二维码防伪溯源实现方法 |
CN110969447A (zh) * | 2019-11-25 | 2020-04-07 | 江苏省农业科学院 | 一种基于区块链技术的产品深度溯源系统 |
CN112733204A (zh) * | 2021-01-16 | 2021-04-30 | 阳江市链点创新科技发展有限公司 | 一种基于区块链和多重签名技术的防伪溯源方法 |
Non-Patent Citations (1)
Title |
---|
混合云环境中多用户数据共享问题研究;吴继康;于徐红;;计算机应用研究(11);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113779594A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111008836B (zh) | 一种隐私安全转账支付方法、装置、系统及存储介质 | |
US10523443B1 (en) | Devices, methods, and systems for cryptographic authentication and provenance of physical assets | |
Ullah et al. | Elliptic Curve Cryptography; Applications, challenges, recent advances, and future trends: A comprehensive survey | |
CN113256290B (zh) | 去中心化加密通讯与交易系统 | |
CN101420300B (zh) | 双因子组合公钥生成和认证方法 | |
CN102098157B (zh) | 一种基于无证书公共密钥基础结构用于加强客户/服务器通讯协议安全性的系统和方法 | |
US8688973B2 (en) | Securing communications sent by a first user to a second user | |
CN1689297B (zh) | 使用密钥基防止未经授权分发和使用电子密钥的方法 | |
US20110173452A1 (en) | Method of generating compound type combined public key | |
CN107301521A (zh) | 一种基于区块链的仓单系统中加强仓单交易安全性的方法 | |
CN1922816B (zh) | 单向认证 | |
CN111211907A (zh) | 一种物流区块链的信息隐私保护与监管方法及系统 | |
EP1992101A2 (en) | Secure data transmission using undiscoverable or black data | |
CN104967693B (zh) | 面向云存储的基于全同态密码技术的文档相似度计算方法 | |
CN113779594B (zh) | 基于区块链的数据分发共享方法及系统 | |
CN107612680A (zh) | 一种移动网络支付中的国密算法 | |
CN110225028A (zh) | 一种分布式防伪系统及其方法 | |
Chernyi et al. | Security of electronic digital signature in maritime industry | |
Eldefrawy et al. | Banknote Validation through an Embedded RFID Chip and an NFC‐Enabled Smartphone | |
CN107465508A (zh) | 一种软硬件结合构造真随机数的方法、系统和设备 | |
Yang et al. | A privacy model for RFID tag ownership transfer | |
CN112235106B (zh) | 一种基于量子密钥的电子印章管理方法及系统 | |
CN107689867A (zh) | 一种在开放环境下的密钥保护方法和系统 | |
Du et al. | The applications of blockchain in the covert communication | |
CN1773906B (zh) | 一种用于身份真伪鉴别的幻方签名方法 |
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 |