聚沙成塔的分布式云存储
爱好摄影的李阿姨最近正被一件“大事”所困扰。李阿姨每年都会约朋友一起去国外旅游,拍摄了大量的照片留作纪念,并时常与朋友分享。平时李阿姨把照片存在电脑硬盘里,甚至不让老伴碰这台电脑,就是担心老伴不小心删除了她的“宝贝”,但是不幸的事情还是发生了。有一天当她打开计算机后,发现硬盘上的照片打不开了。她心急火燎地给电脑厂商打电话,厂商说硬盘早过了保修期,能不能恢复数据要看硬盘的受损情况,一周以后消息传来,硬盘数据已丢失,照片无法恢复。有没有一种办法,能解决李阿姨的问题,实现信息的安全、永久存储呢?
分布式云存储
答案就是分布式云存储。中心化的存储方式或多或少面临着信息安全和永久存储的问题,而基于区块链技术的分布式云存储将是解决这一问题的最佳方案。与目前中心化提供的云存储空间不同,基于区块链技术的分布式云存储不但可以储存,还可以同时证明这份数据是真实可信的,并且永远不会被修改。区块链的特点就是分区块存储的,每一块包含一部分交易记录。每一个区块都会记录着前一区块的ID,形成一个链状结构,因而被称为区块链,以此来保证每一个块上的信息都是不可更改的。区块链实际上就是一个分布式数据库,是加密后分散式存储的云存储。
基于区块链的分布式云存储主要具有如下特点:
1. 实现碎片资源的可利用
每个人都可以通过分享个人的硬盘空间获得金钱回报。这个金钱回报由租户直接支付给个人,提供服务的平台只收取微小的服务费。可以理解为平台就是硬盘存储的Uber。
2. 大众广泛参与
所有人都可以访问公开区块链上的数据,所有人都可以发出交易等待被写入区块链。共识过程的参与者(对应比特币中的矿工)通过密码学技术以及内建的经济激励维护数据库的安全。
3. 高效、低成本运行
区块链技术在网络上是公开、透明、开源的。不需要通过任何的机构及组织,可以随时随地上传、下载所需要的信息。比起购买昂贵的存储设备及配套的人力来说,租用硬盘空间比较经济、实惠。
4. 较高的安全性
传统的云存储公司购买或租用服务器来存储他们的客户文件,同时使用RAID方案或多数据中心的方法来保护数据的安全性。而使用区块链技术不需要中心化,不需要购买昂贵的设备及维护人力。区块链技术让文件存在于一个分布式、虚拟和分散的网络中,这样就不需要像传统的云存储公司那样依靠硬件的维护来保证存储的可靠性。
中心化的云存储早已进入商业应用阶段,如亚马逊的云平台十分强大,足以让用户以平台为基础开发某些复杂度高得惊人的功能,支撑亚马逊云平台强大功能的就是百万级数量的服务器。根据2015年公布的数据,亚马逊在全球11个地区部署了服务器,每个地区建立了数个数据网络,全球共拥有28个数据网络。每个数据网络由一个或多个数据中心构成,通常配备5万~8万台服务器。据保守估计,亚马逊在全球范围拥有150万台服务器。市场研究公司Gartner的分析师估计,亚马逊的服务器总数达到200多万台。亚马逊的云平台庞大而复杂,几乎可以说,支持这一平台的数据中心可以构成地球上最大的计算机,从某种意义上来讲,它就是一台通用功能的巨型计算机。报告显示,亚马逊云服务在全球云市场中占据了27%的份额,微软的份额约为10%,随后是IBM和谷歌。
图4-4 云存储与用户空间的可视化
资料来源:https://storj.io/storj.pdf
从图4-4我们可以很容易看到,图表实心块是目前几家大公司所具有的存储能力,空心是我们现有的可以使用的存储空间。不论Facebook、Microsoft、Amazon,还是Google公司,服务器再多,再如何增加,都不能与我们现有的可以使用的免费的存储空间相抗衡。
我们可以畅想,电脑制造商们将会设计一款没有硬盘的计算机,因为好处是显而易见的,“我们的电脑不需要硬盘”光是这句广告语,就足以让“粉丝”们兴奋不已,不假思索地下单。“精明”的用户可以算一笔账,假如说我们买一台笔记本原来可能会花费1万元,但是没有硬盘的话,应该在8千元左右,而我们只需要再拿出很少费用租用一个云存储即可。
在区块链上提供去中心化云存储方案的有Storj公司。该公司组织的网络可以提供大约超过1500TB的存储空间,大约有430名“矿工”,它使用的“燃料货币”是Poloniex交易所上最古老和最有价值的币种之一。Storj是如何解决文件的存储、加密功能的呢?
图4-5清晰地解释了文件如何被存储。我们可以理解为文件被自动分解成字节,存在A\B\C三个不同的硬盘上,而私钥就在你自己手里,不论是提供服务的服务商Storj公司还是为你提供存储库的人都没有私钥,这就解决了信息被泄露的问题。还有一点,如果万一你的私钥不小心泄露,拿到私钥的人得到了你存在某个硬盘上的信息,这块信息也有可能是一段乱码,而不是一整篇文章。更让人惊叹的是依靠区块链技术我们还可以做到多重备份,比如上例中的李阿姨,她把照片上传后,还是不放心图片存放在一个人那里,则可以在保存文件的时候,同时备份1份到6份,这可以理解为硬盘保护的“加强版”,当然所付的费用会高些,但是相对于购买昂贵的硬盘来说还是比较经济的。
图4-5 切分过程可视化
资料来源:https://storj.io/storj.pdf
Storj在2015年11月28日发布了首个图形界面的版本,让普通人可以自由地分享他们的硬盘空间,而不需要任何特殊的IT技能。每个用户可以根据分享的免费空间来获得他们的SJCX,这取决于共享空间的大小和时间。SJCX是Storj网络系统中的一种代币,可以把它想象成一种“货币”。用户可以在指定的“商场”中使用和流通这种“货币”,也可以通过SJCX来租用或者购买存储空间。Storj公司从测试开始已经进行了4轮代币发送,大约发送出347000个SJCX,预计在测试结束前大概还会释放出80万个SJCX。
其他区块链相关服务
SIA、Maidsafe和以太坊也提供类似服务。
SIA是另外一个有趣的项目,该项目计划通过应用程序开发来整合存储能力。为此,它和去中心化的应用平台Cripty合作,实现能够让开发者写他们自己的应用程序这一目标。Cripty提供了一个真正基于区块链的,能够部署去中心化应用的完整解决方案,同时还提供了一个绝妙的用户体验,让任何人都可以在数秒内进行安全和简单的交易。但从现有进度来看,SIA项目还远远落后于Storj,即便它已经推出了图形界面客户端,但论坛上缺乏活跃用户,并且在Poloniex上对于SiaCoin的介绍也不是很好。SIA开始进入市场时价格大概是6900聪,目前已经下滑到5聪左右。
Maidsafe是一个开源项目,它声称会给世界带来一个“去中心化的互联网”。MaidSafe的团队有16名成员,据网站说已经在一起工作8年了。MaidSafe网络即将公开beta测试,将会在内部进行运作。该公司代码的主要部分将会在开源许可证的情况下进行下载。
以太坊也许是未来Storj最为危险的竞争对手,其已经发布了一个测试版本,称为Ethereum Frontier。以太币目前在Poloniex交易所中是交易量最大的数字货币,并且目前整个项目看起来已经初具规模。它提出要建立“去中心化的软件平台”,能够让所有人在平台上进行构建自己的去中心化应用。以太坊还列出它的豪华合作伙伴阵容,目前没有任何团队可以与之匹敌,其中包括微软、IBM和三星。