当前位置: 首页> 价格排行 >Holo火龙果currency paper中文版

Holo火龙果currency paper中文版

2020-11-26 13:42:35

本货币白皮书中文翻译由若然社区完成

衷心感谢若然社区对Holo火龙果的热爱与支持


Holo:全球规模和稳定价值的加密货币基础设施

Arthur Brock     Eric Harris-Braun

 

摘要:我们提出了一个可扩展并且高效的加密货币设计模式,无需专门硬件和共识即可在全球范围内运行。我们结合了复式会计的原则使用密码签名来实例化一种新形式的无通证加密货币。我们提供优化方案在全球范围内实现去中心化平台上运行的每秒钟数万亿次网络交易请求的跟踪和记账。我们建议混合使用自动化(类似于智能合约)以及可视化设计来更好的人工代理决策。最后,我们探索与基于区块链的相关货币的安全问题。

 

本文重点介绍Holo的货币和加密-记账系统,并且一并发布另一篇论文详细描述了Holo的分布式应用程序为主流互联网用户提供服务的实际扩展方法[1]。这些解决方案是相互交织错综复杂的。分布式算力Holo应用程序是支持其货币的资产。该托管基础设施的运作依赖于此处描述的货币引擎来管理其内部经济。

 

为了增加广大阅读者的可读性,每个繁杂的数学部分描述之前都增加了更简单的语言解释。

 

介绍:摆脱区块链束缚

 

Holo是一个去中心化的托管平台,建立在名为Holochain的架构上[2]。Holo利用Holochain的可扩展架构实现区块链的两个主要特点:

 

1. 启用功能齐全的去中心化应用程序(远比智能合约更复杂)为主流互联网用户提供服务

 

2. 提供主机所需的大规模可扩展加密-记账基础架构以引导和管理具备巨大用户使用量的应用程序。


近年来,区块链以及区块链上运行的东西越来越流行[3],并且已经进入了更主流的大众意识[4 5 6]。这引起了人们对于去中心化方法的可能性的兴趣,这些方法包括货币,网络应用程序,数据所有权[7],共同管理等[8]。一些早期的区块链应用已经证明是有用的,但大规模应用受到当前体系结构的阻碍。集中在目前的这种区块链架构已经限制了我们的视野,甚至它的大量低效率和可扩展性障碍[9]已是众所周知的。

 

目前区块链消耗的电量超过全球0.1%的电力[10 11],这些电被用于低于0.0001%的全球财务活动[12],这些财务活动以加密代币的形式出现,这些代币具有大幅波动、有投机性价值[13]和没有固有的清偿能力等特点。有些信仰者声称加密货币的价值在于使用它能够耗费多少能源[14]。不需要专门的处理器用于大规模的采矿计算[15],我们提出了一种替代方法可以实现大规模且低功耗的计算设备。

 

本文有三个主要部分。在对Holo底层平台的简要描述之后第一部分详细从加密货币的驱动设计架构方面的介绍了设计约束和考虑因素。第二部分概述了细节和动态货币运作。第三部分确定安全考虑因素以及它们是如何解决的,仍然存在的安全问题,以及可以降低风险所采取的措施的建议。

 

第一部分:Holochain底层技术框架

 

为了涵盖货币设计的细节,例如会签的交易,预授权通证和供给动力,我们需要建立一些了解Holochain架构方法术语和基础知识。 Holochain是一个加密操作系统。虽然它不遵循区块链或其它去中心化共识系统的模式,但它提供了一种完全创新的手段,可确保点对点应用程序的数据完整性,而无需使用全局共识。

 

本文中,缺少对POW,POS或领导者选择算法的介绍不是因为疏忽,也不是由于不熟悉分布式计算或区块链架构已建立的方法。Holo采用的方法不消耗为了验证和任何形式全球记账共识所需的算力[16]。Holochain通过验证每个代理本地发布的数据来确保分布式应用的完整性,也是不可篡改的链。公链对于本地链的访问入口随后被记录在有一个可内容寻址的分布式哈希表(DHT)中。Holochain具备无法预测的节点的验证加密签名,强制执行数据模式和应用程序逻辑的特点[17]。

 

使用本地不可篡改链带有最终共识DHT认证后的标签这种模式,Holochain为了数据完整性引进了一个代理中心化模式,而不是数据中心化的固定框架[18](这个框架是为了共识创建)。一旦开发人员学着开始从思想上转变(从以数据为中心到以代理为中心),那么在Holochain上构建分布式应用程序会比在区块链上构建的应用程序更加容易,在计算上效率要高许多个数量级。

 

请阅读Holochain的白皮书[19]以获取更多关于这个构架的正式技术性信息。在发布时,Holochain已经在Alpha版本中发布了许多重要的早期应用程序(例如分布式Twitter-clone和分布式公共密钥基础设施),这些应用程序旨在演示其可扩展性和易用性。

 

l  设计约束:Holo货币需求

 

Holo旨在具有可扩展性,安全性和稳定性,以成为新型加密经济的基础。为了实现这一目标,Holo必须提供高速的加密记账,大规模交易量和足够高的效率以最大限度地降低开销,以及一个普通人依靠它生活的足够稳定的加密货币。它还必须具有适当的参与激励机制,并为其基础架构的维护提供足够的资源。

 

 低开销的会计核算

 

Holo调动计算资源,可以根据带宽,存储和CPU时间或周期轻松进行衡量。随着网络计算能力和高速连接的扩展,成本和价格将会下降。由于交易量非常小,但交易非常的频繁,与传统金融交易相关的基础费用无法很好地反映到这个问题上。例如有时候为了0.00025美元的交易额,不得不向银行支付3%的费用加上0.25美元的交易费,这显然使得这样的系统不可行。人们不能支付1000倍的计算能力成本的交易费。

 

区块链的计算开销有同样的问题。当每个节点必须同意全局账本上的每个状态变化时,将花费比原始计算量要大得多的计算能力。共识管理的计算成本,无论是通过POW或投资市场的POS,都需要进行不必要的额外状态处理,从而承担固有的容量限制。人们不应该为提供少量的托管来承受数百万被计算能力的计算耗费[20]。

 

