区块链技术如今是非常火热,不仅让金融家和创投家趋之若鹜,如今已经在多个领域遍地播种。作为拥有锐利触角的创业家们,是否也想将区块链集成到你们现有的应用中去,而作为IT技术工程师的你,是否也是跃跃欲试,想基于区块链来练一下手,以免日后被新技术淘汰?不过,区块链涉及如密码学和P2P等多种技术,区块链的技术门派众多,新鲜概念层出不穷;而另一方面,区块链技术的发展在全球范围内还都尚处在早期阶段,各种技术方案和应用场景等还需要进一步地探索和完善,导致很多人想运用区块链,都找不到突破口,应该学习哪些知识和技术呢,应该用什么样的区块链呢?
Block chain technology is now very hot, not only for financiers and starters, but has grown in many fields. As entrepreneurs with sharp tentacles, do you want to integrate block chains into your existing applications, and as an IT technology engineer, do you want to leapfrog and practice hands based on block chains, so as not to be eliminated from new technologies in the future? But, since the block chain involves a variety of technologies, such as cryptology and P2Ps, there are many technical divisions and new concepts in the chain; on the other hand, the development of block chain technology is still at an early stage in the world, technological programmes and applications, etc., need to be further explored and refined, so many people want to use the block chain, there are no breakthroughs, what kind of knowledge and technology should be learned, and what kind of chain should be used?
我们大多数人的使用和开发区块链的目标来说,并不是要真的自己重新创建一套区块链,只是希望基于现有的区块链底层或技术框架去开发自己的应用。因此,对于类似加密算法、 P2P技术、共识算法等我们只需要有个基本了解就可以了,暂时不需要深入研究。而我们入门区块链应用开发的首要目标,是寻找一个相对成熟的区块链底层去做我们的应用开发的基础,其次,这个区块链底层需要配套强大易用的开发接口或开发框架,此外,这个区块链底层如果要考虑以后真正商用,还需要符合一些区块链的技术指标,如扩展性、燃料费用、交易频率等等。
The goal of most of us in the use and development of block chains is not to really recreate a block chain ourselves, but to develop our own applications on the basis of existing block chain bottoms or technical frameworks. Thus, we need only a basic understanding of encryption algorithms, P2P technologies, consensus algorithms, etc., and for the time being do not need to be studied in depth.
一、 比特币
i. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & bitcoin
最早的区块链开发便是基于比特币的区块链网络进行开发了,由于比特币是全球最广泛使用和真正意义的去中心化,就区块链应用来说,比特币就是世上最强大的锚,拥有最大的权威性。因此,围绕比特币的各种区块链技术非常多,这里不一一描述,只针对入门级别开发的介绍。
The first block chain development was based on the Bitcoin-based network of block chains, which, because bitcoin is the most widely used and truly decentralized worldwide, is the most powerful anchor in the world and the most authoritative in terms of block chain applications. As a result, there are a lot of block chain technologies around bitcoin, which are described here in different ways, only for introductory level development.
基于比特币的区块链网络开发介绍两种方式,一种相对比较简单,基于Blockchain.info的API进行开发。Blockchain.info是比特币的最流行的比特币钱包和区块查询网站,同时也提供的比特币及其区块相关API。 Blockchain.info 提供了多种主流语言的API库,包括了比特币的钱包、支付、区块、交易数据、市场数据等多方面的API。
Blockchain.info is the most popular bitcoin wallet and block query site in Bitcoin, and also provides Bitcoin and its block-related API. Blockchain.info provides the API library in a variety of mainstream languages, including Bitcoin wallets, payments, blocks, trade data, market data, etc.
二、 以太坊
ii. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Ether
可以说除了比特币外,以太坊目前在区块链平台是最吸引眼球的。 以太坊是一个图灵完备的区块链一站式开发平台,采用多种编程语言实现协议,采用Go语言写的客户端作为默认客户端(即与以太坊网络交互的方法, 支持其他多种语言的客户端)。
With the exception of Bitcoin, Ether is now the most attractive player on the block chain platform. Ether is a fully developed one-stop development platform for the Turing block chain, using multiple programming languages to achieve protocols, using the Go-language client as the default client (i.e., by interacting with the Etherwood network, supporting clients in many other languages).
基于以太坊平台之上的应用是智能合约,这是以太坊的核心。每个智能合约有一个唯一的以太币地址,当用户向合约的地址里发送一笔交易后(这个时候就要消耗燃料费用,也就是手续费用),该合约就被激活,然后根据交易中的额外信息,合约会运行自身的代码,最后返回一个结果。以太坊社区把基于智能合约的应用称为去中心化的应用程序(Decentralized App),相对于冷冰冰的智能合约代码,DApp拥有一个友好的界面和外加一些额外的东西,配合上图灵完备的语言,可以让用户基于合约搭建各种千变万化的DApp应用,实际上,在以太坊APP展区,已经有大大小小280个的DApp应用在展示(虽然只有一部分应用在真正运行)。
Each smart contract has a unique e-mail address, and when the user sends a transaction to the address of the contract (when fuel costs are consumed, i.e. process costs), the contract is activated and, depending on the additional information in the transaction, the contract runs its own code and returns to one result. The community calls the application of the smart contract a decentralized application (Decentralized App), which is a friendly interface and additional items to the cold contract code, coupled with the perfect language on the contract, allows the user to build a wide variety of variable DApp applications based on the contract. In fact, there are very small 280 DApp applications (although only some of them are actually operating) in the show area of the near APP.
要写以太坊的智能合约有好几种语言可选,有类Javascript的Solidity,Python接近的Serpent,还有类Lisp的LLL,目前比较主流的是Solidity,推荐大家使用。当Solidity合约编译好并且发送到网络上之后,你可以通过以太坊的Mist客户端对智能合约进行测试和使用,也可以使用以太坊的web3.js JavaScript API来调用它,构建能与之交互的web应用。
There are a number of languages that can be used to write the Tails Smart Contract, such as Solity of Javascript, Serpent of Python, and LLL of Lip, which is now more mainstream and is recommended for use. When the Solidity Contract is compiled and sent to the network, you can test and use the Smart Contract with a Mist client of Taiscript, or use Web3.js JavaScript API of Tails to call it to build web applications that can interact with it.
由于以太坊的知名度,所以很多社区大牛创造更加便捷的DApp开发框架和工具,包括Truffle、Embark、Meteor、BlockApps.net APIs,使得你可以快速开发你的Dapp。我的另外一篇文章《微软的那些区块链云服务》有提及,Embark和BlockApps.net两个区块链工具已经給整合到微软Azure BAAS服务中了。这几个框架和工具中,Elwin更推荐Embark,使用起来非常简单。
Because of its visibility, many communities have created easier Dapp development frameworks and tools, including Truffle, Embark, Meteor, BlockApps.net APIs, which allows you to develop your Dapp quickly. As mentioned in my other article, Microsoft's Blocks and Cloud Services, the Embark and BlockApps.net sector chain tools have been integrated into Microsoft Azure BAAS services. Among these frameworks and tools, Elwin recommends Embark, which is very simple to use.
通过以太坊,你既可以搭建基于属于自己私链,也可以和合作伙伴一起搭建联盟链,又或者直接将应用部署在以太坊的公共网络中,Elwin要吐槽的是,使用以太坊Gas费用越来越高了,对于互联网的应用,是自己搭建以太区块链,还是使用以太公共网络,真是两难境地(以太坊宣称,以太币Ether价格上升时,那以太坊燃料的价格应该按比例下降,但好像并不是这样阿)。
Through Ether, you can either build a private chain based on your own, or a union chain with your partners, or directly deploy it to a public network in Ether, where Elwin complains that the cost of using Ether Gas is increasing and that it is a dilemma for the Internet to build the Ether block chain itself or to use the Ether public network (Ether claims that when the price of Ether rises, the price of Ether should fall proportionately, but it does not seem to be so).
三、 IBM HyperLedger
iii. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; IBM HyperLedger
IBM HyperLedger 又叫 fabric,他的目标是打造成一个由全社会来共同维护的一个超级账本,fabric源于IBM,初衷为了服务于工业生产,IBM将44,000行代码开源,是了不起的贡献,让我们可以有机会如此近的去探究区别于比特币的区块链的原理。目前就Elwin所知,fabric还未进入真正的商用阶段,更多是试验和探索,不过相对于很多其他区块链,从技术底蘊他又是比较可信和靠谱的。
IBM HyperLedger, also known as Fabric, whose goal is to create a superbook that society is jointly maintaining, which originated from IBM, and which was designed to serve industrial production. IBM opened up 44,000 lines of code, which is a remarkable contribution that gives us the opportunity to explore so closely the rationale of a sector chain that is distinct from Bitcoin. To date, Elwin knows that Fabric has not yet entered a real commercial phase, more so as to test and explore, but he is more credible and reliable from the technical bottom than many other chains.
要基于HyperLedger进行区块链开发比想像中简单,有两种途径,一种是基于超能云(IBM中国研究院开发的超能云平台提供了各种云服务),他给区块链爱好者、开发者的区块链开发测试环境,通过超能云平台,用户能够免费、超快速创建基于Hyperledger Fabric的多节点区块链、并在自己的链上调试智能合约。Hyperledger Fabric的合约是基于Go语言的,上手比较简单。
One way to proceed with block chain development on the basis of HyperLedger is easier than expected is through a cloud-based super-energy cloud (the super-energy cloud platform developed by the IBM Chinese Research Institute provides a variety of cloud services), which provides a testing environment for block-chain development by block-linkers, developers and, through the super-energy cloud platform, allows users to create multi-node block chains based on Hyperledger Fabric, free of charge and super-fabric, and to test intelligence contracts on their own chains. Hyperledger Fabric’s contract is based on Go language, with simpler hands.
四、 Lisk
iv. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;
LISK是新一代的区块链平台,允许JavaScript(又是Javascript技术,工程师们注意了)的开发和基于分布的分散的应用程序使用一个易于使用的,功能齐全的生态区块链系统。
LISK is a new generation of block chain platforms that allow JavaScript (also JavaScript technology, noted by the engineers) to develop and implement a distributed and decentralized application using an easy-to-use, fully functional ecological block chain system.
Elwin觉得LISK相对于前面说的几个区块链底层,他的应用优势不仅仅在于他是第一个完全写在Javascript里的去中心化的应用解决方案,还在于他把每个应用加到LISK的单独侧链上。用过比特币和以太坊的朋友都知道,由于比特币和以太坊只有一条主链,所有功能和数据都加入这条主链导致区块快速膨胀,超大的区块体积,超长的同步时间,这个一个很痛苦的经历。Lisk的侧链模式给在处理高交易量下如何解决网络拥堵的问题提供了一种方法,用户只有用到相关的应用时才需要下载对应的侧链,大大减小了无效的同步数据,保持了整个Lisk网络的高效运行,而且,Lisk网络的速度随着时间的推移会继续加快,越显示他的特别优势。
Elwin felt that the advantage of LISK was not only that he was the first application solution to decentralize written entirely in Javascript, but also that he added each application to the LISK's separate side chain. As friends in Bitcoin and Itha know, because of the fact that there is only one main chain in Bitcoin and Etheria, all functions and data are added to this main chain, leading to a rapid expansion of blocks, super-sized blocks of size, long synchronization times, a painful experience. The Lisk side-chain model provides a way to deal with the problem of network congestion under the high volume of transactions. Users have to download the corresponding side chain only when the application is used, significantly reducing the ineffective synchronous data and maintaining the efficient operation of the entire Lisk network, and the speed of the Lisk network will continue to accelerate over time to show a particular advantage.
其次,相对以太坊和Hyperledge fabric以智能合约为核心的区块链不同, Lisk区块链建立的目的并不是为了创建智能合约,而是使用Lisk APP SDK框架来开发不同的应用程序和功能。
Secondly, the Lisk block chain was created not to create smart contracts, but rather to develop different applications and functions using the Lisk APP SDK framework, as opposed to the chain of blocks centred on smart contracts in Taiwan and Hyperledge Fabric.
Lisk APP的主要开发语言是NodeJS,Web开发者既能够开发应用程序的后端,也可以开发前端。通过使用Lisk APP SDK包,Web开发者可以轻松创建区块链应用。Lisk APP的开发也比较简单,跟你之前其他的NodeJS应用的开发是类似的。然而,跟比特币和以太坊的一样,Lisk的使用也是要消耗燃料费用的,还好,跟其他区块链底层网络一样,Lisk 也是有testnet模式的。
The main development language for Lisk APP is NodeJS, where the Web developers can develop both the back end of the application and the front end. By using the Lisk APP SDK package, Web developers can easily create block chain applications. The development of Lisk APP is also relatively simple, similar to the development of other NodeJS applications before you. However, like Bitcoin and Ether, Lisk uses fuel costs and, well, like the rest of the network, Lisk has a setnet model.
五、 布比网络
v. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & bsp; Bubi Network
布比,是国内区块链技术特别是底层技术领先者之一,已拥有多项核心技术,并已经成熟的应用在了商业积分、游戏币、游戏道具、预付卡、电子券、保险卡单、证券化资产、互助保险等行业和领域。
Bubi, one of the leading players in the country's block chain technology, especially the bottom, has a number of core technologies and has matured applications in such industries and areas as commercial credits, game coins, game props, prepaid cards, electronic vouchers, insurance cards, securitized assets, mutual insurance, etc.
布比区块链平台分为基础框架层(BubiChain)和应用适配层(Bubi Application Adaptors)。底层基础框架层提供区块链的基础服务,应用适配层提供上层应用所需的功能组件,为具体的应用系统开发提供接口和SDK,降低由于区块链自身复杂的逻辑所带来的应用开发的难度。
The Bubicain and appliance layers provide the basic service of the block chain at the bottom, the functional components required for the upper layer application, interfaces and SDKs for specific application system development, reducing the difficulty of application development due to the complex logic of the block chain itself.
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
发表评论