共识算法采用 RPCA(Ripple Protocol Consensus Algorithm)。针对拜占庭将军问题,目前常见的有比特币与以太坊采用的 POW 算法, HyperLedger 采用的 PBFT 算法。然而,在些这种分布式支付系统中,由于海量节点间需要同步沟通,导致共识效率比较低。在 RPCA 算法中,为了降低这种同步沟通的成本,使用了一种子网络内部互相信任,由这些内部信任的子网络构成大的网络的方案。这里子网络的信任成本非常低,可以被进一步降低为网络节点对于子网络内部其它节点的原子性选择。另外,为了维护全网节点数据的一致性,子网络之间需要的连接度不能小于一个阈值。通过以上解决方案,RPCA 实现了一种高性能,同时拥有较高拜占庭容错的算法。RPCA 算法已经应用在 Ripple 共识协议中,并得到了大量实际应用验证。该共识算法支持高网络吞吐量,平均期望超过 1000TPS。该网络下,每个节点均为非匿名节点;每个参与共识的服务器均维护 UNL(Unique Node LBTD)列表,列表上的服务器集合代表整个网络受信任的代表,即记账节点,由列表上的记账节点决定最终共识。
BTD 项目基于开源项目平台 ChainSQL 进行开发。ChainSQL 是将区块链与传统数据库相结合的开源区块链平台,其核心思想是:把对数据库的操作看作一次交易,在底层构建一种基于区块链网络的日志式数据库平台,从而使得对数据的操作历史可追溯、不可篡改,从而实现一个分布式去中心化的数据库。 ChainSQL 基于区块链的四个主要特性:去中心化(Decentralized)、去信任(Trustless)、集体维护(Collectively maintain)、可靠数据库(Reliable Database),建立账务系统。系统采用模块化设计,对共识算法、 P2P 通讯协议、区块写入等功能进行封装,各模块可无缝对接。在区块链中保存共享凭证,执行激励发放,通过区块链的可回溯、不可篡改的机制,确保 BTD 项目运行数据的公开、透明、公正。基于 ChianSQL 平台,BTD 项目在构建时采用以下区块链底层技术:
区块链技术是在多方无需互信的环境下,通过共识技术实现系统中参与方的协作以达到对信息的认可与验证。这种协作是通过去中心化的方式达成多节点共同记录、维护、确认一个不可篡改、可靠的数据日志。区块链技术能够实现无需单节点中心服务器环境下,用户对数据的完整控制权和信任,从而让数字时代的生产关系更合理、更安全、对用户提供更有效的激励。由于每个区块数据(Block)都是通过密码学技术来生成,并且数据块之间通过数据指纹链接(Chain)在一起,所以我们称这种结构为“区块链(BlockChain)”;又由于每个全节点都拥有所有的交易记录或数据日志总账,所以我们也称它为“分布式总账技术(Dributed Ledger Technology)”。区块链技术的代表性项目和第一个成功应用就是比特币(BITCOIN)网络。
BTD 项目面向全球存储硬件开放,用户可通过贡献其闲置存储成为节点。 BTD 项目支持非专用和专用的2种类型存储节点:3.1非专用存储节点当前市场上广泛存在各类有存储能力的智能硬件和PC电脑等私人硬件。一般来说,私人硬件的存储能力主要用于自用存储,但有时也会有不少存储空间长期处于闲置状态,如果用户愿意将闲置存储长期稳定贡献出来,则用户的私人硬件也成为了一个非专用的存储节点。3.2专用的 BTD 存储节点专用的 BTD 存储节点,其核心功能就是为 BTD 项目提供存储空间、带宽资源和计算资源,不承载其他业务。根据专用节点所部署位置的不同,BTD 项目专用节点可以分为家用型和专业型2大类。家用型体积相对较小,噪音相对较低、适用于普通家庭用户参与 BTD 网络的建设。专业型则一般采取标准机架式服务器设计,更适合放置在小型机房,尤其是具备较好带宽资源的区域,为 BTD 网络提供更优良的网络资源,更适用于专业用户参与 BTD 网络的建设。在 BTD 网络的测试网运行期间,已有多个合作伙伴不同品牌不同型号的非专用的 BTD 存储节点和专业的 BTD 节点加入了 BTD 项目,各类 BTD 存储节点也已历经多次软硬件版本迭代,BTD 网络已具备了良好的网络基础。
各种符合 BTD 项目协议要求的存储设备,都可以自愿签署 BTD 项目之“互益计划”,自愿共享闲置存储空间来参与建设 BTD 项目,成为分布式存储网络节点,从而获得相应的 BTD 数字资产作为回报。节点用户也可根据自身需求退出 BTD 项目的“互益计划”。 BTD 项目已获得了多家知名云存储硬件厂商的支持。面向非特定硬件的 BTD 节点计划也即将推出。BTD 项目将是一个遍布全球、爆炸式增长、无限扩容的弹性存储链,其大幅降低的存储成本将使得 BTD 项目会在未来 3-5 年成为云存储市场的引领者与分布式云存储产业的标杆,大幅占领集中式云存储的市场份额,改变全球云存储生态。 BTD 项目曾运行名为 BTR 的测试网。2019 年 4 月,BTD 项目主网正式上线后,原有 BTR 测试网将切换至主网并在保留运行一段时间后关闭,全面进入 BTD 主网时代。
BTD 项目和 IPFS(FileCoin)的共同之处在于,都建设了一套激励体系来激励存储设备加入所建设的分布式存储网络,为项目提供存储空间。BTD 项目的激励系统是 HDT 存储积分+ BTD 激励积分,IPFS(FileCoin)项目的激励系统是 FIL。 BTD 项目和 IPFS(FileCoin)的不同之处在于,两个项目的目标有着根本性的差异,而目标的差异决定了两个项目对分布式存储网络的需求和设计有着重大区别,两个项目功能互不重叠,相互不可替代,但相互关联。 IPFS(FileCoin)的目标是取代 HTTP 协议而成为新一代互联网的基础协议,因此其分布式存储网络面向公共服务,没有提供动态文件存储、多副本、文件内容加密、访问权限等功能。因此 IPFS(FileCoin)项目的技术路线不适合实现云盘等对私密性要求较高的非公共服务;而强调私密安全的云盘应用却正是 BTD 项目的第一目标。BTD 项目内置了文件切片加密、冗余多副本、动态存储等相关底层设计,目标是成为全球最大的分布式云盘和边缘云存储基础设施,面向未来的物联网和5G时代提供分布式的边缘云服务。
IPFS(The InterPlanetary File System)星际文件系统是一种点到点的分布式文件系统和超媒体分发协议,其目的是让互联网更加安全, 并且更加开放, IPFS 的技术路径是为所有人提供全球统一的文件存储和寻址空间,目的是取代 HTTP 成为新一代互联网的基础协议。 IPFS 用基于内容的寻址替代 HTTP 的基于域名的寻址,当 IPFS 被请求一个文件哈希时,它会使用一个分布式哈希表找到文件所在的节点,取回文件并验证文件数据。IPFS 没有存储容量的限制,是一个全球性的点对点分布式存储网络,大文件会被切分成小的分块,下载的时候可以从多个服务器同时获取。只要知道文件的 CID,在全球任何地方都可检索和访问文件内容