总之,指导Holo货币系统设计的第一个约束是它必须比原始计算和资金计量节省更少的计算周期和费用。

 

 大规模交易量

 

为了让Holo服务于主流互联网市场,它必须能够托管类似Slack,Twitter甚至Facebook的大型P2P应用程序。计算的记账能力显然必须随应用程序的使用而扩展。因此,Holo必须超过当前区块链每秒几个交易量,达到至少百万倍的能力。由于使用范围广泛,我们预计将会像Visa网络那样超越金融交换骨干网络,该网络最大估计容量为5.6万笔交易。

 

 服务证明

 

为了满足全球数万亿需要处理的小型计算交互,我们设计了货币系统来支持每秒数百万笔交易并分批报帐。批处理由签名的服务日志提供,这些服务日志记录了已签名的请求及其相关的已签名响应,以及传递给它们的基础计算度量。当设备上的日志积累了足够的微小费用达到计费阈值(按时间或累计费用)时,它会为所执行的服务生成一份服务证明发票。

 

采用将多个微小算力汇总成可计费额度的延迟开发票方法,银行费用是不切实际的,因为银行费用仍然不到1美元。带有链接的POS发票通过异步的方式发送到付款人的ID和在共享的DHT中。如果付款人未能及时支付发票,托管将停止提供该应用程序。该发票既可以作为付款请求,也可以作为预授权通证,通过允许对收款人本地链的自动签名,而不需要人员对交易的批准,实现加快付款。

 

l  基础设施和费用

 

HOLO链是一种完全点对点的体系结构,使得应用程序可在去中心化平台上运行。然而,为了在一个完全点对点的世界和人们熟悉的网站功能之间建立桥梁,Holo建立了通向“中心化网络”的桥梁。全部细节都在托管文件中[21],但是一个例子是让人们可以在网络浏览器中键入域名并提供域名服务(DNS)以解决问题,以便将它们与它们尝试访问的应用程序的主机集群相连接。我们习惯于把网络看作是去中心化的,但是一旦有人经历了具有无全球地址或名称授权的完全去中心化空间,没有根服务器,只有通过加密哈希的内容可寻址能力,那么现有网络和互联网模式中的集中化方面将变得更加明显。

 

因此,Holo组织不仅提供必要的操作基础设施以与中心化Web进行交互,还维护该基础架构并为Holo软件和DNS服务提供安全更新。这样做的资金是建立在每笔交易的小额交易费用上的。由于持续为开源基础设施项目提供的资金往往具有挑战性,因此这是缓解这一问题的一个策略。Holo交易费用的一半用于Holochain。

 

这些费用不仅用于当前的维护和服务,还用于资助未来的功能和基础设施的扩展。作为将Holo转变为其参与者管理的纯粹数字实体这一承诺的一部分,我们将为这些资金的大部分人群提供工具[22]。在启动时,将建立进度和时间表,以便这种管理结构可以被编码进Holo自身的管理体系。

 

因此,每笔货币交易都会标记交易费付款的微小承诺。这类似于POS过程,但涉及记录付款承诺而不是付款请求。每当交易费用承诺累积到阈值水平(最初为1个信用额度)时,下一笔支出交易必须是用于解决这些承诺的付款。如果建立在每个人的验证规则中,。请记住,如果有人改变了他们验证规则,他们基本上放弃了自己与其他所有人的共享协议,因为未来此节点的交易将被所有正常节点拒绝.

 

l  价值稳定性作为主流参与者的基础

 

虽然投机者可以享受加密货币市场的波动性,但大多数个人和企业都对依赖于价值大幅波动的支付形式持谨慎态度。对于多数人参与Holo及其潜在的加密货币,各个部分的市场价值应该优化以获得稳定和牢固的趋势,盈利随着时间增长而增长。虽然这可能听起来像一个不可能或天真的设计参数,但它被纳入Holo的加密货币设计。

 

第二部分:一个新的加密货币品种

 

Holo提供了一个全新的加密货币品种。与以往的加密货币不同点在于它不是一个加密通证或加密币,而是一种互相信用记账系统,每笔交易都在双方的本地链上会签。这使我们能够设计加密信用来形成以前没有的社交和市场行为的新模式

 

l  没有通证,没有代币

 

基于区块链的货币是基于代币的。加密代币实际上是一个用密码写的用于消费的通证,具有相关的单位价值和一个私钥。区块链帐本通过记录每个硬币的创建以及每个硬币的后续交易来提供所有代币的权威列表。在区块链中,当它们用完并创建新代币时,每笔交易实际上会破坏以前的代币。交易的收款人控制支付给他们的代币的私钥,而付款人维持原始代币 “改变”后创建的任何代币的密钥控制。区块链分类账需要共识策略,因为每个人都必须就代币的存在和代币的销毁达成一致意见。

 

当代币不存在时,不需要达成共识。Holo使用代理中心化,而不是以代币为中心的本体论那样需要利用算力来建立共识。基本上,通过使用作为账户的不可篡改链的加密签名方式提供了对传统复式记帐的升级。采用在这种双重入账方法,每个代理人(或用户,或账户)管理自己的本地交易链,而不是管理代币的整个账本。这意味着每个人的账户都是在他们自己的链上进行编码形成,所以当两个人交易时,他们只需要审核对方的历史记录,以确保他们有消费的积分。他们不需要任何其他人的许可或共识。在相同计算方式上,一方的账户增加,另一方的账户降低。

 

没有代币的另一个结果是,每笔交易都是完全平衡的-包括系统的初始化。当预售金额记入买方帐户时,并非在ICO中为该组织提供过剩代币,而是通过托管积分预售筹集的所有资金从Holo的帐户中扣除。每个积分都有一笔抵消借记,并且收到了购买所得的资金,Holo的账户通过承担这笔债务开始。

 

前面所述的交易费用是赚取这笔债务的基本方法。这种收入结构可以确保激励措施足以支持强大的基础设施,并且Holo被激励以防止费用变得过于繁琐,使竞争系统更加有吸引力。此外,Holo账户余额总是显示其净值贡献的状态,这意味着该组织透明地掌握其接收的所有资金。

 

