论文结合供应链的交易环境,分析了现有供应链上交易信息溯源查询方式的不足,对供应链上溯源查询存在的关键问题及缺陷提出解决方案并进行实现。本文采用了区块链技术,将供应链上的交易角色作为该网络中的节点。这些节点之间共同维护整个网络当中的交易,当有人进行篡改时,其他节点会根据自身存储的交易信息,对其篡改提出质疑,不会造成类似传统中心化模式对信息进行更改之后,所有人无从所知,接收到的只能是由中央数据库发出的交易信息。本文根据区块链的去中心化、防篡改等技术特点对供应链上的可信溯源问题提出了解决方案并进行实现。��
区块链分为三个层次结构,在区块链底层的P2P网络中,每个交易角色在该网络中注册成为共识节点,角色之间在该网络中进行交易,并对交易及区块进行验证;存储层中每个交易节点存储该链上的经过验证的区块信息;最终应用层提供交互接口,对经过验证且不可篡改的交易信息进行查询,从而达到溯源结果的真实可信性。完全去中心化的节点间共同维护整个链上的信息,无需信任彼此也能可靠交易。��
关键词:区块链;去中心化;不可篡改;可信溯源查询;供应链管理系统
供应链
- 供应链管理就是通过整合供应商、生产商、销售商等各供应链上的众多环节当中,减少供应链的成本,促使物流和交易信息的交换,以达到在正确的时间及正确的地点,生产以及配送适当数量的正确商品,提高企业的总体效益。��
- 企业的供应链包括企业之间以及企业内部的供应链
区块链技术
- 使用随机散列的方法并对全部的交易加上时间戳
- 对于U2来说,对U1通过U2公钥发给U2的使用U1私钥进行签名的先前的交易信息,使用U1的公钥进行验证
- 以及U1与U2的交易信息来确认U1的身份,然后对交易信息进行重新整合,使用U2的私钥对重新整合的交易信息以及对U2与U3的交易信息进行签署一个随机散列的数字签名之后
- 并将此签名通过U3的公钥发送给U3,U3按照U2的方式再次进行验证等处理。如此一来区块包含的交易信息就产生了。��
-
对于存储的历史交易数据可以通过剪枝进而实现硬盘空间回收,经过中本聪的预测计算,经过完全剪枝的区块链一年只生成4.2MB的数据量。��
-
区块链交易加密
私钥经过运算可以产生公钥,再对公钥进行运算可以产生地址(公钥哈希),并且其中的运算虽然是开源的但是都不可逆。�
区块链上可信溯源解决方案的设计与实现
架构设计��
-
本文从架构设计上来说可以简单的分为三个层次,区块链存储层、区块链网络层、应用层。其中区块链存储和区块链网络它们相互独立但又不可分割。
-
应用层由接入接口与通用功能两部分构成。接入接口主要是交易主体通过应用层对交易信息进行输入,应用层将接收的信息传送到网络层验证成功之后传到存储层对交易信息进行存储。通用功能模块为用户提供了一些溯源相关的通用功能,用户可以通过客户端对进行交易信息查询及溯源。��
底层设计
- 整条链上的各交易角色生产商、分销商、零售商、顾客在区块链网络都做为矿工认证节点存在。初始时,这些节点通过系统申请成为共识节点,与网络当中正在参加共识的节点进行连接,最终模拟搭建成为一个区块链底层的P2P网络,通过编码在该网络中引入共识机制,最终模拟形成一个区块链网络。
如何搭建搭建区块链网络?
交易主体及交易信息
-
交易主体�
- 生产商定义自己的交易信息,将生产的商品数量发布网络中,创建交易;将交易信息发送给分销商;作为共识节点参与到网络中对交易信息进行验证。
- 分销商定义自己的交易信息;将交易信息发送给零售商;作为共识节点参与到网络中对交易进行验证。
- 零售商定义自己的交易信息;将交易信息发送给顾客;作为共识节点参与到网络中对交易进行验证。
- 顾客接收零售商发送的交易信息;作为共识节点参与到网络中对交易进行验证。
- 物流机构作为每个交易主体中间信息传递者;对交易信息进行验证之后,用私钥进行签名加密。
-
交易信息:每个区块当中包含多笔交易,且每笔交易种类也有所不同。其中交易信息种类包含生产商与分销商之间的交易信息、分销商与零售商之间的交易信息、零售商与顾客之间的交易信息。论文中为每种交易信息定义了不同的字段。
角色交易整体流程
系统对交易实现的流程
-
交易信息正确性的验证
- 拥有双方签名
- 发货方发出的商品的数量不大于发货方上一笔交易接收货物的数量
- 交易信息中商品的输入数量等于交易输出商品的总和
商品溯源及查询
这是一篇17年的硕士论文,相比较之前的论文,没有特别新颖的地方。但是在阅读过程中,留意了一下硕士论文的写作思路,并且如何将一个实际问题和区块链的特点和结构相结合进行设计。