理解MaidSafe 就像理解蚁群的分工合作
作者:TIM SWANSON
译者:享乐才子
如果你能了解蚂蚁的组织,你就可以理解MaidSafe【1】
就其本身而言,一只孤单的蚂蚁既脆弱又易被边缘化。然而,当与其余蚁群一同工作时,大致相同的娇小特质组成的蚁群,却可拿下更大的猎物,他们还可明确路径,以及保卫家园不受灾害(不论是自然还是人为的)。
我和MaidSafe的CEO David Irvine交流时,他用这个类比描述MaidSafe的去中心化属性是如何工作的。MaidSafe将自己视为一个完全去中心化的网络,全球范围内任何人都可以访问的去中心化储存平台。在过去8年里,团队已编写了许多算法来协调、兼容和控制各个独立节点,这些独立节点不断地重复简单基础的工作——就像工蚁。
因为用户数据被复制到分布于不同地理位置的4个服务器中,所以即使1或2个节点因为网络原因中断,网络的冗余性和安全性依然首屈一指。
共识
开始于一个自我验证、不可变数据组成的大大简化的数据网络,MaidSafe的开发人员达到了这个目的。随便取个名字Bob,如果Bob读取数据,生成哈希,生成的输出必须是相等的,这样他们才是同一件事情。这意味着很难找到一个攻击载体或创建一个病毒来改变状态或是破坏网络。
数据很难被删除的另一原因是,团队实现了通过加密技术保护的链式共识途径。因为网络能说“我虽然不知道你是谁?但我能识别你。”即使电脑很蠢,但MaidSafe可要求他们做一些简单的事情,然后所有电脑一起协调工作来完成它。每个节点都被要求做简单的事情,如果不做,就被剔除出去。
比起做一个宏大的人工智能计划,Irvin及其团队并没有用几百万行代码来创建一个像Watson超级计算机的巨大系统【2】。相反,他们采取了不同方法,用每个人的电脑来实现简单、可重复、可衡量的小任务【3】。实现Heinlein说过的——昆虫的专业化——Irvine指出,经过1.5亿年的自然选择,每只蚂蚁都有不同功能:一只清洁蚂蚁,一只劫掠蚁,一只兵蚁——所有蚂蚁都根据目标来改变他们的行为和模式,“每个节点就像是一群蚂蚁,虽然一滴水可以杀死一个蚂蚁,但当几百万的节点聚集在一起的时候,你就可以看到他的扩展性。当一个节点试图删除信息,临近的节点就报告该节点,并从网络中删除该妥协的节点。”
作为一个节点加入网络时,它必须成为加密秘钥对的一部分,并连接到最近的节点地址,然后剩下的节点才会接受它们。MaidSafe网络用一个如上所提,基于共识的机制,链接共识(类似blockchain)。因此,每组节点都会观察其他节点,观察他们的确定性行为。与Tor或是FreeNet相比,每个在MaidSafe的节点都不相同,创建的自治网络中,每个节点都有一个地址,以完成特定的任务,像储存、寻找、确认和筛选数据不变的链(称之为数据管理器)【4】。
就像Irvine指出的,“沿着墙往上爬,或者沿着墙做圈,这可能不是一只非常聪明的蚂蚁,但如果你在附近土堆扔垃圾,他们会将它立即清理干净。【5】同样,他们也可以通过合作,将猎物拿下。MaidSafe基于相同原理,单独个体不够聪明。在我们的大脑里,每个细胞本身是愚蠢和无用的,但如果你把所有的神经元和突触结合在一起,它们会创造出一些神奇的事,人类就是这样。在我们的大脑,数万亿细胞都在执行一个简单动作,如果你破坏这个简单动作,系统还是可以绕过它。事实上,我们的团队不是由一些杰出的加密天才组成;我们相对普通。我们所做的就是将逻辑做得尽可能简单。我们不能描述所有蚂蚁,或大脑细胞,或一群人的行为,但我们能描述一个细胞或是一只蚂蚁。”因此,当你加入所有聚合节点时,整个系统通过团队合作产生的效果远远大于各部分的总和。
大胆的目标
受制于计算机科学,根据Irvine所述,他们有3个特定问题需要解决:创建一个强加密系统,使其能够自主运行并且不受制于人。[6]
1) 你如何加密数据,使其无论如何被破解,数据仍不能被利用?系统必须被设计为,你甚至可以把数据给你最大的敌人,即使他们破解了所有的数据加密,他们依旧不能利用数据。
2) 据Irvine所说,“人类无法抗拒改变,进化迫使我们适应它。一个自治网络必须抵抗人类干预,因为人类行为不可重复,且会被愚弄系统的尝试所腐化。相反,我们可以把我们的信仰寄托在数学上,如果人类试图干预,网络的其余节点就会放弃它。”
3)MaidSafe另一种不同的方法,是通过一个自我鉴定机制,允许人们登陆并获得私有数据而不需知道一个地址。以前网络设计的问题和漏洞之一是,你不能登陆分布式网络,因为必须有个地址和你连接。这就会导致单点故障。而MaidSafe,没有密码在你的计算机和系统网络上。
为了解决自治障碍,MaidSafe将信息,分割成小块,然后使用数据映射,为每一块建立哈希值,并将这些数据放入一个容器中。然后系统将其压缩成块并使用AES256加密,并使用另一个块的哈希(类似于用于比特币的Merkle哈希树)。【7】数据块1和数据块2的哈希混合在一起,但这并不是用于加密目的,相反,他正试图在这种情况下将数据和创建随机化,数据块1变成随机的。然后过程再一次重演。其结果是一个预加密的哈希,然后附加在数据块1上。在Irvine说来“这并不是一次性的最大万灵方案,相反,他是一个预加密的哈希,基于均匀随机信息的分布。我们将这两个哈希和XOR数据块合并。【8】如果黑客拦截它,他们所能做的就是以十六进制,从000到FFF,将所有打印出来,然后猜测。你不能重复它,世界上也没有足够的纸来实现可视化。”
然后如何加密呢?如果任何加密算法都是可以被破解,那么数据会不会暴露呢?根据rvine的说法,真的创造出真正的噪音(true noise)是不可能的,因此,从凯撒开始,每一个加密系统最终都会被破解,因此用户不能只依赖AES加密,尽管很多人相信“它不会被打破”【9】。因此Irvine坚持,必须基于这样的机制——通过哈希的随机输入,使用伪随机数确定,然后经过XOR数据合成,达到难以捉摸的一次性密钥。
除了持有专利的描述(将由一个非盈利组织持有,且仅用于防御目的),还有几个学术论文讨论高度混淆的自我加密数据(据Irvine所说,学者不喜欢称之为加密,他们称之为‘模糊’[obfuscation])。【10】数据通过预加密哈希将自身加密,这意味着如果Bob有一个当前数,并将它储存为输出块,为了解密,Bob必须有原始信息。因此这是实时处理的一式三份,更重要的是,网络知道它有一个副本,但不知道他来自哪里。因此,基于行业数据,MaidSafe有可能恢复世界上95%的磁盘空间。例如,平均而言,一个备份磁带通常有20个副本文件,因此如果你删除所有不需要的冗余副本,一个企业也可以恢复95%的磁盘空间。当供应链组合在一起,新的经济规模就会发生。【11】或如Irvine所说,“Google已经使用2倍的空间量,因为他们不想数据混在一起。这种加密方法可以适用于任何公司,创建一个高度加密的客户端,却只使用1/20的空间。”
谜题的另一部分是自我证明:如果Bob能连接到一个节点,Alice怎么就不可以呢?MaidSafe通过以下过程来解决这个问题。用户将电脑上10GB的空闲空间放在网络上,并进行密码确认和创建证书。因此网络知道和承认某个ID可以储存一定数量的文件——这是一个宝贵的资源,因为数量是有限、稀缺的。反过来,网络允许你储存在其他系统上,因为你已经生成了proof-of-resource资源证明(由事务管理器验证),表示您提供了10GB的空间。因此你可以拿走及使用已经储存空间的证明,以及相同数量的网络空间(即相等物),就像在比特币网络上使用的代币允许用户的使用和转让。
下一步,据Irvine所说:“尽管人类接收到证书,系统也不会立即储存10GB的信息,相反,他需要预加密的哈希,创建一个含有所有信息的根目录(所有在你生活中想要获取的文件),然后在根据循环压缩算法进行压缩,然后,小信息加密的密码由您和同时另一个随机数生成,并储存在两个随机的位置。因此有两个密码,第一个密码识别它在哪里储存,第二个密码则加密价值,信息价值所储存的根源。如果Bob用其他连接到互联网上的电脑,这个密码的功能就像脑钱包,将由本地内存解密。【12】这将创建虚拟自动防故障系统,任何人包括黑客都可以去你的博客,驻留在MaidSafe网络,但没有人可以拆卸或DDOS攻击它,因为它并不存在,他只是一个位于数学上的未知位置的信息。
在Irvine看来,这样的功能允许人们最终“开始实现真正的网络。如果你使用任何计算机,输入你的密码,电脑就可以重新映射出来,就像你自己在 驱动。8.3EB字节的信息可以储存在这个磁盘。因为它是虚拟磁盘,他驻留在内存中,因此没有任何迹象表明你已经使用它。这就是你登陆了数据:你不知道它在哪里,但数据成为了你的电脑”
简而言之,你使用你的密码来解密数据客户端,但网络并不知道数据的存在。因此没有像Heartbleed那样的安全漏洞可以被利用。【13】
这让Irvine认为,“这可能是我们第一次可以使用生物识别技术来保护数据”然而,他警告说“因为许多机构已经拷贝了他们,所以Bob依然可以偷偷地扫描Alice已知的信息,这意味着一些用户可能无法使用该功能”
尽管这个有限的缺点会影响任何类似的系统,“但当你思考时,还是有几个相当大的问题需要思考。网络是最难危害的,因为网络边界会自我照顾。我们讨论的是密码保护身份。以前我们使用一些web-of-trust,但是这并不起作用,因为人类的信任,或目前和VeriSign公司相关。我们所做的是把Verisign的功能转化为数学程序,而不是使用时间戳,MaidSafe使用熵。它使用时间(时间从不传播),因为它是不自然的。相反,熵是不断变化的,网络熵总是增加(通过布朗运动)。因此我们不得不删除时间来使算法正常工作,实际上,如果你引入时间,复杂性将会增加。”
团队
Irvine指出,解决这些问题需要不寻常的思考,作为一个机械工程师,他从未正式学习过计算机的运作,他认为这为他提供了一个优势。因为计算机工程师在早期训练中就被要求登陆VeriSign,并从VeriSign获得证书,所以他们将在很大程度上无法跳出这个圈子来提出解决问题的方案。【14】然而你给开发人员一个在他们生涯中未见到的新工具,“他们将创造神奇的东西” Irvine建议。
用他的话说,“在办公室里的一个家伙,以前是一个消防员,一个数学天才,全球最优秀的C++程序员之一。我们可能没有世界上最好的团队,但这是一个很好的团队,他们不怕犯错误,在白纸板上,比其他人走得更前,并知道他们可能会被告知‘方法上有漏洞’”
项目开始与2006年2月,大多数投资者是亲密的朋友和家庭成员,据Irvine所说“他们让我们很诚实,为正确的理由做正确的事情。”
当人们将一些底层技术与比特币比较时,Irvine指出,“早在2006年,我就确定了我们正在做什么,我们习惯称之为电子现金或是无限期货币,它是一个加密货币,分布式的,完全无法被审核,还可能达到数十亿每秒的处理速度,这意味提供兑现本身的速度。当比特币解决了双花问题,它在一个集中的块链上运行,就好像共享相同的电子数据表,在可扩展性方面并不出色。如果MaidSafe那时就存在,比特币可能会成为一个分散网络和以去中心化的方式解决了拜占庭将军的问题。【15】然而,比特币表明的是,如果你以一个自动程序来取代垃圾,如果人们参与,会使其运行得更好。对我们团队来说,我们会简化我们看来可以删除的代码,然而在其他组织,如果在代码顶部打一个补丁代码,最终会带来太多的if语句。”对我们来说,我们知道我们很可能会删除,而不是添加更多的if语句。”原因之一,他相信他的团队超过其他竞争对手、已经尝试过的成功之处在于,MaidSafe的开发人员尽量不简单添加额外代码或规则来解决问题,而是把潜在的故障代码替换为更基本的东西。
MaidSafe放弃其所有资产包括它的软件,因此在过去的6个星期,其开发人员的邮件列表已经发展到200多人,问如何参与该项目(被称为Project SAFE)。【16】 Irvine说,“我们将它提供给世界,教人们如何为其编写程序。”作为即将到来Safecoin集资的一部分,该公司将设置6个独立的国际开发小组,与MaidSafe团队竞争。【17】换句话说,他们已经拿到了8年的投资,筹集资金,建立自己的竞争。但是Irvine还有更大的计划“我不在乎谁提出了这一理论,我们移除了其出现之初带来的自负,我们不跟踪谁发明了MaidSafe的哪一部分。只要它在社区,这就是它应有的方式。”
【1】Maidsafe
【2】Watson是一个由IBM开发的人工智能项目,最值得注意的是它在2011年世界杯击败了2个人类的挑战
【3】Marvin Minsky在《The Society of Mind》描述过其中一个想法,自然发生的秩序源于简单的代理。
【4】Tor发布了自己的项目Toroken。详见《Behind the movement to build a faster anonymous network from The Daily Dot》
【5】在他即将出版书的序言中,Andreas Antonopoulos使用工蚁作为例子,来说明由一组简单规则产生的建设秩序,详见《Mastering Bitcoin: Unlocking digital crypto-currencies from O’Reilly Media》
【6】“Big Hairy Audacious Goals”是由James Collins 和Jerry Porras在最近创造的术语
【7】高级加密标准(AES)是一种加密标准,于1998年首次出版,广泛采用许多不同的机构。
【8】XOR代表独有的或逻辑操作。
【9】作为一个有趣的密码学虚构历史小说,建议读者细读由Neal Stephenson所创作的《Cryptonomicon》
【10】详见Vitalik Buterin所写《Homomorphic encryption and Cryptographic Code Obfuscation: Decentralized Autonomous Organizations Are About to Take a Huge Leap Forward》 。
【11】David Irvine使用现代电灯泡的例子来解释,其组成部分来自一个相互联系的全球供应链(如灯丝来自中国公司,玻璃来自美国公司,等等)。
【12】详见Vitalik Buterin所写《Brain Wallets: The What and the How》
【13】Heartbleed是OpenSSL的安全漏洞
【14】详见《Neuro-linguistic programming》
【15】Paul Bohm很好地解释过,比特币如何解决拜占庭将军们的问题(也称为两位将军的问题),请参阅《Bitcoin’s Value is Decentralization》
【16】白皮书称MaidSafe.net项目为“project SAFE”
【17】详见《Safecoin (a type of “AppCoin”), Safecoin, why it’s safe and what it means for us all》 以及《MaidSafe Prepares for Safecoin Crowd-Sale to Facilitate “Decentralized Internet”》
原文:http://bitcoinmagazine.com/12397/maidsafe-is-making-data-safe/#userconsent#
专访 Mable Jiang:复盘 Multicoin 投资方法论与 DeFi 洞察
原文标题:《对话 Mable:复盘 Multicoin Capital 的投资方法论与 DeFi 观察 | 链捕手》受访者:Mable Jiang,Multicoin Capital 执行董事撰文:王...
信标链、PoS、分片……接触以太坊 2.0 得先理解这些术语
原文标题:《以太坊 2.0 术语库》整理:ETH 中文网Attestation 证明证明是指验证者所发起的投票,由验证者的签名聚合而成,用以证明区块的有效性,投票通过验证者的余额进行加权。Attest...
手把手教你搭建 IPFS 私有网络
在联盟链的场景下,IPFS 作为去中心化存储的首选方案,本文将介绍如何使用 go-ipfs 搭建一个私有网络并进行简单使用。...