l  委托交易

 

在Holo的设计中,所有交易均作为复式会计记录到参与交易的每个代理的源链中。作为一个通用的例子(不是专门支付托管费用),Alice同意向Bob出售一辆自行车以获得一些Holo信用。它们通过点对点的消息传递来相互沟通以建立一个双向委托过程的交易。

交易字段:

 ● Spender_ID: (hash of public key),

● Spender_Current_Header: (hash),

● Receiver_ID: (hash of public key),

● Receiver_Current_Header: (hash),

● Transaction_Amount: (double),

● Transaction _Fee_Promised (double),

● Transaction_Pre-auth: (hash -- optional) [如果非空,并且如果付款人初始化了,那么这就是个请求通证的付款,能在接受者的源链中找到,否则如果不是付款人发起的,那就是个承诺通证付款,在发送者的源链中可以看到]

● Initiated_by_Spender: (bit), [true = 1, false = 0]

● Transaction_Payload: (JSON string -- up to 512 characters - NULL terminated)

一方发起交易,使对方必须填写的字段保留空白。 每个代理交换验证对方状态所需的数据。在最糟糕的情况下,这涉及到检索和审计对方的链,以确认它们处于完成交易的有效状态(例如,消费者有足够的消费信用)。收款人通过为他们的链建立预检表头并将其发送给消费者来表明他们的批准。当付款人用他们的表头作出回应时,他们都会将其提交到他们自己的源链中,并在他们提供的表头中记录对方的签名.

 

注意,双方都积极参与交易,并且必须在交易链上签名。这不是一个持秘钥的人花费代币的过程,而是一个双方同意的交易,并且在交易前有机会验证另一方的状态。这再次表明,为什么不需要全局共识。所有节点都具有相同的验证规则,因此如果Alice不能验证Bob可以消费他想要花费的信用,那么她的应用将拒绝该交易。如果有其他人在与Alice与Bob交易前与Bob串通也没有关系。每一个不参与串通的行为人将拒绝非法行动。从这个意义上说,坏的行为人不会影响合法用户,也不会影响货币或其供应。

 

l  动态货币供应

 

由于所有有效交易都是复式会计分录,所以Holo的内部加密会计函数就像资产负债表[23]一样,每笔交易都保留表单在个余额中[24]。每个信用额度都有一个抵消借方。没有人能从无到有创造出任何东西。没有铸币,挖矿或者代币销毁。这意味着所有正余额的总和等于所有负余额的总和。当没有代币存在,并且始终需要匹配的借方贷方余额时,则管理货币供应的窍门根本不同。其原因很简单,净货币供应总是零。

 

以这种方式发行和操作的货币称为互信货币[25]。某人从无货币创造东西的货币称为法定货币[26],拉丁语“fiat”,意思是“宣布,宣告或说出自己的存在”。[27 28]

 

在比特币中,如果矿工幸运地通过POW找到一个区块的随机数,可以什么都不用就创建新币。[29]最近,“法定货币”这个术语的普及与银行发行的[30],来自加密货币的国家货币形成了鲜明对比,但人们没有认识到基于代币的加密货币也是由相同的法定货币形成的。由浪费能量和算力而创建的代币不受任何支持。它是通过采矿和赌博创造出来的。

 

虽然互信货币的净供给总是为零,但活跃的供应可以根据市场需求扩大和缩小。互惠信贷供应中的发行可以配置以适应实际的市场用户的行为。当一个系统通过法令发行代币时(即使法定发行授权是通过工作证明随机的),它也不能简单的以这种方式回应市场。针对多样需求的实际情况,法定发行的硬编码供应动力产生不稳定的市场价值。然而,互信的加密货币可以设计成具有稳定性而不是波动性。

 

管理互信货币中的价值稳定性的主要机制是良好的信用限额算法,它控制每个账户被允许进入负数的程度[31]。首先必须认识到供应何时通过复式交易扩大或缩小。当有余额的账户转入另一个有余额的账户时,活跃供应量没有变化。负值余额与负值余额同样如此[32]。当某人将其账户转为负值时,同时向正余额的人付款时,激活的信用额度会增加。当一个有正余额的账户转账给负账户时,激活的信用额度会减小。

 

由于供应完全由信用额度决定,因此决定每类用户限额的算法是唯一影响货币供应。当信用额度的扩大与货币及其基础设施价值的增长保持一致时,供应就有可能增长而不会降低其价值。相反,为了支持价值稳定性,当市场行为表明对货币的需求正在减少时,减少供应势在必行。

 

有关这方面的具体机制,请参见以下关于“角色,信贷限额和供应算法”的部分。

 

l  价值稳定 - 不是静态

 

Holo信用的稳定性最重要的组成部分是它们受到重要的现代资产支持:计算能力。云托管2017年预计收入为2640亿美元,并且每年仍在增长。[33]HOLO的信用并非离开任何特定价值的加密代币,它们是大规模计算基础架构运营不可或缺的部分.

 

Holo信用以计算单位计价:处理时间,带宽和存储。它们可以从Holo以及整个主机社区购买。它们在整个社区中都可以运行,以满足计算能力的需求。尽管信用也可用于一般金融交易,但随着托管数量的增长,其大量的计算能力稳定了估值。在分布于全球各地的服务器的大型生态系统中进行平均时,托管者为自己的计算能力设置自己的价格将趋于稳定。

 

另一个稳定价格的反馈回路是Holo托管在商品硬件上这一可行的事实。如果Holo信用的价格大幅上涨,人们就会激励它们将更多的计算能力连接到网络上。而且由于交易所的交易不可能大大偏离计算能力出售的价格,因此这种激励机制将大规模的价格水平放在了中心位置。这为Holo的价格提供了一个重要的重心,将它与一个具有实际价值的现实世界资产交付在一起。

 

价值稳定并不意味着静态 - 也没有某种固定价格。信用的价值取决于现实世界的因素,如电力成本,计算硬件和互联网连接。账户余额的变化越来越接近于信贷极限的小幅变化,以加强对大幅波动和人为操控的免疫力。[35]

 

