比特大陆蚂蚁矿机S7

去中心化自主公司之一:公司真的需要人吗

自然而然 发布在 比特币 3 12487

lobbyist

 

美国总统候选人Mitt Romney提醒我们说,公司是人。不管你是否同意他的支持者从这句话中得出的结论,这句话在很大程度上都是对的。除了在一套具体的规则下共同工作的一群人外,公司究竟是什么?一家公司拥有财产意味着有一项法律合同规定这些财产只能在当前该公司董事会成员的控制下用于某些用途,而董事会成员本身由一群特定的股东指定和更换。公司做任何事情都必须经董事会同意。公司雇佣员工意味着这些员工同意在一套具体的规则尤其是涉及到报酬的的规则下为公司的顾客提供服务。有限责任公司是一群对政府起诉较少担忧的被给予了额外活动特权的具体的人。这群人虽然比单独行动的普通人有更多的权利,但是归根结底还是人。无论如何,公司只不过是人与合同而已。

然而,这里出现了一个很有意思的问题:我们真的需要这些人吗?从一方面来讲,我们需要这些人。尽管在某个后奇点时代未来机器将能独自生存,但是在可以预见的将来,某种形式的人类操作对机器与物理世界的互动仍将是必要的。但另一方面,在过去的二百年里我们越来越不需要这些人了。工业革命允许我们历史上第一次开始大规模地用机器生产取代人类劳动,而现在我们已经进步到利用数字化工厂和机械手臂自动生产像汽车那样的复杂商品了。可是这仅仅使公司底层自动化。虽然去除了对普通劳动者的需求,取而代之为人数相对少的自动机械维护人员,但公司的管理方式仍然没有改变。问题是:我们能从另一个角度看问题吗?尽管我们仍然需要人类来完成某些专业化的任务,但我们能把管理人员去掉吗?

大部分公司都有某种形式的使命宣言。使命宣言经常涉及到为股东赚钱,有时包含与他们创造的具体产品有关的某种道义责任,有时提到最起码在理论上帮助业界融合。现在,只有董事会或从根本上说股东阐明使命宣言,它才存在。但是,在现代信息技术的帮助下,如果我们能把使命宣言写进代码里,将会怎么样?也就是说,如果创造一种不可违反的合约,这种合约为公司创造收入,给行使某些职责的人报酬,为它自己连续运作寻找装备设施,并且这一切都不需要自上而下人类的管理,那将会如何呢?

正如Let’s Talk Bitcoin的Daniel Larmier在他自己对这个理念的探索中所指出来的,从某种意义上讲,比特币本身可以看作这种事物的一个很原始的雏形。比特币有2100万份股票,这些股票由可以被视为比特币股东的人或机构所拥有。它有雇员,有给他们发工资的协议:大约每十分钟所有雇员中就有一位得到25比特币。他甚至有自己的市场部,在很大程度上由股票持有人构成。但是,比特币的功能也很有限。它几乎对除了当前时间之外的外部世界一无所知,没有办法改变除了挖矿难道之外自身功能的任何方面。它其实不对自己做任何事,而仅仅存在着,等待世界来发现自己。问题是:我们能做得更好吗?

计算

显而易见,首先遇到的挑战是:这样的公司在现实中如何做决策?最起码给定可预测的环境后,很容易编写出接收给定的输入并计算出相应的要采取的行动的代码。但是谁将运行这个代码呢?如果代码仅仅以计算机程序的形式存在于某个特定的机器上,什么将阻止那台机器的主人关闭这个计算机程序或者甚至修改这个程序使它把自己的所有钱都发给他?对于这个问题,只有一个有效的答案:分布式计算。

可是,我们在这里提到的分布式计算并不是诸如SETI@home和Folding@home之类的计划中的分布式计算。在那些计划中,仍然存在从分布式节点收集数据并向外发送请求的中央服务器。但在这里,我们需要的那种分布式计算是我们在比特币上看到的:去中心化地验证自己计算结果的一套规则。在比特币中,这种分布式计算的实现方式为简单多数投票:如果你不帮忙计算多数网络算力计算的区块链,那么你计算的区块将被遗弃,你也将得不到区块奖励。其背后的原理是:任何一个攻击者都不会有足够的算力来破坏简单多数投票机制,于是从根本上讲唯一可行的策略就是“随大流”,老老实实地为网络提供算力,然后接受自己的区块奖励。因此,我们能把这种机制简单地应用到去中心化计算中去吗?也就是说,我们能简单地要求网络中的每一台计算机评估一个项目,然后只奖励与大部分计算机答案相同的计算机吗?不幸的是,我们不能。之所以比特币是特例是因为比特币太简单了:它仅仅是一种货币,并不携带任何自己的财产或私有数据。但是虚拟公司将很有可能需要储存它的比特币钱包的私人密钥。这个私人密钥就是一条数据,它作为一个整体应该对任何人来说都不能获取,这与比特币的特点不同。当然,私人密钥仍然需要具有可用性。因而,我们需要的系统不仅是某种签署交易甚至产生比特币地址的系统,还是可以用去中心化的方法来计算的系统。幸运的是,比特币允许我们创造这一系统。

