0 前言
区块链技术就指一种全民参与记账的方式,解决了中介信用问题。所有的系统背后都有一个数据库,你可以把数据库看成是就是一个大账本。交易通过密码学算法连接在一起,使得整个账本公开透明、可追踪、不可篡改。下面介绍一些区块链开源项目。
1 Hyperledger —— 超级账本项目
Hyperledger 是 Linux 基金会的一个新的协作项目,目标是让成员共同合作,共建开放平台,满足来自多个不同行业各种用户案例,并简化业务流程,旨在开发企业级的开源区块链解决方案。
其中,Hyperledger Fabric是一个开源区块链实现,开发环境建立在VirtualBox虚拟机上,部署环境可以自建网络,也可以直接部署在BlueMix上,部署方式可传统可docker化,共识达成算法插件化,支持用Go和JavaScript开发智能合约,尤以企业级的安全机制和membership机制为特色。可以这样说,Fabric之于区块链,很可能正如Hadoop之于大数据。
2 Ethernet ——以太坊项目
根据以太坊官方的宣称,以太坊( Ethereum) 目标是打造成一个运行智能合约的去中心化平台( Platform for Smart Contract) ,平台上的应用按程序设定运行,不存在停机、审查、欺诈、第三方人为干预的可能。以太坊平台由 Golang、C++、Python 等多种编程语言实现。
当然,为了打造这个平台,以太坊提供了一条公开的区块链,并制定了面向智能合约的一套编程语言。智能合约开发者可以在其上使用官方提供的工具来开发支持以太坊区块链协议的应用( 即所谓的 DAPP) 。
以太坊区块链的特点主要包括:
单独为智能合约指定编程语言 Solidity;
使用了内存需求较高的哈希函数:避免出现算力矿机;
uncle 块激励机制:降低矿池的优势,减少区块产生间隔为 15 秒;
难度调整算法:一定的自动反馈机制;
gas 限制调整算法:限制代码执行指令数,避免循环攻击;
记录当前状态的哈希树的根哈希值到区块:某些情形下实现轻量级客户端;
为执行智能合约而设计的简化的虚拟机 EVM。
3 Trust SQL
腾讯FiT(支付基础平台与金融应用线)与腾讯研究院联合发布了《腾讯区块链方案白皮书》。
三大层次架构
图 基础架构
在“自主创新、安全高效、开放共享”设计原则的指导下,腾讯可信区块链方案的整体架构分成三个层次:底层 Trust SQL 平台、中间平台产品服务层(Trust Platform)、顶层应用服务层(Trust Application)。
底层是腾讯自主研发的 Trust SQL 平台,通过SQL和API 的接口为上层应用场景提供区块链基础服务的功能。具体而言,服务又可以分为四项:用户管理包括账户管理、权限管理、秘钥管理、风控审计;基础服务,包括接口适配、共识管理、网络通信、记录存储;智能合约,包括合约注册、执行、触发、升级注销;还有运营监控服务,负责产品发布过程中的实时状态可视化输出。
这里需要指出一点,Trust SQL 称“采用了自主研发的高效的共识算法”。据白皮书介绍,其共识过程是经过绝对一致之后再共识,共识即确认;采用的共识算法是“改进的bft-raft”,t-raft,PBFT(实用拜占庭容错)。因其是企业级区块链,故而节点数量有限,并没有采用 permissionless blockchain 的主流共识机制,如PoW,PoS,DPoS等。
中间是平台产品服务层Trust Platform,在底层(Trust SQL)之上构建的区块链应用基础平台产品,抽象了各类典型区块链应用,提供典型应用的基本能力和实现框架,帮助企业快速搭建上层区块链应用场景。其中包括共享账本、鉴证服务、共享经济、数字资产等多个方向。
最上层应用服务层(Trust Application)是向最终用户提供的区块链应用。未来将在数字票据、重金属交易、知识产权保护、网络互助、机构清结算、公益等场景发挥作用。据腾讯官方透露,从今年春节开始内测的黄金红包已开始应用区块链技术进行数字资产的并行记账,提升了内部多个系统间对账效率,并从底层保护用户资产安全。
4 ZCash —— 基于区块链技术的替代数字货币
ZCash 是基于区块链技术的替代数字货币,利用了名叫零知识证明的技术验证交易的真实性,知名密码学专家Matthew Green参与了其设计。它通过保持事务元数据的保密性,为复杂的零知识证明方案提供更高的隐私和匿名性标准。
开发者表示,如果说比特币是HTTP,那么Zcash就是HTTPS,Zcash利用加密隐藏用户的身份,它自称是第一种真正匿名的数字货币。
5 Bletchley —— 微软区块链平台
Bletchley项目的目标是为了微软提供区块链即服务(BaaS),BaaS对于所有平台、合作者和客户来讲都是开放、灵活的。Bletchley包括了blockchain middleware(区块链中间件)和cryptlet(加密书签)。其中,区块链中间件将提供核心云服务,例如身份和运行管理,以及分析和机器学习等智能服务,cryptlet将支持互操作性,以及Azure及其他的公共/私有云、生态系统中间件及其他的客户技术的沟通。Bletchley适用于金融服务、医疗行业和政府部门。
该项目主要专注于:
构建新的开放性平台。
整合身份管理,密钥管理,隐私管理,安全管理,运营管理和协作管理。
提供高可用、稳定的平台。
Bletchley适用于金融服务、医疗行业和政府部门。
6 Dragonchain —— 迪士尼区块链平台
龙链(Dragonchain)是迪士尼打造的混合公有/私有区块链的区块链平台,于2016年10月份开源。迪士尼尝试进军区块链领域,还是令人惊讶不已,尤其是考虑到这家公司主要参与的是娱乐行业。
龙链是另一种用来保持记录和处理交易的区块链。它与比特币的底层技术十分相似,但又有一点不同。龙链是一种多币制的区块链,节点就可以随之定义一种货币并支持其使用。该网络上可以同时使用多种货币。龙链的共识机制可以支持一种或多种现有的共识机制(Trust,PoW,PoS),甚至是可以支持自己定义和创建一种新的共识机制。
特性:
易于集成现有的系统
便于传统的工程师和程序员开发,不一定需要熟悉的区块链、分布式系统和密码密码学技术
C/S客户服务器方式和RESTful方式集成
简单灵活的架构
默认情况下提供对业务数据的保护
允许业务集中控制过程
固定长度和周期,短和高速的区块
多货币支持
没有基础货币
与其他公共和私人blockchains的互操作性
7 stellar —— 去中心化网络服务器
stellar,一个由前瑞波(Ripple)创始人Jed McCaleb发起的区块链接项目,用于搭建一个数字货币与法定货币之间传输的去中心化网关。
恒星网络是基于Ripple基础上进行开发,在比特币和瑞波的技术基础上做了的很多改进,特别是相关的共识机制和验证算法,恒星网络运行节点性能得到提高,并节点资源需求非常低。众多改进其中,最大改动的是恒星支付系统的支撑算法SCP(恒星共识协议),号称是目前最安全的类拜占庭算法。SCP共识机制应用“集合块”,即各节点选择其可信任的其他节点。所有这些个体选择之和便是系统层面的共识集合。这些集合块将整个系统联结起来,正如个体网络的决策统一了互联网一样。SCP对计算能力以及经济成本消耗要求适度,降低了进入门槛并潜在地把金融系统开放给新的参与者,同时也是一种最佳的对抗恶性行为参与者使得系统恢复的构建方法。
8 Openchain —— 开源分布式总账
Openchain 是由区块链技术公司Coinprism开源分布式总账区块链工具,主要提供给大型企业和金融机构,Openchain 在处理大型企业和金融机构的数据的时候,相较于传统的区块链工具,能大大的降低计算速度,并能降低成本和交易方风险。
9 Chain —— 金融领域区块链项目
Chain是一家刚成立两年的创业公司,位于美国旧金山,是Visa的合作公司。最近 Chain 公司决定将其平台开源,将其 Chain Core 软件的开源式版本向广大开发者公开,包括其专属区块链和分布式总账的源代码。
作为区块链供应商,Chain在过去的两年多时间中获得了极好的信用。Chain 通过将加密技术的源代码进行开放,可以让更多的人在其软件上增加应用或是建立专属网络。Chain核心开发者版本的创建花费了数年时间,它是区块链供应商和金融机构合作的直接产物。由于这个开源软件针对的是金融领域,因此它允许用户创建和发行他们自己认为合适的数字资产。
Chain 最近对开源代码发行了测试网站,并且还与微软展开了合作。微软为其提供了云计算操作系统,Azure。这两家公司同时还与多所大学合作,对区块链技术展开了研究,这一合作项目称为IC3。其最初的目的是对加密数字货币进行研究,这一项目包含的大学有康奈尔大学和加尼福尼亚大学。