Holo组织是一类特殊的用户,他们的初始信用额度足以限制从他们的帐户购买的所有预付款。该限制是根据基于实际增长和需求(主机数量,应用程序,用户数量等)的基础架构服务的估值算法计算得出的。交易费用应该包括运营和维护的大部分成本,信用额度是利用系统改进的资本。因此,供应的任何显着扩张也将与提高网络的价值和能力相关。

 

l  储备账户

 

我们预计通过储备账户发生的供应变化最大。当储备账户(例如Holo组织)出售相关外部加密货币或本国货币的托管贷款时,信贷的供应就会扩大。储备账户有一个特殊的算法,通过向他们的链提交一份保留证明的记录来证明在Holo信用的账户相关外部货币中支付款项。然后外部资金保留给提供信贷购买者服务的网络主机。通过储备账户赎回的任何信贷必须是通过提供托管获得的,这可以通过审计主办人的服务证明条目和交易历史来确认。

 

虽然储备账户可能会暂时扩大供应,但只是为了响应不断增加的需求。当主机兑换他们的托管信用时,供应再次减少。供应的扩张提高了主机的流动性,使他们有机会获得现金,从而增加感知价值.

 

 角色,信用额度和供应算法

 

Holo信用被设计为能够驱动分布式应用,这些应用是由提供计算能力的主机网络运行的。因此,在这个生态系统中定义了特定的角色和责任。这些角色中的大多数可以叠加起来,以便代理(具有私有/公共密钥的节点以及与Holo及其托管应用程序进行交互的功能)可以承担多种角色。这一规则例外是储备账户和充当基础设施提供商的Holo组织。

 

终端用户:Holo旨在帮助用户访问他们的应用程序,,并使数据安全和易于进行加密交易。与所有用户角色一样,主要权利和责任涉及遵循Holo应用程序DNA中编码的规则,这些规则可能包括在累积到付款阈值时支付交易费用。最终用户不能有负的余额。他们只能支付作为其正余额一部分的信用。

 

托管者:托管者有权在Holochain上复制和运行应用程序,复制和发布用户数据,但不授予他们对该数据的所有权。如果应用程序提供商删除应用程序,或者最终用户删除了其帐户,则托管者必须清除该应用程序以及该用户数据。除用于加密服务的底层Holochain引擎以及用于使用情况跟踪和支付处理的HOLO应用外,不需要Holo托管者来托管任何特定应用程序。托管者可以显式安装特定的应用程序,也可以阻止特定的应用程序。Holo应用程序在添加到框架后进行分类。

 

托管者可以根据应用程序类别,价格档次和使用需求指定自己的优先级和过滤器。如果托管者没有太多时间或兴趣来定制他们的应用程序,他们可以启动一个应用程序选择自动执行,这将触发安装具有更多需求的应用程序。自动执行是托管者在需要时通过在线刷新容量来增加收入的好方法。

 

托管者还可以设置自己的价格。有些人可能会选择免费托管某些应用程序 - ,SETI,Genome Mapping或其他有人希望与之共享算力的项目。有些人可能会选择比其他人更高的门槛,他们认为他们不想花费任何带宽或电力,除非他们的收入超过一定数额。

 

再次,就像在应用程序选择中那样,不想过多关注定价的托管者可以配置一个自动定价应用程序。他们可以设定基本的优先事项,例如试图服务于最大的需求,寻求最高的付款人,或者调整到一个良好的市场中间区域,以获取合适的托管容量而不被它拥堵。一旦托管者有三个月的托管记录,他们将收到与托管收入成比例的信用额度。信用算法包括反博弈机制来阻止欺诈交易来夸大个人的信用额度,因此一个托管者的信用与托管收入不会相同,但如果他们没有作弊,它就会与其相关联。他们获得的信用是因为我们将接收托管收入的历史解释为衡量未来盈余能力的良好指标。

 

应用程序提供商:应用程序提供商负责维护和保护他们在Holo上发布的应用程序。他们还同意及时支付服务证明发票。由于未付费发票对所有人都是可见的,因此托管者很容易证明付款失败。,也没有智能合约需要执行支付。托管者可以配置他们的应用程序选择偏好,以便根据年龄或未付费发票的积累进行过滤。托管者只会在应用程序提供商付款失败时停止提供服务。这种应付方式的好处是,反馈环路可以进行优化,以便做出更明智的选择,同时保持选择的能力。也许有人想支持一个无法支付的启动项目。也许他们是开发者的朋友。也许他们可以承担慢支付的风险,并因此收取更多费用。为什么要采用通用的智能合约取代人们的选择权?当拥有像Holo系统一样复杂的智能合约,我们既可以实现最佳功能的自动化,也可以包括人为选择。

 

如果应用程序开发者设置了在Holo中收到的订阅,产品或服务付款,他们将可以访问类似托管的多种信用算法。许多应用程序可能会以传统货币支付款项,并且不会从这些活动获得信用,但他们可以使用该现金从Holo储备账户购买托管信用,然后由托管者进行保留以备兑现。

 

应用程序开发人员:如果开发人员完成已开发由Holo提供的赏金,他们也将获得多种类似托管的多种信用算法。这可能只是生态系统的一小部分。

 

l  选择性自动化与智能合约

 

有时候,事务关系非常简单,以至于每一个重要的条件和意外事件都可以被编程。想象一下,一切顺利且准时的事情 - 比瑞士的火车时刻表更好。智能合约支持者主张通过消除所有模棱两可或人为错误的空间来达到这个目的。

 

然而,大多数情况下,现实世界比这个更加复杂。有时候,火车必须停下来,因为铁轨上有障碍物,或者一个人卡在门上。目前普遍认为通向清理和防欺诈系统的途径是计算自动化的。然而,很多人也认识到,“代码是法律”的第一次大规模[36 37]推出是一个讽刺,DAO是如此错误[38],以至于建立在其上的基础平台[39]必须重新设置才能阻止错误。[40]

 

这远远超出了不能指望无缺陷的代码这个事实,但实际上每个情况和极端情况都不可能一一被解释。试图这样做会产生较高的复杂性,增加错误呈指数级增长的可能性。如果你的智能合约说你不需要交付你刚刚建立的东西,除非在2450928块之前收到付款,而你的客户因停电,车祸或太阳黑子而无法支付您的费用,您真的想要排除您接受延期付款的能力吗?

 