第一个可能立马想到的解决方案就是多重签名地址。给定一千台可以在大体上持续支持公司运作方面被信任的电脑,使每一台电脑都产生一把私钥,在它们中间生成一条501-of-1000的多重签名地址。为了使用资金,只需使用来自其中任何501个节点的签名构造一条交易,然后把这条交易放入区块链中。但这里的问题很明显:这条交易将会太大了。每个签名大约有70字节,因此501个签名将有35KB。由于比特币按照设置拒绝脚本超过10KB的交易,因此这条交易很难被比特币网络接受。其次,这个解决方案是针对比特币的。如果公司想为了非财政目的而储存私有数据,多重签名脚本就没用了。多重签名之所以有效是因为有比特币网络评估它们,并且是否把交易存入区块链取决于该评估是否成功。从本质上讲,在私有数据的情况中,一个类似的解决办法将要求某些去中心化的机构来储存数据并只在请求有1000个签名中的501个时才发出来。这使我们又回到了原点。

然而,另一个解决方案依然有希望创造我们所需要的系统。密码学家给这个解决方案的通用名称为“安全多方计算”。在安全多方计算中,程序的输入(或者更准确地说,模拟“电路”的输入,因为安全多方计算不能处理“if”命题和条件循环)通过使用一种叫做Shamir’s Secret Sharing的算法被分成若干份信息,其中每一个参与者获得一份信息。Shamir’s Secret Sharing可用来把任何数据分切成N份,并且其中任何K份都能恢复原始数据,但是任何K-1份都不能恢复出原始数据。在运行算法时,你可以选择K和N的值。2-of-3、5-of-10和 501-of-1000全都可以。然后可以根据分切而成的信息以去中心化的方式评估电路,使得在计算的最后每个人都有一份计算结果,但是在计算过程中的任何时刻任何个体都对计算状况一无所知。最后,所有的信息都被整合在一起来揭示结果。这个算法的运行时间是O(n3),也就是说,它用来评估计算的计算步骤的数量大约正比于参与者数量的三次方。比如说,10个节点对应1000步计算,而1000个节点对应10亿步计算。C++中的一个简单的10亿步循环在我的笔记本电脑上运行完大约需要20秒,而服务器可以在零点几秒的时间内运行完。因此,在满足计算可操作性的要求下,当前节点数量的极限大约为1000。

最终表明,安全多方计算可以用来生成比特币地址和签署交易。地址的生成协议很简单:

1.每个人生成一个随机数作为私人密钥。
2.每个人计算对应于私人密钥的公共密钥。
3.每个人显示他们的公共密钥,并使用Shamir’s Secret Sharing算法计算一个可以被1000把已被显示的公共密钥中的   501把密钥重构的公共密钥。
4.地址由那把公共密钥生成。

由于公共密钥可以被整数加、减、乘甚至除,这种算法的有效性惊人地与你的预期完全一致。如果每个人以相同的方式用1000把密钥中的501把合成一把私人密钥,则这把密钥将能够使用发送到由于把501-of-1000算法应用到对应的公共密钥上而产生的地址里的钱。这个方法之所以有效是因为Shamir’s Secret Sharing其实只是一个代数公式。也就是说,它仅仅使用加减乘除,一个人可以在公共密钥“上”计算这个公式,就像用这个公式计算地址一样简单。因此,私有密钥变换成公共密钥的过程是在使用这个代数式之前还是在使用这个代数式之后都没关系。签署交易可以用类似的方式完成,但是过程复杂了点。

安全多方计算的美妙之处在于它的应用范围超过了比特币。它可以同样方便地用于运行公司正常运作所依赖的人工智能算法。所谓的“机器学习”是检测现实世界数据的模式并允许计算机在没有人类干预的条件下对其进行建模的一类算法的统称,在诸如垃圾邮件过滤和汽车自动驾驶之类的领域中有着广泛的应用。机器学习也是“纯代数”,同样可以在安全多方计算中使用。实际上,一个算法只要分解成为一个能把输入进行适当切分的电路就可以在安全多方计算中使用。对可能的复杂度理所当然地有一些限制。把复杂的算法转化成电路时经常会引进额外的复杂度。正如上面所描述的,Shamir’s Secret Sharing 本身可以变得很昂贵。因而,它在实际中应该只用来执行算法的“核心部分”,而更复杂的高阶思考任务最好交给外面的承包商来解决。

对这个话题感兴趣?敬请关注第二部分、第三部分和第四部分:去中心化的公司可以如何与外部世界互动,一些简单的安全多方计算电路的数学工作原理,关于这些去中心化公司可以如何改变现实世界的两个例子。

(译文完)

原文标题:Bootstrapping A Decentralized Autonomous Corporation: Part I
原文作者:Vitalik Buterin
原文发表时间:2013年9月19日
原文网址:http://bitcoinmagazine.com/7050/bootstrapping-a-decentralized-autonomous-corporation-part-i/

翻译者:自然而然
若有翻译错误,欢迎留言指正。
如果这篇文章对你有所帮助,可以考虑向我捐赠bitcoin。
谢谢!
我的地址:139Yx8sV17BvyZE4j6GVSrtU9gHr9KkthT

版权声明: by nc" sa 作者保留权利。文章为作者独立观点,不代表巴比特立场。

评论:3

您需要登录后才可以回复 登录|注册
    Author Image
    changjia 1152 天前

    资助 0.15BTC
    交易ID 46483407bead61322f702d890d386f2c2c3b3adc830d6f2ff3a56584002a92a3

    +1
    +1
    我要点评
    裸漂筒子
    裸漂筒子 1153 天前

    马克一下,有空看。

    +1
    +1
    我要点评
    长铗
    长铗 1153 天前

    比特币不仅仅是一种货币,它具有改变现代公司制度的潜力,这是因为在现代信息技术的帮助下,如果我们可以把各种协议写进代码里,创造一种不可违反的协约,安全多方计算可以最大限度保障个人隐私,举个例子,在进行董事会投票时,你并不想让股票发行人知道你投给了谁 http://t.cn/zR5PHXt

    +1
    +1
    我要点评