区块链 > 技术 > 正文

基于区块链的食品安全追溯技术

区块链技术板块文章基于区块链的食品安全追溯技术,本文约有1835个文字,大小约为6KB,预计阅读时间5分钟请您欣赏。樱花区块链门户资讯网荟萃众多优秀文章精选,如果想要浏览更多相关区块链技术,可以关注本文结尾推荐的优秀文章内容。本站区块链资讯虽然不乏优秀之作,但仅为大家参考使用,希望能对关注区块链的人有所帮助。

食品安全一直是各国政府都十分关心的民生问题。食品追溯应用其实是一种比较传统的应用,每年都会有很多新的应用上线。本人在10多年前就参与实施了2008北京奥运食品的安全追溯系统。在食品追溯系统中,一般会关心下面几个问题:

原产地溯源,防止假冒伪劣,典型的如高档白酒,进口葡萄酒等。

发现问题食品,可以及时快速召回。

供应链可视化,通过共享数据,可随时知道当前处于供应链的哪个环节,提升效率。

最近两年,随着区块链技术的火热,因为区块链防篡改和数据实时共享的特点,采用区块链技术实现食品追溯受到重视。如2017年7月,沃尔玛、京东、IBM和清华大学已经组成区块链联盟,以提高中国食品供应链的可追溯性和透明度。在之前沃尔玛公司和IBM公布了去年在美国和中国推出的食品溯源区块链项目的最新消息。该试点项目由沃尔玛、IBM和学术合作伙伴共同开发,旨在利用区块链技术、对供应链中的产品如美国的芒果和中国的猪肉进行跟踪。

据沃尔玛透露,到目前为止,该试点项目的成果令人满意。美国和中国的早期试验表明,区块链技术可以成功地对食品从供应商到零售商、以及最终消费者之间的流通过程进行追踪。产品的地产、批号、生产厂家和处理数据、到期日期和运输细节等详细信息都将可以在区块链网络上进行查询。沃尔玛的测试表明,通过应用区块链技术,追溯一袋芒果从农场到门店的过程从以往的几天甚至几星期缩短到了2秒。

采用区块链与采用传统技术实现食品追溯的区别

前端没什么区别,都是数据采集。主要的区别在后端,区块链从业务层面的本质是去中心化,那么在技术层面的本质是去数据库化。如下图所示:

 

 

传统的三层架构应用一般就是实现UI的客户端,实现业务逻辑的业务层,和存储数据的数据库层。并不断演进,如客户端从字符终端到GUI图形界面到Web浏览器到如今的移动终端。业务逻辑的实现也从最开始的Tuxedo服务,J2EE的EJB,Servlet到Web service,Java Bean,REST等,但后端的数据库一直没有变化。最近几年,随着并发访问的增大和改善用户体验的需要,对响应时间要求越来越高。增加了缓存层(采用memcache,Redis,Coherence等)。

区块链应用同传统应用不一样的地方是它把数据保存在账本中。通过智能合约(智能合约听起来很高大上,但其实就是一段代码,它实现的功能类似传统应用中的EJB,Servlet,Web service, Java Bean等,也就是实现业务逻辑)对账本进行读写操作。而账本是一个Key-value的状态库加区块链,区块链对应的是文件,以追加的方式写入,不可更改。如下图为Hyperledger Fabric中的账本逻辑示意图:

 

 

如上图所示,账本Ledger主要包含两块:blockchain和state。blockchain就是一系列连在一起的block,用来记录历史交易。state对应账本的当前最新状态,它是一个key-value数据库,Fabric默认采用Level DB, 可以替换成其他的Key-value数据库,如Couch DB。举个例子。我们采用区块链实现一个弹珠交易的系统。我们开发了一个智能合约, 每个弹珠有以下几个属性:Name, owner, color, size. 可以定义一个JSON对象,用name做KEY, JSON对象做Value,存储在Level DB或者Couch DB中。所以区块链应用一般采用JSON数据格式,并直接存储在key-value数据库和区块链中。这样就省去了传统应用做O/R Mapping的工作。

从部署架构看区块链和传统应用的区别,如下图,传统应用的应用服务器层很容易扩展,但在数据层比较难。而区块链是把应用(智能合约)和数据(账本)分布式部署在每个节点上。

 

 

那么这种情况下,如何保证数据的原子操作和一致性。我们知道数据库通过行级锁,事务等机制保证数据的原子操作和一致性。区块链是通过共识机制来保证数据的一致性。

一个基于区块链技术的食品追溯DEMO

我们在Oracle的区块链云服务BCS上面做了一个采用区块链技术追溯食品的DEMO.下面做下介绍:

业务场景

如下图所示,通过区块链技术,农牧场的出栏信息,食品厂的出厂信息,商品信息,超市的上架信息,监管部门的检测检验信息可以在这不同的组织之间共享,消费者也可以实时查询到上面这些信息,进行溯源。当然原产地认证信息,有机食品认证,生产许可证等信息等也可以放到区块链网络中,利用区块链不可篡改的特点。保证查询到信息是真实的。

 

 

具体实现

如下图所示,我们在后端采用Oracle的区块链云服务BCS,前端采用Oracle的开源框架JET实现了一个区块链食品追溯的DEMO。前端JET中通过REST调用后端部署在BCS上面的智能合约。智能合约采用Go语言开发,部署在BCS上面。

 

 

优势总结

基于区块链技术实现食品追溯有以下几点优势:

 

 

总之,利用区块链的数据不可篡改和数据可以实时同步的特点,很适合用于各种追溯类的应用。如上面介绍的食品追溯,其他的如汽车零部件追溯,贵重物品如珠宝,钻石的追溯,药品追溯等等。

以上便是樱花区块链给大家分享的关于基于区块链的食品安全追溯技术:http://www.0797jjw.cn/qkljs/jishu_822.html的相关信息了,希望能帮助到大家,更多区块链相关内容,敬请关注樱花区块链!

猜你喜欢

什么使区块链如此安全?

区块链时代的拜占庭容错:Tendermint(一)

理解零知识证明算法之Zk-stark

京东区块链主要应用场景与架构体系(产品详解)

Consensys:去中心化品牌是大规模采用的关键

区块链共识的确定性

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。