Holo提供了良好决策所需的信息反馈环路,而不是取代人们选择的自由。在Holo应用程序中实现自动化操作非常简单,但结合自动化操作和更好的信息进行的决策更具灵活性。 Holo在内部托管市场中提供信息以促进以下内容:

 

●应用程序提供商可以根据其性能记录中的质量信息选择托管者,

●托管者可以根据付款信誉接受或拒绝应用程序提供商

●所有参与者均可查看来自“权证”的可信度数据,其中包含由参与者自己的密钥签署的欺诈行为。

系统最基本的“术语和条款”是写入Holo程序DNA的代码。然而,Holo也是一个有预期行为标准的托管共同体。社会协议的全面完成不能被编码为智能合同。相反,我们可以促进更好的集体智慧和健康的反馈循环,增强人们选择他们信任的行为,同时检测意外或不可预知的作弊和欺诈行为。所有类型的用户都会被激励不要欺骗系统中的其他人,并理解当他们欺诈被抓住时,Holo的所有特权可能被撤销。请记住,每个通讯记录和数据元都由其作者签署在不可篡改的链上,否则它不能传播。如果你是一个恶意的行为人,发布了记录你的行为的欺诈信息 – 这样就在犯罪现场留下了你的数字指纹。

 

这使得Holo生态系统有一个高级功能的“免疫系统, “因为任何一个节点可以创建一个标记欺诈行为的”搜查令“,并提供欺诈者的原始签名记录作为证据。由于识别出新类型的欺诈行为并能够发现,很容易确定谁有欺诈行为,然后传播搜查令作为欺诈证据,因此其它节点可以选择将其列入黑名单。

 

所有Holo用户的另一项协议是不会产生多余的,自主的或人为的拥堵(增加自己的或者交易对象的托管费用)。如果开发人员需要测试应用程序的可扩展性,他们必须在Holochain或独立的Holo测试网络上进行测试,测试节点(可能由应用程序提供商和开发人员提供)同意相互提供免费计算空间,纯粹是为了测试其应用程序的规模和缺陷。

 

对于复杂的关系生态系统来说,它远远优于为默认行为设置安全值的做法,然后让人们选择用自己的阈值来替换这些设置,并可以设置自己的特殊情况。但是由于系统的规模(包括微处理量和大容量),自动化某些功能至关重要。因此,交互的角色和过程是非常小的。以下是我们迄今为止只简单解释的自动处理的类型和操作说明:预授权通证,服务证明发票和交易费用(用于预授权的特殊结构实例)。

 

l  自动交易的预授权通证

 

因为每笔交易都需要双方的同意和参与,才能将其写进本地链,预授权通证是一种优化速度的机制。一方可以事先提供明确的许可,将交易时间缩短到毫秒,并且无需获得某人的批准。这将通常需要同步人机交互的进程转换为可以异步和自动化的进程。或者更准确地说,它减少了与预授权者的同步交互,简化成签署交易并提供链的当前顶部哈希值。

 

预授权如何工作:预授权方,例如服务证明收据中的托管者,向其源链提交一个条目以完成交易所需的数据。根据编码到应用程序中的透明度或隐私的级别,它可能是一个带私人节点到节点消息发送的预授权代币的私人入口。在其他情况下,它可能是一个公共条目,分享给DHT,然后与收款人链接并给他们提供检测,供其他人查看。

 

l  服务证明发票

 

服务证明发票是公开的,因为Holo将它们用于不仅仅是便利支付。托管必须承诺公开他们的链条目:1)付款人的ID,2)发票金额,3)托管应用的ID,以及4)托管应用的服务日志中的开始/结束序列ID。它会自动分享给DHT,并且它的链接也会在[ProviderID + AppID]的基本哈希上发布,并标记为“发票”。

 

支付服务证明发票:每个应用程序提供商可以定期[41]从他们自己的[ProviderID + AppID]哈希值链接的发票进行检索,并按照以下步骤处理它们:

 

1.   流程分析队列:

(按照时间戳排序链接的发票,从最早的开始)

 

a.在收据中检索引用的服务日志(并可选择保存它们)。如果主机没有响应/不在线,请尝试下一个收据.

b.记录的服务和费用总计,并与总发票费用进行比较。

c.为欺诈检测执行默认(或根据定制和需要的详细情况)统计分析。所有的统计处理都在应用程序提供商的本地计算机上进行,因此它们可以使其尽可能地复杂,而无需支付分布式计算费用。

d.如果一切正常,然后添加到付款队列;否则,如果数量不准确,则拒绝发票并向付款人发送要求更正的消息;否则,如果有欺诈行为,记录问题,并产生一个公开通知欺诈的“证据”。

 

2. 处理付款队列

 

a. 通过带有空Receiver_Current_Header的信息发送交易到托管者。超时后,转到下一个收据

b. 主机自动检索其预授权条目,并且如果Payor和Amount匹配,则批准。主机通过生成他们的下一个链头并分享它,来填充他们当前的链头哈希和“预先飞行”,但不提交链头。 (或者如果没有找到匹配的预授权代币,他们会拒绝它。)

c. 应用程序提供商/ 付款人将交易签名到他们的链中,并用他们用已经提交给写入链的新链头进行回复。然后,付款人可以使用签名和已发布的交易作为付款证明,以从其哈希表中支付链接的发票。

d. 使用付款人的链头信息,收款人可以将预提交链头写入到他们自己的链中,并附加付款人的链头作为新的签名。如果收款人没有获取付款人的链头信息,收款人将被冻结在预执行模式下,直到超时后才能提交另一个链条。收款人然后在DHT上检查付款人的链头信息。如果找到,他们使用这个链头信息完成提交,否则放弃预执行链头信息并解锁付款人的本地链。

 

服务证明发票的非交易使用:

 

●应用程序提供者及时付款的公共责任,使得托管者确定是否他们想要托管某些应用程序。在开始工作之前,您是否曾希望您的客户需要6个月的时间来支付您的费用?

●公众对于主机性能水平的可见度.

