CN112733204A - 一种基于区块链和多重签名技术的防伪溯源方法 - Google Patents
一种基于区块链和多重签名技术的防伪溯源方法 Download PDFInfo
- Publication number
- CN112733204A CN112733204A CN202110058650.1A CN202110058650A CN112733204A CN 112733204 A CN112733204 A CN 112733204A CN 202110058650 A CN202110058650 A CN 202110058650A CN 112733204 A CN112733204 A CN 112733204A
- Authority
- CN
- China
- Prior art keywords
- information
- node
- data
- 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.)
- Granted
Links
Images
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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
- G06F16/1837—Management specially adapted to peer-to-peer storage networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/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/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于区块链和多重签名技术的防伪溯源方法,属于防伪溯源技术领域。本发明针对传统溯源系统数据缺乏监管和中心数据库权限过大的问题,提出将溯源数据的特征值记录在区块链上,溯源信息上链必须由普通节点签名,并且由超级节点背书进行多重签名后才可以将溯源信息发送到存储系统,系统将溯源数据的特征值上链也加强了数据监管,防止数据被篡改。此外,针对现有溯源系统存储多媒体数据存储空间耗费过大的问题,本发明设计了新型多层级链上存储架构,溯源信息只需要在文件系统存储中保存一次,在节约系统存储空间的同时加强了对用户隐私的保护,区块链节点只需要保存溯源信息的特征值,溯源信息链上多节点共识使得数据不易被篡改。
Description
技术领域
本发明属于防伪溯源技术领域,尤其涉及一种基于区块链和多重签名技术的防伪溯源方法。
背景技术
追溯体系建设是采集记录产品生产、流通、消费等环节信息,实现来源可查、去向可追、责任可究,强化全过程质量安全管理与风险控制的有效措施。
传统溯源系统基本由市场上的各个核心企业构建并维护,而这会带来一系列问题。首先,由于记录主体的不同,溯源系统的标准和监管措施等不尽统一,必然会损害溯源的执行性、接受度、公信度。其次,由于掌握中心数据库的组织对系统数据进行操作的所有权限,更改或删除数据的成本并不高,数据的真实性和安全性也难以得到保证。如果企业生产中的某个环节出现问题,监管部门和消费者很难判断该企业是否为了不影响产品正常销售从而对该环节的生产信息和问题数据进行篡改。此外,以企业为单位,产品从生产到销售过程中的生产企业、运输企业和销售企业都可以看作利益共同体。因此,如果篡改传统溯源系统数据能够使产品销量增长、给企业带来盈利,那么上述企业的系统参与者在溯源系统中就有篡改数据的共同意愿,同时也缺乏相互监督。
区块链技术的出现为溯源系统的设计提供了新的思路,区块链技术目前受到各国战略性关注的革命性技术,它是一种集可靠存储、高安全性、不可篡改于一体的新兴技术。其链式结构、加密技术、不可篡改的时间戳特性可以保护已存储数据的完整性,同时确保溯源数据的来源和使用均可追溯。
传统的区块链溯源技术由节点直接由管理员将数据保存在区块链上,缺乏监管机制,存在管理员在数据上链过程中修改溯源数据的可能性。此外,由于溯源信息常婵常包含影像、图片、文字等多种格式的数据,直接在区块链上存储速度较慢;视频或者图片存储空间大,直接使用区块链节点每个节点都对多媒体数据进行保存需要耗费较大的存储空间。
针对上述问题,亟待一种新的防伪溯源方法,解决上述删改数据的缺陷和存储量大的问题。
发明内容
本发明提出一种基于区块链和多重签名技术的防伪溯源方法;针对传统溯源系统数据缺乏监管和中心数据库权限过大的问题,提出将溯源数据的特征值记录在区块链上,溯源信息上链必须由普通节点签名,并且由超级节点背书进行多重签名后才可以将溯源信息发送到存储系统,系统将溯源数据的特征值上链也加强了数据监管,防止数据被篡改。此外,针对现有溯源系统存储多媒体数据存储空间耗费过大的问题,提出了一种基于星际文件系统的多层级链上存储方法,设计了新型多层级链上存储架构。影像、图片、文字等多媒体溯源信息只需要在文件系统存储中保存一次,从而在节约系统存储空间的同时加强了对用户隐私的保护,区块链节点只需要保存溯源信息的特征值,溯源信息链上多节点共识使得数据不易被篡改。
本发明实施例是这样实现的,一种基于区块链和多重签名技术的防伪溯源方法,具体方法步骤如下:
A.基于多重签名的溯源信息上链方法
A1.生成密钥对:数字证书认证中心CA实现密钥初始化,包括生成第一层加密的超级节点公钥PKS=(IDS,Random1)和超级节点私钥SKS=(IDS,Hash(PKS)),以及第二层加密中的普通节点公钥PKN=(IDN,Random2)和普通节点私钥SKN=(IDN,Hash(PKN));
其中IDS为超级节点的ID,Random1为RSA算法产生超级节点公钥时生成的随机数,Hash(PKS)为由超级节点公钥PKS使用Hash函数加密算法SHA-256生成的Hash值;IDN为普通节点的ID,Random2为RSA算法产生普通节点公钥时生成的随机数,Hash(PKN)为由普通节点公钥PKN使用Hash函数加密算法SHA-256生成的Hash值;
A2.若系统中有多个超级节点和多个普通节点,则重复步骤A1,生成多重密钥对,否则跳转到步骤A3;
A3.多重签名:使用超级节点公钥PKS=(IDS,Random1)对待签名溯源信息M={m1,m2,…,mi}加密生成密文M’={m’1,m’2,…,m’i}(i=1,2,…,n),其中m’i代表对mi分组第一次加密后的结果,再使用普通节点公钥PKN=(IDN,Random2)加密生成M”={m”1,m”2,…,m”i}(i=1,2,…,n),其中m”i代表对mi分组第二次加密后的结果;其中mi表示需要分别加密的分组溯源信息;
A4.若系统中有多个超级节点和多个普通节点,则重复步骤A3,对消息执行多次签名,否则跳转到步骤A5;
A5.消息验证:存储系统节点在数字证书认证中心CA获取普通节点N的私钥SKN=(IDN,Hash(PKN)),从数字证书认证中心CA获取普通节点N的公钥,对消息M”签名验证,并得到结果M’;根据超级节点私钥SKS=(IDS,Hash(PKS)),从数字证书认证中心CA获取超级节点的公钥,并对消息M’进行验证;
A6.若系统中有多个超级节点和多个普通节点,则重复步骤A5,对消息执行多次签名验证;有效信息验证签名通过后,将溯源信息M发送到溯源信息存储系统接口;
B.基于星际文件系统的多层级链上存储:溯源信息M发送到溯源信息存储系统接口后,对溯源信息M基于星际文件系统进行存储。
步骤A1中所述的超级节点由政府、监管部门、质检部门中的一个或多个构成超级节点;本发明的溯源过程中,由超级节点执行的监管是必不可少的一环;本发明将节点分为超级节点和普通节点,采用多重签名机制;溯源信息上链必须由普通节点签名,并且有超级节点背书进行多重签名才可以将溯源信息发送到存储系统。
步骤A1中所述的普通节点由生产者、物流平台、仓储平台、消费者中的一个或多个构成普通节点。
步骤A3中所述M为待签名溯源信息,对溯源信息M进行分组M={m1,m2,…,mi},(i=1,2,…n);其中mi表示需要分别加密的分组溯源信息;数字证书认证中心CA(Certification Authorith)生成非对称秘钥对,对每一个分组加密;加密后的溯源消息集合构成密文消息集合。
步骤A6中所述验证签名通过,具体内容为:
基于多重签名的溯源信息上链方法是一种多重非对称加密算法,假设有n个签名者,验证者至少收到m个签名(其中n≥m≥1),才认为签名有效消息验证通过,其中n和m是由系统定义的参数。
步骤B中基于星际文件系统的多层级链上存储:
所述星际文件系统是一种包含映射功能的分布式文件系统,所述分布式文件系统可以将文件分成相同大小的若干块,再计算各块的组合从而构建文件的检索表,这样可以实现将文件块分布式存放在不同服务器集群的目的;实现永久的、去中心化保存和共享文件,通过文件内容生成独立哈希值来标识文件,相同内容的文件在系统中只会存在一份。
所述基于星际文件系统的多层级链上存储的架构分为三层,分别为数据层、业务层、接口层,各层的功能如下:
1)数据层包含IPFS云存储集群和区块链共识节点,所述IPFS云存储集群用来存储溯源数据信息,所述区块链共识节点仅仅保存溯源数据信息的Hash特征值,这样可以极大提升区块链系统的共识速度,减少多媒体溯源数据冗余;
2)业务层主要实现溯源信息的可靠存储功能,并预留了智能合约接口;业务层接收接口层发送的数据访问请求,并向数据层中的节点发送查询数据的指令;业务层包含对用户访问数据的权限控制,对用户CA证书身份的鉴定,溯源信息的统一格式处理功能;通过智能合约模块,通过自定义合约实现数据的查询,数据上链的功能,并预留定制化开发的合约接口;
3)接口层包含溯源信息管理系统和用户访问接口,提供用户的溯源数据存储接口、查询接口、删除接口等与用户交互的数据接口,并把接口获取的数据发送到业务层,由业务层对数据进行处理。
步骤1)中所述溯源数据信息包含图片、视频、文件等多种格式中的一种或多种的数据信息。
步骤B中基于星际文件系统的多层级链上存储,具体步骤如下:
B1:溯源信息M发送到溯源信息存储系统接口后,接口层封装请求并向业务层发起添加溯源信息的请求Radd,添加溯源信息的请求Radd包含溯源记录信息与签名信息;
B2:业务层收到添加信息的请求Radd后,首先根据公钥Rpk验证签名以核实数据发送者的身份,若签名验证通过,则生成添加记录请求RIPFS和RBC,并发送RIPFS消息给星际文件系统存储节点IPFSP,同时发送RBC消息到区块链共识节点;
B3:星际文件系统存储节点收到RIPFS消息后,查询区块链共识节点,检索是否存在发起请求节点编号为IDN,且签名时间为t2的消息;若检索成功,则说明溯源信息记录已经同时保存在星际文件系统存储节点IPFSP和区块链共识节点上,添加溯源记录成功,并向业务层发送保存信息成功的通知;若星际文件系统存储节点没有检索到节点编号为IDN,且签名时间为t2的消息,在周期T后重新检索,若连续n个周期都没有检索到,则认为添加溯源记录失败,向业务层发送保存信息失败的通知,其中T和n由系统管理员根据实际情况设定。
步骤B1中所述加溯源信息的请求Radd,具体如下:
Radd=AddMsg//SigRSK(H(AddMsg));
其中,AddMsg={IDR,IPFSp,MR,Rpk,t1},包含发起请求节点R的编号IDR,星际文件系统存储节点IPFSP,图文信息溯源记录MR,发起请求节点R的公钥Rpk,发起请求的时间t1,为了防止请求的内容被篡改,将使用发起请求节点R私钥Rsk进行签名。
步骤B2中所述所述添加记录请求RIPFS和RBC,就具体为:
RIPFS={IDN,MR,t2};
RBC={IDN,Hash(Radd),t2};
其中RIPFS为包含图片、视频、文件中一种或多种格式的多媒体溯源数据信息,RBC是溯源数据信息的Hash特征值信息,星际文件系统存储节点和区块链节点分别保存不同类型的信息,这样可以极大提升区块链系统的共识速度,减少多媒体溯源数据冗余。
本发明中区块链节点只需要保存溯源信息的Hash值,而无需保存包含文字、图片、视频等信息的完整溯源信息,减少了多媒体溯源数据冗余;星际文件系统存储节点IPFSP保存完整的溯源信息,并实现区块链节点特征Hash值信息与星际文件系统存储节点IPFSP的信息对应,使得溯源信息多方共识不易篡改。
本发明的基于区块链和多重签名技术的防伪溯源方法,采用基于星际文件系统的多层级链上存储架构,将IPFS与区块链技术相结合,溯源信息保存在IPFS云存储集群,同时把溯源信息的特征值信息保存在区块链共识节点集群。
与现有技术相比,本发明的技术方案的有意效果如下:
(1)本发明的基于区块链和多重签名技术的防伪溯源方法,采用基于多重签名的溯源信息上链方法,针对传统溯源系统数据缺乏监管和中心数据库权限过大的问题,提出将溯源数据的特征值记录在区块链上,溯源信息上链必须由普通节点签名,并且由超级节点背书进行多重签名后才可以将溯源信息发送到存储系统。系统将溯源数据的特征值上链也加强了数据监管,防止数据被篡改。
(2)本发明的基于区块链和多重签名技术的防伪溯源方法,在数据存储阶段采用基于星际文件系统的多层级链上存储的技术,设计了新型多层级链上存储架构,影像、图片、文字等多媒体溯源信息只需要在星际文件系统存储中保存一次,从而在节约系统存储空间的同时加强了对用户隐私的保护,区块链节点只需要保存溯源信息的特征值,溯源信息链上多节点共识使得数据不易被篡改。
附图说明
图1是本发明中基于星际文件系统的多层级链上存储的架构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,若本发明实施例中有涉及方向性指示(诸如上、下、左、右、前、后、顶、底……),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
在本申请中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。
另外,若本发明实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
传统的溯源方法存在两个比较显著的缺陷:
(1)传统的溯源信息管理系统往往采用中心化管理,通过搭建自己的溯源信息管理系统集中存储数据,但是这种模式在数据传输的过程中数据很容易遭受篡改或丢失,用户也可能对溯源信息是否被篡改产生质疑。
针对上述问题,本发明提出一种基于区块链和多重签名技术的防伪溯源方法,针对传统溯源系统数据缺乏监管和中心数据库权限过大的问题,提出将溯源数据的特征值记录在区块链上,溯源信息上链必须由普通节点签名,并且由超级节点背书进行多重签名后才可以将溯源信息发送到存储系统;系统将溯源数据的特征值上链也加强了数据监管,防止数据被篡改。
(2)溯源信息由于包含影像、图片、文字等多种格式的数据,直接在区块链上存储速度较慢;视频或者图片存储空间大,直接使用区块链节点每个节点都对多媒体数据进行保存需要耗费较大的存储空间,且存在节点泄露用户数据的风险,系统可扩展性差。
针对上述问题,本发明提出的基于区块链和多重签名技术的防伪溯源方法,采用基于星际文件系统的多层级链上存储方法,通过新型多层级链上存储架构,影像、图片、文字等多媒体溯源信息只需要在星际文件系统存储中保存一次,从而在节约系统存储空间的同时加强了对用户隐私的保护,区块链节点只需要保存溯源信息的特征值,溯源信息链上多节点共识使得数据不易被篡改。
本发明提出一种基于区块链和多重签名技术的防伪溯源方法,采用多重签名、星际文件系统,数字证书认证中心等多种技术对溯源信息进行加密存储,将数据分散存储在不同节点上,单一节点只保存部分加密后的溯源信息,从而提升了系统的可扩展性,提升了溯源多媒体数据的存储资源利用效率。此外,系统将溯源数据的特征值记录在区块链上,溯源信息上链必须由普通节点签名,并且有超级节点背书进行多重签名后才可以将溯源信息发送到存储系统,加强了数据监管,防止数据被篡改。
一种基于区块链和多重签名技术的防伪溯源方法,具体方法步骤如下:
A.基于多重签名的溯源信息上链方法
传统的溯源信息由节点负责上传,节点权限过大有可能伪造溯源信息,因此溯源的过程中,监管是必不可少的一环;本发明将节点分为超级节点和普通节点,采用多重签名机制;由政府、监管部门、质检部门等构成超级节点,生产者、物流平台、仓储平台、消费者等构成普通节点。溯源信息上链必须由普通节点签名,并且有超级节点背书进行多重签名才可以将溯源信息发送到存储系统。
基于多重签名的溯源信息上链方法是一种多重非对称加密算法,假设有n个签名者,验证者至少收到m个签名(n≥m≥1),才设为签名有效,在专利设计的基于区块链和多种签名技术的防伪溯源系统中,为了使得普通节点上传的信息被超级节点监管,至少需要1个普通节点和1个超级节点授权才能实现溯源信息的上链;溯源信息由普通节点生成并发送给超级节点审核,审核通过后由超级节点进行背书;
本专利中M是待签名溯源信息,首先对溯源信息M进行分组M={m1,m2,…,mi},(i=1,2,…n);其中mi表示需要分别加密的分组溯源信息;数字证书认证中心CA(Certification Authorith)生成非对称秘钥对,对每一个分组加密;加密后的溯源消息集合构成密文消息集合,存储系统节点在数字证书认证中心CA获取对应秘钥,并使用私钥进行签名验证,若验证通过则允许溯源信息M在区块链存储系统上被记录,详细步骤如下:
A1.生成密钥对:数字证书认证中心CA实现密钥初始化,包括生成第一层加密的超级节点公钥PKS=(IDS,Random1)和超级节点私钥SKS=(IDS,Hash(PKS)),以及第二层加密中的普通节点公钥PKN=(IDN,Random2)和普通节点私钥SKN=(IDN,Hash(PKN));
其中IDS为超级节点的ID,Random1为RSA算法产生超级节点公钥时生成的随机数,Hash(PKS)为由超级节点公钥PKS使用Hash函数加密算法SHA-256生成的Hash值;IDN为普通节点的ID,Random2为RSA算法产生普通节点公钥时生成的随机数,Hash(PKN)为由普通节点公钥PKN使用Hash函数加密算法SHA-256生成的Hash值;
A2.若系统中有多个超级节点和多个普通节点,则重复步骤A1,生成多重密钥对,否则跳转到步骤A3;
A3.多重签名:使用超级节点公钥PKS=(IDS,Random1)对待签名溯源信息M={m1,m2,…,mi}加密生成密文M’={m’1,m’2,…,m’i}(i=1,2,…,n),其中m’i代表对mi分组第一次加密后的结果,再使用普通节点公钥PKN=(IDN,Random2)加密生成M”={m”1,m”2,…,m”i}(i=1,2,…,n),其中m”i代表对mi分组第二次加密后的结果;其中mi表示需要分别加密的分组溯源信息;
A4.若系统中有多个超级节点和多个普通节点,则重复步骤2,对消息执行多次签名,否则跳转到步骤A5;
A5.消息验证:存储系统节点在数字证书认证中心CA获取普通节点N的私钥SKN=(IDN,Hash(PKN)),从数字证书认证中心CA获取普通节点N的公钥,对消息M”签名验证,并得到结果M’;根据超级节点私钥SKS=(IDS,Hash(PKS)),从数字证书认证中心CA获取超级节点的公钥,并对消息M’进行验证;
A6.若系统中有多个超级节点和多个普通节点,则重复步骤A5,对消息执行多次签名验证;有效信息验证签名通过后,则认为该消息是经过合法多重签名的溯源信息,将溯源信息M发送到溯源信息存储系统接口。
步骤A6中所述验证签名通过,具体内容为:
基于多重签名的溯源信息上链方法是一种多重非对称加密算法,假设有n个签名者,验证者至少收到m个签名(其中n≥m≥1),才认为签名有效消息验证通过,其中n和m是由系统定义的参数。
B.基于星际文件系统的多层级链上存储方法
溯源信息M发送到溯源信息存储系统接口后,需要对溯源信息进行存储;然而,溯源信息由于包含影像、图片、文字等多种格式的数据,直接在区块链上存储速度较慢;视频或者图片存储空间大,直接使用区块链节点每个节点都对多媒体数据进行保存需要耗费较大的存储空间,系统可扩展性差。
本发明提出了一种基于星际文件系统的多层级链上存储方法,设计了多层级链上存储架构,存储架构分为数据层、业务层、接口层三层,包含身份鉴定、智能合约数据分布式存储等多种功能,并使用IPFS(InterPlanetary File System,星际文件系统)实现永久的、去中心化保存和共享文件,通过文件内容生成独立哈希值来标识文件,相同内容的文件在系统中只会存在一份,既节约了系统存储空间,又加强了对溯源信息的保护。
星际文件系统是一种包含映射功能的分布式文件系统,它可以将文件分成相同大小的若干块,再计算各块的组合从而构建文件的检索表,这样可以实现将文件块分布式存放在不同服务器集群的目的。实现永久的、去中心化保存和共享文件,通过文件内容生成独立哈希值来标识文件,相同内容的文件在系统中只会存在一份。
本发明的基于区块链和多重签名技术的防伪溯源方法,采用基于星际文件系统的多层级链上存储架构,将IPFS与区块链技术相结合,溯源信息保存在IPFS云存储集群,同时把溯源信息的特征值信息保存在区块链共识节点集群。基于星际文件系统的多层级链上存储架构分为三层,分别为数据层、业务层、接口层,各层的功能如下:
1)数据层包含IPFS云存储集群和区块链共识节点,IPFS云存储集群用来存储溯源数据信息,这些溯源数据信息包含图片、视频、文件等多种格式中的一种或多种的数据信息;区块链共识节点仅仅保存溯源数据信息的Hash特征值,这样可以极大提升区块链系统的共识速度,减少多媒体溯源数据冗余;
2)业务层主要实现溯源信息的可靠存储功能,并预留了智能合约接口;业务层接收接口层发送的数据访问请求,并向数据层中的节点发送查询数据的指令;业务层包含对用户访问数据的权限控制,对用户CA证书身份的鉴定,溯源信息的统一格式处理功能;通过智能合约模块,可以通过自定义合约实现数据的查询,数据上链等功能,并预留定制化开发的合约接口;
3)接口层包含溯源信息管理系统和用户访问接口,提供用户的溯源数据存储接口、删除接口、查询接口等与用户交互的数据接口,并把接口获取的数据发送到业务层,由业务层对数据进行处理。
基于星际文件系统的多层级链上存储架构如图1所述。
步骤B中基于星际文件系统的多层级链上存储,具体步骤如下:
B1:溯源信息M发送到溯源信息存储系统接口后,接口层封装请求并向业务层发起添加溯源信息的请求Radd,添加溯源信息的请求Radd包含溯源记录信息与签名信息;
Radd=AddMsg//SigRSK(H(AddMsg));
其中,AddMsg={IDR,IPFSp,MR,Rpk,t1},包含发起请求节点R的编号IDR,星际文件系统存储节点IPFSP,图文信息溯源记录MR,发起请求节点R的公钥Rpk,发起请求的时间t1,为了防止请求的内容被篡改,将使用发起请求节点R私钥Rsk进行签名。
B2:业务层收到添加信息的请求Radd后,首先根据公钥Rpk验证签名以核实数据发送者的身份,若签名验证通过,则生成添加记录请求RIPFS和RBC,并发送RIPFS消息给星际文件系统存储节点IPFSP,同时发送RBC消息到区块链共识节点;其中添加记录请求可表示为:
RIPFS={IDN,MR,t2};
RBC={IDN,Hash(Radd),t2};
其中RIPFS为包含图片、视频、文件中一种或多种格式的多媒体溯源数据信息,RBC是溯源数据信息的Hash特征值信息,星际文件系统存储节点和区块链节点分别保存不同类型的信息,这样可以极大提升区块链系统的共识速度,减少多媒体溯源数据冗余。
B3:星际文件系统存储节点收到RIPFS消息后,查询区块链共识节点,检索是否存在发起请求节点编号为IDN,且签名时间为t2的消息;若检索成功,则说明溯源信息记录已经同时保存在星际文件系统存储节点IPFSP和区块链共识节点上,添加溯源记录成功,并向业务层发送保存信息成功的通知;若星际文件系统存储节点没有检索到节点编号为IDN,且签名时间为t2的消息,在周期T后重新检索,若连续n个周期都没有检索到,则认为添加溯源记录失败,向业务层发送保存信息失败的通知,其中T和n由系统管理员根据实际情况设定。
区块链节点只需要保存溯源信息的Hash值,而无需保存包含文字、图片、视频等信息的完整溯源信息,减少了多媒体溯源数据冗余;星际文件系统存储节点IPFSP保存完整的溯源信息,并实现区块链节点特征Hash值信息与星际文件系统存储节点IPFSP的信息对应,使得溯源信息多方共识不易篡改。
相比于现有的区块链溯源方法,针对溯源系统数据缺乏监管和中心数据库权限过大的问题,本发明通过区块链技术与多重签名、星际文件系统,数字证书认证中心等多种技术的融合,设计了新型溯源信息上链与存储方法。在溯源过程中引入了普通节点上传,超级节点背书监管机制,提升了溯源信息的可靠性与可监管性。
在数据存储阶段,设计了基于星际文件系统的多层级链上存储架构,多媒体溯源信息保存在星际文件系统存储节点云存储集群,同时把溯源信息的特征值信息保存在区块链共识节点集群,节约了系统存储空间的同时加强了对用户隐私的保护。
与现有技术相比,本发明的技术方案的有意效果如下:
(1)传统的溯源信息管理系统往往采用中心化管理,通过搭建自己的溯源信息管理系统集中存储数据,但是这种模式在数据传输的过程中数据很容易遭受篡改或丢失,用户也可能对溯源信息是否被篡改产生质疑。
针对上述问题,本发明的基于区块链和多重签名技术的防伪溯源方法,采用基于多重签名的溯源信息上链方法,针对传统溯源系统数据缺乏监管和中心数据库权限过大的问题,提出将溯源数据的特征值记录在区块链上,溯源信息上链必须由普通节点签名,并且由超级节点背书进行多重签名后才可以将溯源信息发送到存储系统。系统将溯源数据的特征值上链也加强了数据监管,防止数据被篡改。
(2)溯源信息由于包含影像、图片、文字等多种格式的数据,直接在区块链上存储速度较慢;视频或者图片存储空间大,直接使用区块链节点每个节点都对多媒体数据进行保存需要耗费较大的存储空间,且存在节点泄露用户数据的风险,系统可扩展性差。
针对上述问题,本发明的基于区块链和多重签名技术的防伪溯源方法,在数据存储阶段采用基于星际文件系统的多层级链上存储的技术,设计了新型多层级链上存储架构,影像、图片、文字等多媒体溯源信息只需要在星际文件系统存储中保存一次,从而在节约系统存储空间的同时加强了对用户隐私的保护,区块链节点只需要保存溯源信息的特征值,溯源信息链上多节点共识使得数据不易被篡改。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于区块链和多重签名技术的防伪溯源方法,其特征在于:具体方法步骤如下:
A.基于多重签名的溯源信息上链方法
A1.生成密钥对:数字证书认证中心CA实现密钥初始化,包括生成第一层加密的超级节点公钥PKS=(IDS,Random1)和超级节点私钥SKS=(IDS,Hash(PKS)),以及第二层加密中的普通节点公钥PKN=(IDN,Random2)和普通节点私钥SKN=(IDN,Hash(PKN));
其中IDS为超级节点的ID,Random1为RSA算法产生超级节点公钥时生成的随机数,Hash(PKS)为由超级节点公钥PKS使用Hash函数加密算法SHA-256生成的Hash值;IDN为普通节点的ID,Random2为RSA算法产生普通节点公钥时生成的随机数,Hash(PKN)为由普通节点公钥PKN使用Hash函数加密算法SHA-256生成的Hash值;
A2.若系统中有多个超级节点和多个普通节点,则重复步骤A1,生成多重密钥对,否则跳转到步骤A3;
A3.多重签名:使用超级节点公钥PKS=(IDS,Random1)对待签名溯源信息M={m1,m2,…,mi}加密生成密文M’={m’1,m’2,…,m’i}(i=1,2,…,n),其中m’i代表对mi分组第一次加密后的结果,再使用普通节点公钥PKN=(IDN,Random2)加密生成M”={m”1,m”2,…,m”i}(i=1,2,…,n),其中m”i代表对mi分组第二次加密后的结果;其中mi表示需要分别加密的分组溯源信息;
A4.若系统中有多个超级节点和多个普通节点,则重复步骤A3,对消息执行多次签名,否则跳转到步骤A5;
A5.消息验证:存储系统节点在数字证书认证中心CA获取普通节点N的私钥SKN=(IDN,Hash(PKN)),从数字证书认证中心CA获取普通节点N的公钥,对消息M”签名验证,并得到结果M’;根据超级节点私钥SKS=(IDS,Hash(PKS)),从数字证书认证中心CA获取超级节点的公钥,并对消息M’进行验证;
A6.若系统中有多个超级节点和多个普通节点,则重复步骤A5,对消息执行多次签名验证;有效信息验证签名通过后,将溯源信息M发送到溯源信息存储系统接口;
B.基于星际文件系统的多层级链上存储:溯源信息M发送到溯源信息存储系统接口后,对溯源信息M基于星际文件系统进行存储。
2.根据权利要求1所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤A1中所述的超级节点由政府、监管部门、质检部门中的一个或多个构成超级节点;
步骤A1中所述的普通节点由生产者、物流平台、仓储平台、消费者中的一个或多个构成普通节点。
3.根据权利要求1所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤A3中所述M为待签名溯源信息,对溯源信息M进行分组M={m1,m2,…,mi},(i=1,2,…n);其中mi表示需要分别加密的分组溯源信息;数字证书认证中心CA生成非对称秘钥对,对每一个分组加密;加密后的溯源消息集合构成密文消息集合。
4.根据权利要求1所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤A6中所述验证签名通过,具体内容为:
基于多重签名的溯源信息上链方法是一种多重非对称加密算法,假设有n个签名者,验证者至少收到m个签名,才认为签名有效消息验证通过,其中n≥m≥1,并且n和m是由系统定义的参数。
5.根据权利要求1所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤B中所述星际文件系统为一种包含映射功能的分布式文件系统,所述分布式文件系统可以将文件分成相同大小的若干块,再计算各块的组合从而构建文件的检索表,这样可以实现将文件块分布式存放在不同服务器集群的目的;实现永久的、去中心化保存和共享文件,通过文件内容生成独立哈希值来标识文件,相同内容的文件在系统中只会存在一份。
6.根据权利要求1所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤B中所述基于星际文件系统的多层级链上存储的架构分为三层,分别为数据层、业务层、接口层,各层的功能如下:
1)数据层包含IPFS云存储集群和区块链共识节点,所述IPFS云存储集群用来存储溯源数据信息,所述区块链共识节点仅仅保存溯源数据信息的Hash特征值,这样可以极大提升区块链系统的共识速度,减少多媒体溯源数据冗余;
2)业务层主要实现溯源信息的可靠存储功能,并预留了智能合约接口;业务层接收接口层发送的数据访问请求,并向数据层中的节点发送查询数据的指令;业务层包含对用户访问数据的权限控制,对用户CA证书身份的鉴定,溯源信息的统一格式处理功能;通过智能合约模块,通过自定义合约实现数据的查询,数据上链的功能,并预留定制化开发的合约接口;
3)接口层包含溯源信息管理系统和用户访问接口,提供用户的溯源数据存储接口、查询接口、删除接口等与用户交互的数据接口,并把接口获取的数据发送到业务层,由业务层对数据进行处理。
7.根据权利要求1所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤B中基于星际文件系统的多层级链上存储,具体步骤如下:
B1:溯源信息M发送到溯源信息存储系统接口后,接口层封装请求并向业务层发起添加溯源信息的请求Radd,添加溯源信息的请求Radd包含溯源记录信息与签名信息;
B2:业务层收到添加信息的请求Radd后,首先根据公钥Rpk验证签名以核实数据发送者的身份,若签名验证通过,则生成添加记录请求RIPFS和RBC,并发送RIPFS消息给星际文件系统存储节点IPFSP,同时发送RBC消息到区块链共识节点;
B3:星际文件系统存储节点收到RIPFS消息后,查询区块链共识节点,检索是否存在发起请求节点编号为IDN,且签名时间为t2的消息;若检索成功,则说明溯源信息记录已经同时保存在星际文件系统存储节点IPFSP和区块链共识节点上,添加溯源记录成功,并向业务层发送保存信息成功的通知;若星际文件系统存储节点没有检索到节点编号为IDN,且签名时间为t2的消息,在周期T后重新检索,若连续n个周期都没有检索到,则认为添加溯源记录失败,向业务层发送保存信息失败的通知,其中T和n由系统管理员根据实际情况设定。
8.根据权利要求7所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤B1中所述加溯源信息的请求Radd,具体如下:
Radd=AddMsg//SigRSK(H(AddMsg));
其中,AddMsg={IDR,IPFSp,MR,Rpk,t1},包含发起请求节点R的编号IDR,星际文件系统存储节点IPFSP,图文信息溯源记录MR,发起请求节点R的公钥Rpk,发起请求的时间t1,为了防止请求的内容被篡改,将使用发起请求节点R私钥Rsk进行签名。
9.根据权利要求7所述的基于区块链和多重签名技术的防伪溯源方法,其特征在于:步骤B2中所述所述添加记录请求RIPFS和RBC,就具体为:
RIPFS={IDN,MR,t2};
RBC={IDN,Hash(Radd),t2};
其中RIPFS为包含图片、视频、文件中一种或多种格式的多媒体溯源数据信息,RBC是溯源数据信息的Hash特征值信息,星际文件系统存储节点和区块链节点分别保存不同类型的信息,这样可以极大提升区块链系统的共识速度,减少多媒体溯源数据冗余。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110058650.1A CN112733204B (zh) | 2021-01-16 | 2021-01-16 | 一种基于区块链和多重签名技术的防伪溯源方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110058650.1A CN112733204B (zh) | 2021-01-16 | 2021-01-16 | 一种基于区块链和多重签名技术的防伪溯源方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112733204A true CN112733204A (zh) | 2021-04-30 |
CN112733204B CN112733204B (zh) | 2023-01-20 |
Family
ID=75591887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110058650.1A Active CN112733204B (zh) | 2021-01-16 | 2021-01-16 | 一种基于区块链和多重签名技术的防伪溯源方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112733204B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113781070A (zh) * | 2021-09-15 | 2021-12-10 | 陈梅 | 一种基于区块链的防伪产品溯源方法和系统 |
CN113779594A (zh) * | 2021-08-16 | 2021-12-10 | 中国人民解放军战略支援部队信息工程大学 | 基于区块链的数据分发共享方法及系统 |
CN114386098A (zh) * | 2021-12-31 | 2022-04-22 | 江苏任务网络科技有限公司 | 一种大数据存储与溯源系统 |
CN115760150A (zh) * | 2022-10-26 | 2023-03-07 | 北京路创蓝图科技有限责任公司 | 一种基于区块链的多源空间数据产业链溯源系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108428141A (zh) * | 2018-03-15 | 2018-08-21 | 华中农业大学 | 一种基于erp系统与区块链的食品溯源信息管理系统 |
US10102265B1 (en) * | 2017-04-12 | 2018-10-16 | Vijay K. Madisetti | Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing |
WO2019232789A1 (zh) * | 2018-06-08 | 2019-12-12 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
US20200137082A1 (en) * | 2017-04-18 | 2020-04-30 | nChain Holdings Limited | Secure blockchain-based consensus |
CN111681015A (zh) * | 2020-06-10 | 2020-09-18 | 复旦大学 | 基于联盟链的产品溯源方法、系统及设备 |
US10790976B1 (en) * | 2018-08-01 | 2020-09-29 | Bloomio Ag | System and method of blockchain wallet recovery |
US20200327100A1 (en) * | 2019-04-09 | 2020-10-15 | International Business Machines Corporation | Information management and access control in a database |
CN112115098A (zh) * | 2020-08-07 | 2020-12-22 | 北京工业大学 | 一种基于HyperLedger和IPFS的溯源系统 |
-
2021
- 2021-01-16 CN CN202110058650.1A patent/CN112733204B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10102265B1 (en) * | 2017-04-12 | 2018-10-16 | Vijay K. Madisetti | Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing |
US20200137082A1 (en) * | 2017-04-18 | 2020-04-30 | nChain Holdings Limited | Secure blockchain-based consensus |
CN108428141A (zh) * | 2018-03-15 | 2018-08-21 | 华中农业大学 | 一种基于erp系统与区块链的食品溯源信息管理系统 |
WO2019232789A1 (zh) * | 2018-06-08 | 2019-12-12 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
US10790976B1 (en) * | 2018-08-01 | 2020-09-29 | Bloomio Ag | System and method of blockchain wallet recovery |
US20200327100A1 (en) * | 2019-04-09 | 2020-10-15 | International Business Machines Corporation | Information management and access control in a database |
CN111681015A (zh) * | 2020-06-10 | 2020-09-18 | 复旦大学 | 基于联盟链的产品溯源方法、系统及设备 |
CN112115098A (zh) * | 2020-08-07 | 2020-12-22 | 北京工业大学 | 一种基于HyperLedger和IPFS的溯源系统 |
Non-Patent Citations (4)
Title |
---|
刘家稷等: "使用双区块链的防伪溯源系统", 《信息安全学报》 * |
欧阳丽炜等: "基于区块链的传染病监测与预警技术", 《智能科学与技术学报》 * |
王翔: "健康大数据平台的"区块链治理"", 《网络空间安全》 * |
郭媛媛等: "跨境贸易区块链溯源数据上链方式研究", 《数字通信世界》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113779594A (zh) * | 2021-08-16 | 2021-12-10 | 中国人民解放军战略支援部队信息工程大学 | 基于区块链的数据分发共享方法及系统 |
CN113779594B (zh) * | 2021-08-16 | 2023-12-08 | 中国人民解放军战略支援部队信息工程大学 | 基于区块链的数据分发共享方法及系统 |
CN113781070A (zh) * | 2021-09-15 | 2021-12-10 | 陈梅 | 一种基于区块链的防伪产品溯源方法和系统 |
CN114386098A (zh) * | 2021-12-31 | 2022-04-22 | 江苏任务网络科技有限公司 | 一种大数据存储与溯源系统 |
CN114386098B (zh) * | 2021-12-31 | 2024-05-03 | 江苏大道云隐科技有限公司 | 一种大数据存储与溯源系统 |
CN115760150A (zh) * | 2022-10-26 | 2023-03-07 | 北京路创蓝图科技有限责任公司 | 一种基于区块链的多源空间数据产业链溯源系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112733204B (zh) | 2023-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112733204B (zh) | 一种基于区块链和多重签名技术的防伪溯源方法 | |
CN115210741B (zh) | 部分有序的区块链 | |
US11949691B2 (en) | Malicious peer identification | |
US11394556B2 (en) | Blockchain-enabled computing | |
US11201726B2 (en) | Multi-layered image encoding for data block | |
US11775556B2 (en) | Faster view change for blockchain | |
CN111177172A (zh) | 一种基于区块链的电子存证系统 | |
JP2023501152A (ja) | 許可型ブロックチェーンのためのランダムなノード選択 | |
US11838400B2 (en) | Image encoding for blockchain | |
JP2023504492A (ja) | データ・オブジェクトの効率的しきい値ストレージ | |
She et al. | A double steganography model combining blockchain and interplanetary file system | |
CN111881109B (zh) | 数据库可合并分类账 | |
CN110879809A (zh) | 一种基于区块链的司法数据存证方法 | |
US20220329411A1 (en) | Blockchain processing offload to network device | |
CN114450708A (zh) | 基于现有链码的链码推荐 | |
JP2023524715A (ja) | ネットワーク間の識別情報プロビジョニング | |
US20230208638A1 (en) | Future asset reclamation via blockchain | |
US11856092B2 (en) | Limiting data availability on distributed ledger | |
US11847234B2 (en) | Verifiable training of model in untrusted environment | |
CA3180249A1 (en) | Permissioned eventing in a decentralized database | |
CN116304265A (zh) | 一种基于区块链的电子档案管理方法及系统 | |
US20230208640A1 (en) | Selective audit process for privacy-preserving blockchain | |
WO2022057451A1 (en) | Threshold encryption for broadcast content | |
Meng et al. | A blockchain-based long-term time-stamping scheme | |
Shen et al. | SpyStorage: A highly reliable multi-cloud storage with secure and anonymous data sharing |
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 |