Hyperledger Fabric是一个开源的区块链平台,用于构建企业级的分布式应用程序。在Hyperledger Fabric中,链码是智能合约的实现,用于定义业务逻辑和状态转换规则。
当升级链码时,现有事务会发生以下情况:
总结起来,升级链码时,现有事务将继续按照旧版本的链码逻辑进行处理,不会受到影响。新的事务将使用新版本的链码进行处理,可以享受到新版本链码带来的改进和优化。旧版本的事务仍然存在于区块链中,可以通过查询操作获取旧事务的信息。
随着近期Fabric v1.4.1 LTS的发布,Fabric项目目前工作的重点正在向1.4.1和2.0的正式版推进。v2.0.0是2019年的主要目标,重点集中在更多的新特性上,包括增强的链码生命周期管理,raft共识机制,以此来循序渐进地迁移至拜占庭容错算法,以及更强大的token支持。近期发布的2.0版本建议大家仅作为尝鲜之用,生产环境暂时不要考虑。
中国广东省深圳市龙华新区民治街道溪山美地 518131 +86 13113668890 <netkiller@msn.com>
在Fabric中,智能合约也称为链码(chaincode),分为用户链码和系统链码。系统链码用来实现系统层面的功能,包括系统的配置,用户链码的部署、升级,用户交易的签名和验证策略等;用户链码用于实现用户的应用功能,开发者编写链码应用程序并将其部署到区块链网络上,终端用户通过与网络节点交互的客户端应用程序调用链码。 链码被编译成一个独立的应用程序,运行于隔离的Docker容器中,在链码部署的时候会自动生成链码的Docker镜像。 链码是访问账本的基本方法,一般是用Go等高级语言编写的、实现规定接口的代码。上层应用可以通过调用链码来初始化和管理账本的状态。只要有适当的权限,链码之间也可以互相调用。 链码(Chaincode)是一段由Go语言编写(支持其它编程语言,如Java,NodeJS)并能实现预定义接口的程序。链码运行在一个受保护的Docker容器当中,与背书节点的运行互相隔离。链码可通过客户端提交的交易对账本状态初始化并进行管理。 链码通常处理由网络中的成员一致认可的业务逻辑。链码创建的(账本)状态是与其它链码互相隔离的,因而不能被其它链码直接访问。如果在相同的Fabric网络中,链码在获取相应许可后可以调用其它链码来访问它的账本。 链码被部署在Fabric网络节点上,运行在Docker容器中,并通过gRPC协议与相应的Peer节点进行交互,以操作分布式账本中的数据。
目前无法绕过技术领域的是区块链话题。但除了加密货币之外,还有更多有趣的应用程序可以带来许多激动人心的软件生态系统。这也适用于Hyperledger项目,该项目提供了一个非常模块化的区块链框架。让我们看看使用Hyperledger Fabric和Composer实现区块链应用程序是多么容易。
Mark Rakhmilevich是Oracle公司区块链产品管理的高级总监。他致力于Oracle区块链云服务,并指导企业、isv和SIs构建区块链应用程序,并将企业系统集成到这个平台上。 与企业区块
随着探索如何把区块链应用在各种场景,许多人就想到,也许不需要全世界的人共同参与,也不需要挖矿,我们只需要用到区块链的可信任、可追溯特性,通过较少节点达到拜占庭将军容错,于是私有链就诞生了。但私有链仍是中心化的,难以维持去中心化的优势。因此又有了为企业联盟而生的联盟链(consortium blockchain)。
何鑫铭,携程技术中心创新研发部区块链技术专家,携程区块链技术平台技术负责人,精通当前主流区块链开源技术框架,热衷于研究区块链底层设计和区块链应用创新。
区块链技术的出现是一个意外。2008 年全球金融危机引起很多人的讨论和思考,在互联网上有一个匿名为“中本聪”的人提出了一种叫比特币的技术(比特币的出现是否和金融危机有直接关系不得而知)。他以《比特币白皮书:一种点对点的电子现金系统》为标题写下了一段文字,开头部分这样写道:
介绍 作者:Elli Androulaki,Christian Cachin,Konstantinos Christidis,Chet Murthy,Binh Nguyen和MarkoVukolić 该页面记录了块链基础架构的架构,其中块链节点的角色分为对等体(维护状态/分类帐)和排序者(根据分类帐中包含的事务顺序的同意)角色。在通用的块链体系结构(包括Hyperledger Fabric v0.6及更早版本)中,这些角色是统一的(参见Hyperledger Fabric v0.6中的验证对等体)。该体系结
让我们通过构建一个应用程序来展示区块链是如何工作的。根据维基百科的描述,区块链是:一种分布式数据库,用于维护不断增长的记录列表,称为块。这听起来似乎不错,但它到底是如何工作的?
您或许听说过区块链,但可能不确定它对 Java™ 开发人员有何用。本教程将帮助大家解惑。我将分步展示如何使用 Hyperledger Fabric v0.6 来构建、运行和执行使用 Java 语言编写的智能合约或链代码。您将安装一些工具,定义本地区块链网络,构建并运行一个链代码智能合约。
智能合约能够部署和运行在区块链环境中,由一段代码来描述相关的业务逻辑。部署后的智能合约在区块链中无法修改,智能合约的执行完全由代码决定,不受人为因素的干扰。一般来说,参与方通过智能合约规定各自权利和义务、触发合约的条件以及结果,一旦该智能合约在区块链环境中运行就可以得出客观、准确的结果。
近期虚拟币市场可谓风波不断,就在此文书写的当天,部分比特币交易平台出现了从上次跳水后价格继续下跌10%以上的窘境... 近期政策回顾 8.30-9.3 三大交易平台暂停ICO交易业务 9.4 央行等七部委紧急叫停ICO交易 9.8 监管层强制关停 中国告别比特币交易所 9.2-12 多家比特币交易平台提高手续费 9.14 16点-18点 消息称比特币交易平台将关停 上海已经通知 9.14 19点 比特币中国9月底停止所有交易 关停消息基本坐实 严峻的形势下 近一段时间的政策可以看出,国家正在着手控制
近期虚拟币市场可谓风波不断,就在此文书写的当天,部分比特币交易平台出现了从上次跳水后价格继续下跌10%以上的窘境...
自 Libra 发布以来,沉寂已久的区块链社区又活跃了起来,一些探索区块链业务的公司也在暗地里较劲不甘落后。相信你也注意到了,这些大公司往往都对现有比特币、以太坊等区块链视而不见。这是因为它们深知数据的重要性,因而不会选用比特币、以太坊这些把数据开源公开的公有区块链,而是对可以控制参与者加入的私有区块链情有独钟。
在我们开始之前,如果你还没有这样做,你可能希望检查是否已经在开发区块链应用程序和/或运行Hyperledger Fabric的平台上安装了所有前提条件。
了解使用IBM Blockchain Platform的VSCode扩展来简化开发,测试和部署智能合约的过程。完成本教程后,你将了解如何使用VSCode在本地Hyperledger Fabric网络上快速开发,演示和部署区块链应用程序。本教程假设你对Hyperledger Fabric有一些基本的了解。
Hyperledger Fabric PHP SDK是社区提供的用于Hyperledger Fabric区块链应用 开发的软件包,其目的在于为PHP应用提供访问Hyperledger Farbic区块链的能力, 例如:创建通道、安装链码、访问链码等等。
Fabric Java SDK是Fabric区块链官方提供的用于Java应用开发的SDK,全称为Fabric-sdk-java,网上可用资料不多,本文列出了精心整理的针对Fabric Java SDK的最新精选教程。
在超级账本Fabric区块链中,应用通过节点的RPC协议接口访问链码。Java应用可以使用官方提供的Fabric-sdk-java开发包来实现对链码的访问,java开发包封装了Fabric区块链的GRPC链码访问协议,有利于开发人员聚焦于业务逻辑。本文将通过编写一个最简单的可以访问Fabric链码的Java应用,来帮助你快速上手Fabric区块链的Java应用开发。
领取专属 10元无门槛券
手把手带您无忧上云