●将访问密钥交付给应用程序服务日志。这使应用程序提供商可以汇总其应用程序的统计信息,即使服务提供可能分散在数千甚至数百万台计算机中。

●日志的访问密钥也使应用程序提供商能够在向托管者授权付款之前异步执行统计分析和欺诈检测。

●托管的日志访问可以是公共或私人的(访问密钥使用提供商的公钥加密)

 

l  交易费

 

交易费是预授权结构的特例。为避免处理额外的交易和每笔交易的额外预授权分录,交易费用被嵌入到标准交易代码中,并在某人的余额的标准状态计算中进行核算。在计算某人的余额时,将收到的资金添加到他们的余额中,并从余额中扣除消费的资金,并包括承诺的扣除并作为专项资金的一定比例交易费。

 

如果专用费用达到支付阈值(初始1个信用),为了获取交易费,下一个链条入口必须是Transaction_Fee_Promise。这笔费用承诺(假设它等于增加费用)将专项费用重置为零,并重新计数。与服务证明一样,这将是一个公开入口(所以在检查过程中可以看到),发布到DHT中,并与Holo的基础设施提供商帐户链接。[42]

 

费用按照上述的服务证明类似过程被汇总,但是包括了在创建承诺的预设时间段内由付款人发起的交易。基础设施帐户被配置为正确的自动接受付款Transaction_Fee_Promises而不需要人为干预。在优化微型交易的系统中,在交易费支付到期之前,应该允许每条链上的成千上万次交易的费用收益。如果用于更大规模的交易变得普遍,将会实现小交易费的大额支付交易模式。遵守支付时间段可以通过相互链间审计来强制执行,因此不需要提高执行权限。

 

付款人发起的独立支付允许在简单交易结构中仅限于交易双方。然而,使用预授权通证,很容易就可以自动分割多方之间的交易 - 一种简单,轻量级且易于组合的方法,可以应对更复杂性情况。

 

l  通用目的转账和交易

 

Holo需要能够支持不仅仅是托管交易的通用转账和交易。以下是一些原因的基本示例:

 

●应用程序提供商在Holo上有几个应用程序托管。为了保持清晰的会计记录,他们为每个应用程序维护单独的帐户。 App X是他们的主要收入来源,其中有很多Holo信用额的订阅收入。他们定期从App X转移到App Y和App Z的账户以支付托管费用。

●主机有多个设备,每个设备在该设备的账户中获得信用。他们希望将他们的信用汇集到一个帐户中以进行大额购买

●应用程序提供商需要向应用程序开发商支付服务

●应用程序开发人员需要向分包商支付开发服务。

 

托管交易结构已经足够灵活支持普通的用户交易,而且它们对于Holo托管生态系统中行为人的顺利运作显然是必需的,所以没有理由人为地限制人们进行他们需要的任何支付交易。

第三部分:安全考虑

 

 最小化攻击面

 

为了安全意识,我们在这里将简要回顾常见的加密代币的漏洞。

 

l  匿名性

 

Holo货币与现有的大多数加密代币之间的动机和目的存在根本差异。 Holo信用不构成匿名加密现金。这是一个价值稳定,相互可计量的加密经济。人们有不同的原因需要匿名(意识形态,逃税,,非法活动等)。因此,他们可以建立其它基于Holochain的货币以提供给匿名者和混合交易者。 Holo最初并未针对匿名进行本地优化。[43]

 

本文没有考虑可能违反Holo货币交易中作为缺陷出现的匿名行为,因为匿名不是我们设计的目标。设计中包含了连续负责制- 不是一个错误,而是一个功能。因此,该货币未针对非法,黑市或地下活动进行优化。Holo信用被优化以建立一个持续可靠的,对等的托管服务提供商网络。

 

为避免Sybil账户而采取的额外安全措施是,应用程序提供商在签署他们在Holo上托管应用程序的协议时,会进行真实身份验证。另外,希望通过储备金账户兑现其全部Holo的主机必须共享识别信息。为了进一步减少与未付款相关的风险,只能选择与在系统上具有长期利益关系的已识别人员进行交易。利用其DPKI应用程序[44],可以连续的跨多个应用程序环境进行全面的身份识别,它可以与您选择的去中心身份服务相连。

 

l  共识攻击

 

区块链存在大量旨在破坏性共识的攻击。通常的应对措施是需要大量的节点[45]和大量的算力[46]以防止过度劫持共识。但是,由于Holo的货币不是基于代币存在的共识,而是基于个人对交易历史的责任,所以没有人需要相信未知的共识。您可以随时审核您的交易相关方的链来验证其状态,并知道他们拥有所需花费的信用。除了你自己和你的软件安装之外,你不需要信任任何人。因此,共识的攻击对Holo不起作用。这些攻击这包括多数(或51%)攻击,大多数Sybil攻击,具有高算力的攻击者,高能耗(用于工作量证明),交易的选择性删除等。

 

 绝对主义攻击

 

区块链是一种基于数据的单一授权现实共识管理策略,并制造了关于时间的单一授权现实[47]。在Holo上,没有代币双重消费,没有绝对的时间序列来破解时钟漂移,只有当地的序列和每个代理商链上不可变的历史。因此,Holo不容易受到单一授权数据集的攻击,也不会受到通用时间序列的攻击。这消除了双重支付,时钟漂移以及大多数分段和可伸缩性攻击的漏洞。

 

l  双花攻击

 

尝试以低确认数进行对高价值交易的欺诈是一种特殊的双重支付情况,称为双花攻击。这种攻击更有效,因为有一个潜在的Holo变量,我们必须至少提供一个基本的防御.

 

试想Alice没有用托管信用进行小型交易,而是在一个普通交易中向Bob支付1百万Holo信用。首先,Alice为她的本地链做了一个备份,然后花费了100万给Bob。 Alice立即从备份恢复旧链,然后在Carol能够在DHT中验证前试图花费同样100万给Carol。这是以“代理为中心”的“双重支付”代币 - 在主要交易之前回滚自己的源代码链,以试图从他们以前的用余额继续消费。

 

