区块链(Blockchain)是比特币的一个重要概念,随着数字货币引起广泛关注,... 展开 >
臧秀涛,现就职于InfoQ,任QCon大会主编,负责QCon大会的策划和组织。2010年毕业于中国科学院计算技术研究所。曾先后在完美世界等公司从事软件开发工作。2014年加入InfoQ。业余喜爱读书和翻译,曾翻译出版过《C++ API设计》、《Groovy程序设计》和《Java性能权威指南》等技术图书。业余也维护了一个微信公众号“开发资讯(dev-news)”,欢迎关注。
对QCon大会有任何建议或想法,欢迎通过微博 @臧秀涛 与我联系。
区块链(Blockchain)是比特币的一个重要概念,随着数字货币引起广泛关注,区块链也成为技术社区最热的关键词之一。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。本专题将重点关注区块链背后的技术及落地实践。
区块链是一种对于实现未来价值交易网络非常有前景的技术和模式。
区块链目前社区热度很高,有Linux基金会的Hyperledger项目、以太坊Ethereum 、R3的Corda等开源项目。我们首先将回溯区块链发展历史,对比几个开源项目的优缺点。
单单从技术层面而言,区块链技术落地在现阶段并不容易。一是因为要辨析哪些才是真正适合的场景,其痛点是什么,要摆脱“手里拿着锤子看什么都是钉子”的思维定势。二是开源项目用于生产环境,还有哪些点必须改进,比如降低技术门槛以加速业务结合与上线、提升服务的高可用性和可靠性、增强对敏感商业信息的安全和隐私保护、实现大范围的企业间业务网络的建立和运维等。
在演讲的最后一个阶段,我们将分享企业级开发测试、生产环境的技术实践经验。区块链希望解决的是生态圈的问题,而不是单个企业的问题,如何打通这个生态圈的上下游,从而让这个生态圈运行得更好,让生态圈各个参与者都能获益是区块链技术应用必须思考的问题。
Ethereum(以太坊)作为最流行的区块链平台,为大多数技术实践者们熟悉和了解。然而其面向公有链场景的设计和all-in-one的实现导致以太坊只适合于公有链或私有链场景。本话题始于一次真实的项目经历,该项目尝试以Ethereum为起点,设计一套适用于企业上下文的联盟链系统。然而通过对Identity Management、Data Transpancy、Consensus Protocol等企业上下文中非功能性需求的约束,最终推导出一套跟如今主流联盟链架构非常接近的架构模式。
多年来,区块链社区分成了两派,相信“区块链技术”的人,和为了获利而交易加密货币的人。两派观点差异极大,互相不待见。一方面,出现了“企业区块链”,想要去除加密货币的支撑(去代币化);另一方面,可交易的代币是由中心化数据库发布的。然而,步入2017年,人们越来越发现,传统的看法可能有误。实际上,加密货币和加密经济学设计对于解决区块链技术难题如性能,可扩展性和安全性等至关重要。
在本次演讲中,我们将讨论现今和未来的区块链网络“杀手级应用”,要将这些应用场景变为现实我们必须克服的技术挑战,以及加密经济学如何与软件工程创新结合起来应对这些挑战。技术论题包括DPoS共识机制,通过自动代币交易实现横向可扩展性(分片),企业级智能合约和Oracles,链上和链下协调以及零知识算法。
区块链是在点对点网络中对交易具有防篡改功能的共享数据账本,Hyperledger fabric是一个比较知名的开源区块链框架,其中作为分布式系统的核心问题就是共识算法以及共识算法的效率问题。如何既保证这个共识算法能让参与区块链的联盟各方都认可它的安全可信,又能提高联盟成员间的共识效率就是一个所有人都关注的重要问题,这里我们将会介绍一种优化的bft共识算法的设计和使用方式。
对于区块链服务的使用者,数据安全性是一个非常重要的问题,例如同态加密,零知识证明和国密算法等,我们会介绍这些高级功能特性,讲解这些特性的原理,以及介绍华为提供的这些特性支持中接口是怎么使用,还有通过代码示例演示怎么使用这些高级特性,让大家对区块链服务的基础和基于它的一些高级功能能有初步认识到基本实践的能力。