首先,由于所有互信交易都由付款人和接收人共同签名,并写入双方的链内,我们不依赖于Alice的诚实来广播。作为收款人,Bob非常乐意发布交易,并确保他收到的100万被网络确认。 Holochain有一些内置的安全功能,这些功能在Holo应用程序的配置中打开:

 

1)源链头信息被发布并作为其作者的DHT条目上的链接设置.

2)链头信息的序列ID被标记并连接到其作者的DHT哈希。

 

因此,Alice的DHT中邻居节点持有其源链头信息和其序列ID的副本。当鲍勃公布他的交易副本以及Alice的签名来验证Alice的链时,它会传播到Alice的邻居节点的DHT中。 节点自动检测链头序列冲突并将其标记为无效。

 

针对双花攻击的基本防御可以添加到任何应用程序中,通过让某个应用程序特定阈值(例如100)来暂停收款人与风险相关的时间许可交易(例如log2(txAmt)* 10秒)获取交易收据。因此,对于那个100万的交易,当Alice与Carol进行交易时,他们被锁定延迟3分钟以上,以允许任何以前的交易时间传播[48]。然后Carol向Alice的邻居请求头确认信息[48]。如果任何节点报告了Alice未提供给审计的源链中的条目信息,则Carol检测到双花攻击。由于Holochain节点可以自动检测重复的头信息序列ID,所以这种欺诈行为不值得在小型交易中冒险使用,因为犯罪者最终会被列入黑名单。

 

l  恶意节点/竞争代码

 

如果一个代理人窃取他们的代码,那么异常输出将无法通过随机DHT进行验证存储这些产出的节点将被标记为欺诈行为,并且不会传播。不良交易无法扩展并且会导致节点将代理列入黑名单。这类似于在区块链上提交坏区块是无法得到验证的,除非,Holo链节点只能成功地复制自己的实际情况,而没有人知道他的链的有效性。

 

 垃圾交易

 

节点无法与自己发生交易,交易中的交易对方必须具有不同的身份。两方(或一个人控制两个账户)可以迅速交易,每次转账支付交易费用。这种行为模式通常会使两个交易节点陷入困境。其他人不会被阻止进行交易,但是,这会在节点间引起一阵骚动。这可能会导致被列入临时黑名单,如果他们的节点检测到这种行为是DDoS攻击。

 

l  非法内容

 

由于Holo积分针对大量微交易进行优化,因此它们不会带来太多的支付负荷。因此,内容(需要处理的非法的)不能被放进你被迫持有的交易中。但是,应用程序当然可以构建来保存这些内容,因此主机应该在选择要运行的应用程序时慎重选择。请注意,小的有效负载大小并不意味着您无法完成强大的计算任务或引用有用的内容,但该计算和内容必须在应用程序中设置,并且只能在交易中触发或引用。

 

l  与区块链一样存在的问题

 

Holo并没有在密码学领域引入新的突破,也没有想出如何防止网络拥塞和人为错误,所以我们仍然会遇到与区块链一样的基本漏洞。

 

l  破解密码

 

SHA256似乎目前没有被破解的危险[50],但是加密算法是可配置的,并且可以在更高版本中替换为新加密算法。我们还没有把重点放在量子防御设计上,随着我们的密码学家和开发人员的增长,很高兴来我们将在后期版本中考虑这个问题。.

 

l  DDOS

 

Holochain已经实施了一些初始机制来减少信息风暴,并可以拉黑DOS攻击者,但是其中许多优化将会需要随着时间改进。如果有足够的的攻击者,一个分布的DOS攻击检测和阻止仍然是个挑战。 DDOS攻击不可能瘫痪整个应用程序或Holo网络,但是如果它针对网络上的单个节点,它肯定会至少暂时破坏他们的网络服务.

 

l  人为错误

 

人们仍然会丢失密钥,使用弱密码,感染计算机病毒,有时他们将放弃社区甚至死亡,留下不活跃的账户。这与现有加密货币发生的情况没有什么不同。 Holochain的核心DPKI应用程序(分布式公共密钥基础设施)可以帮助管理密钥,管理撤销方法,并在密钥或设备受到威胁时重新控制应用程序。

 

l  结论

 

我们已经提出Holo作为超越区块链和其他基于共识的分布式计算策略。具体而言,Holo将以代理为中心的方法结合到加密货币设计中,从而建立一个无代币的加密记账引擎,从而无需将算力或网络流量投入到共识或者代币全局账本的同步中。

 

我们已经说明了我们如何利用游戏原则理论和生活系统反馈环路为货币单位的价值稳定建立均衡。我们将区块链O(n)在交易数量上的计算效率转换为O(log n)。[51]我们最终阐述了基于区块链货币的常见安全问题。

 

 优化

 

在展示的HOLO加密货币引擎基本操作的范围外,我们得出了许多优化结果。一些示例如下:

 

●链上数据可以从交易双方传送到大区块中

●可以从DHT中检索头信息以确保链与DHT中验证的内容相符

●通过保存最新的审计点的书签和状态信息,代理可以避免审核他们之前审核过的链部分

●Holo会计应用程序可以安排季度更新,以防止交易链不合理的增长。

 

l  批评

 

Holo很可能会因为共识,匿名以及支付给单一的基础设施提供商的集中交易费用的看法而偏离预期,引发批评。对于这些问题,请记住,Holo是完全分布式Holochain应用程序到达主流用户的桥梁,其信用仅仅是Holochain可以运行的众多货币之一。Holochain已经提供了一个完全去中心化的替代方案,同时Holo包含了一些最重要的去中心特性使其更易于访问,更为实用并且广泛使用.

 

l  关于长期存在性的信息

 

一些倡导者相信比特币将永远运行。我们希望Holo不会。通过建立Holochain的广泛采用,Holo被设计为摆脱自身业务。一旦人们运行Holochain节点,他们不需要任何人为他们提供托管服务。这可能需要几年或几十年,但Holo是一个过渡性平台,其半中心化特征可能足以推动人们完成这个变革。

 

对未来工作提出的问题:

 

●Holo的货币引擎是否可以复制用于由能源,食品,住房,交通等提供商的分布式网络支持的新型加密货币?

●如果将应用程序更改和版本控制的管理集成到每个人都在运行应用程序,这是否构成了针对公共或平台合作的新的类DAO模式?

●可交互操作的资产支持货币联盟是否可以利用Holo的计算能力和加密会计引擎建立足够稳定的协议,以便主流的经济活动从石油-美元转移到加密-信用?

●如果所有的现代货币都是用法币创造的,那么所有的经济学都只是人造稀缺法定货币的经济学吗? 什么才是自足经济?

 

 

 

参考文件:

1 Reference to the HOSTING paper

2 Engineering Efficiency analysis by Phillip Beadle? ( not yet published )

3 https://www.sciencealert.com/bitcoin-and-ethereum-were-two-of-google-s-most-popular-searches-this-week?perpetual=yes&limitstart=1

4 https://trends.google.com/trends/explore?date=2007-01-01%202017-10-01&q=blockchain

5 https://www.cbinsights.com/research/financial-services-corporate-blockchain-investments/

6 https://www.cnbc.com/2017/08/09/initial-coin-offerings-surpass-early-stage-venture-capital-funding.html

7 https://www.enterpriseinnovation.net/article/how-are-governments-using-blockchain-technology-1122807855

8 https://www.foe.co.uk/sites/default/files/downloads/transnational-republics-commoning-reinventing-governance-through-emergent.pdf

9 https://hackernoon.com/blockchains-dont-scale-not-today-at-least-but-there-s-hope-2cb43946551a

10 https://digiconomist.net/bitcoin-energy-consumption

11 https://digiconomist.net/ethereum-energy-consumption

12 Where did I see .0001% that monetary claim recently? ( TODO )

13 https://techcrunch.com/2017/04/20/whats-keeping-cryptocurrencies-from-mass-adoption/

14 https://www.cnbc.com/2017/09/13/john-mcafee-challenges-jamie-dimon-bitcoin-skepticism.html

15 ASIC and GPU links TODO

16

17 Holochain Whitepaper or github repo

18 https://wiki.p2pfoundation.net/Arthur_Brock_Against_the_Consensus_on_Data_Consensus_in_the_Blockchain

19 http://holochain.org/white-paper COMING

20 http://www.zerohedge.com/news/2015-11-19/bitcoins-computing-network-more-powerful-525-googles-and-more-10000-banks

21 http://holo.host/white-papers This link does not work

22 Participatory governance of the Holo ecosystem will eventually be implemented as a Sovereign Accountable Commons (SAC), Holochain’s version of a Decentralized Autonomous Organization (DAO). For more information on SAC’s see:https://medium.com/metacurrency-project/sovereign-accountable-commons-2e5a9ad49dd7

23 http://www.accountingexplanation.com/double_entry_system.htm

24 Apparently double entry is so assumed by GAAP that they don’t mention it explicitly, I’d like to find an explicit statement of requirement between GAAP and double-entry

25 Greco, Thomas “Money: Understanding and Creating Alternatives to Legal Tender” p.136

26 There is so much confusion about this in the crypto community that we should cite some good source describing these which predates crypto. Fiat does not equal national currency as the crypto-heads would lead you to believe. And this ALWAYS triggers confusion among people who now believe fiat=national so we have to give them a place to get that cleared up.

27 Find a good dictionary definition of Fiat that matches this (or collect a couple)

28 In the ultimate example of creation from nothing, in the Latin version of the Bible, God says “Fiat Lux!” --“Let there be light.”

29 https://en.bitcoin.it/wiki/Mining

30 How Banks create money

31 Note: The notion of credit limits tends to trigger acculturated fears of enslavement to debt, but with mutual credit, nobody can have a positive balance without people having negative balances. Debt need not be stigmatized. Credit limits just need only be managed responsibly.

32 This happens when an account has room in its credit limit to spend further into the negative, but the amount paid to the counterparty wasn't enough to bring their negative balance into the positive.

33 Gartner projection

34 We’ve tested running up to 75 simultaneous applications on a $35 Raspberry Pi

35 Something describing pump and dump dynamics

36 https://www.coindesk.com/code-is-law-not-quite-yet/

37 https://medium.com/@VitalikButerin/why-cryptoeconomics-and-x-risk-researchers-should-listen-to-eachother-more-a2db72b3e86b

38 http://vessenes.com/deconstructing-thedao-attack-a-brief-code-tour/

39 https://blog.ethereum.org/2016/06/17/critical-update-re-dao-vulnerability/

40 https://blog.ethereum.org/2016/07/26/onward_from_the_hard_fork/

41 Frequency of payments vary by the processing load of an app. The general guideline is to pay it before receiving the next invoice, because hosts default to stopping hosting when they get multiple backlogged invoices. Depending on the app, this could mean payment in minutes, hours, or weeks.

42 To prevent DHT “hot spots,” there will be multiple Holo accounts to send transaction fees to, with a simple balancing algorithm.

43 Public global ledgers are not really optimized for anonymity either. https://news.bitcoin.com/one-of-the-largest-bitcoin-mixing-services-closes-its-doors/

44 At the very least the DPKI app repo should have some info

45 Articles about min viable network size for bitcoin to prevent control

46 https://freedomnode.com/blog/86/cost-of-51-attack-and-security-of-bitcoin-monero-litecoin-and-other-cryptocurrencies

47 http://wiki.p2pfoundation.net/Arthur_Brock_Against_the_Consensus_on_Data_Consensus_in_the_Blockchain

48 This logarithmic approach is still 10 times faster than waiting for a few Bitcoin blocks, and the two parties to the transaction are the only ones waiting. Millions of other transactions could be processing independent of them. This confirmation delay never need be applied to Holo’s standard micro transactions, because they are all below the delay threshold.

49 John Nash “Equilibrium points in n-person games”: http://www.pnas.org/content/36/1/48.full?ijkey=e322e2d8bd7f4202fc752d7b80b1efedaa637516&keytype2=tf_ipsecsha

50 Matthew Amy et al. “Estimating the cost of generic quantum pre-image attacks on SHA-2 and SHA-3”:https://arxiv.org/abs/1603.09383

51 TODO === I actually haven’t finished writing the the Order of Complexity section.