LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 行情分析 > 保存濒危数据的说明:是时候进行分布式管理了

保存濒危数据的说明:是时候进行分布式管理了

2020-06-09 引擎存储 来源:火星财经

万维网是不稳定的。它是一个信息,讨论,数据和分析的网络,它依赖于HTTP链接来维护各部分之间的连接。这些链接不可靠,因为它们指向的内容不稳定。如果您依靠HTTP服务作为权威数据源,那么您的基础就是不稳定的。下次您遇到这种不稳定情况的痛苦时,我鼓励您将其视为您应该接受分布式网络的标志。

集中化是网络遭受的一种疾病。它使网络不稳定,不安全并且容易受到利用。 我们可以通过更改信息链接的方式来解决该疾病。

例如,现在气候科学家正急于备份气候数据集。几十年来,他们一直依靠美国政府来保存他们所依赖的大量气候数据。数据已集中在少数服务器上,这些服务器已被视为数据的“权威”位置。现在,研究人员担心不再依赖这些服务器是不安全的。这引发了#DataRescue和Guerilla归档的巨大努力。

当GeoCities关闭时,发生了类似的情况。当人们在删除有争议的推文和备受关注的Facebook对话之前捕获快照时,也会发生这种情况。这些都是人们对网络的不稳定和不可靠性做出回应的例子。当今的万维网已不再是一种弹性系统。

从技术角度来看,问题在于数据的集中化。我们所依赖的任何数据都应在许多地方冗余保存。政府,研究人员,图书馆等都应该拥有他们关心的任何数据集的相同副本。今天这是可能的,但我们根本没有这样做。为了使该系统更具弹性,我们需要停止依赖位置来区分数据,而要使用一种称为“内容寻址”的技术来将“权威”数据与其他数据区分开。

您可以立即进行此切换。IPFS,BitTorrent和Dat等技术和协议使您可以在动态,可扩展的对等网络中分发数据的相同副本。这些分散的Web技术将使现在保存危险数据的过程变得顺畅,并且可以防止将来再次发生此问题。

注意,与保存濒危数据的主题特别相关的是,Internet档案馆一段时间以来一直鼓励使用分布式技术。他们甚至于2016年6月主办了分布式网络峰会。

本文档概述了使用分布式网络需要了解的概念,并概述了使用分布式网络来拯救濒危数据所涉及的策略。

问题:通过内容位置识别内容

当您使用http://或https://链接指向网页,图像,电子表格,数据集,tweet等时,您将通过其位置来标识内容。链接是指向Web上特定位置的标识符,该位置对应于Web上某处的特定服务器或一组服务器。 控制该位置的人控制内容。这就是HTTP的工作方式。它是地址寻址的。即使有一千个人下载了文件副本,这意味着内容存在于一千个位置,HTTP仍指向一个位置。这种位置寻址方法迫使我们所有人假装数据仅在一个位置。控制该位置的人将决定人们使用该链接时要返回的内容。他们还决定是否返回任何内容。

为了了解按位置定位内容是多么不切实际,请想象一下我是否使用位置寻址来推荐《信息为什么会增长》一书。

如果我通过书的内容来识别这本书,说“检查出CésarHidalgo撰写的《为什么信息会增长》,ISBN是0465048994。”,您将可以从任何来源获得该书的任何副本,并且知道自己阅读我推荐的信息。您甚至可以说“哦,我已经读过”。或“我的室友在另一个房间里拥有它。我会从他那里借来的。”,从而节省了自己获取另一份副本的成本或精力。

相比之下,如果我使用位置寻址来识别这本书,则必须指向一个位置,说出类似“去位于费城Market&15th的新闻台,并索要距南端16英寸的东西。东墙上的第三个书架”这些指示既令人困惑又尴尬,但这就是http链接的工作方式。他们通过内容的位置识别内容,并依靠该位置的“主机”向访问者提供内容。这种方法有很多地方可能出错。无论您要控制的位置是谁,在此情况下,书报摊都会给您带来很多力量和责任。

让我们考虑控制我们所指位置的人的责任。如果运行报摊的人们希望我的指示(也称为我的“链接”)保持有效,从而允许人们访问该书,则他们必须:

如果有人想读这本书,请始终保持24/7开放。

将书籍提供给所有寻求书籍的人,无论是一个人还是成千上万的人。

通过防止任何人篡改本书来保护本书的完整性。

切勿将书从书架上移开-如果他们扔掉了书甚至动了书,我的链接就会坏掉,没有人能够使用我的指示来查找书。

除了这些责任外,还有很多权力。报亭的所有人控制着我的指示所指向的位置,因此他们可以选择:

决定允许谁看书。

移动书时不告诉任何人。

销毁这本书。

向人们收费以获取书籍或强迫他们走进门去观看广告。

使用他们想要的信息收集访问我的书的每个人的数据。

用其他东西代替书本-他们甚至可能没有在那儿放书,因为我的指示只是描述一个位置,恶意行为者可以用危险的东西代替这本书,从而使该位置变成陷阱!

位置寻址已经在网络上工作了25年,但现在开始变得痛苦不堪,而且情况还会越来越糟。只要我们继续依靠它,网络就会继续不稳定,不安全并且容易被操纵或利用。

解决方案:通过指纹而不是位置来识别信息

另一种方法是通过“指纹”来标识内容,而不是通过其位置来标识内容。这样,当有人说“用此指纹查看内容”时,您可以从拥有内容副本的任何人那里获得它。为此,我们通过其密码哈希来识别内容。密码散列是由字母和数字组成的短字符串,通过将您的内容输入到诸如SHA的密码散列函数中来计算。

当我们以这种方式标识内容时,使用内容的加密哈希而不是其位置来标识内容,这称为content-addressing。内容的加密哈希永远不会改变,这意味着内容寻址可确保链接始终返回相同的内容,无论我从何处检索内容,无论是谁将内容添加到网络,以及无论何时添加内容。内容已添加。这就是使用像IPFS这样的内容寻址协议而不是像HTTP这样的位置寻址协议的基本能力。

这种分散的,内容寻址的方法从根本上提高了数据的持久性。它确保只要有人仍然依赖数据,它就不会受到威胁,因为任何人都可以持有他们关心的数据的有效副本。如果您在任何设备上都持有数据集的副本,或者如果您付费让某人为您将其托管在IPFS节点上,则您将成为保护该数据集免于丢失的管家网络的一部分。您不必担心有人会因为主机之一而关闭要托管数据的服务器。您和您的同龄人可以自己保存数据,并且可以彼此直接共享数据,而无需依赖集中的故障点。

由于链接是按内容寻址的,因此分散化还可以提高数据的完整性。这意味着我们可以通过检查链接的数据指纹来验证数据。使用位置寻址的链接无法进行这种验证。这在大规模情况下尤其强大,成千上万个数据集相互引用数百万次。使用位置寻址的链接,所有这些连接都很脆弱。使用内容寻址的链接,连接可以恢复。

如何做到:将内容写入IPFS并发布哈希

IPFS是一种内容寻址协议,旨在替代HTTP。该协议有多种免费的开源软件实现。您可以使用该软件来运行IPFS节点,将数据添加到IPFS网络或保存其他人已发布的数据副本。

如果要使用IPFS保存数据,则需要将内容写入IPFS,然后使用IPFS协议在同级网络中复制该内容。为此,有四个主要步骤:

在具有Internet访问权限的计算机(笔记本电脑,台式机,服务器等)上安装IPFS节点。

将内容添加到您的IPFS节点。

告诉您的同龄人您添加到IPFS的内容的加密哈希(也称为指纹)。

通过“固定”其IPFS节点中的哈希值,让您的同级将内容的副本复制到其计算机上

IPFS社区正在组装去中心化Web入门,它描述了如何执行此操作以及更多操作。入门工作尚在进行中,但关键部分已准备就绪。如果您想帮助改进本文档,或者有任何特别需要改进的地方,请在github仓库上创建问题。我们将很高兴为您提供任何帮助,反馈或鼓励。

本文档的下一部分涵盖了通过IPFS复制内容的基本概念和步骤。如果您想实际使用这些技术,请参阅入门手册,并利用随时可以提供帮助的IPFS社区。在ipfs github存储库上有一个社区资源列表。

将内容写入IPFS

第一步是在计算机上安装IPFS节点,然后将内容写入该节点。IPFS节点是您如何参与对等网络,从其他节点读取内容并向请求它的节点提供内容的方式。当您将内容写入IPFS节点时,人们将能够使用其哈希/指纹来请求该内容。

IPFS是一项相对较新的技术。目前该文档非常少,而且非常技术性。IPFS社区正在不断努力改进文档并使其更易于访问。如果您想通过编写或查看文档来帮助完成此工作,请使用此处列出的资源参与其中,或者在IPFS社区github存储库中创建问题

这份《费城代码》研讨会的内容与去中心化Web入门中最完整的部分链接。它们涵盖了您安装IPFS节点并将数据集添加到该IPFS节点所需了解的所有核心知识

固定数据以保存

IPFS具有将内容固定到IPFS节点的概念。当您将内容“固定”在IPFS节点上时,您正在将内容的哈希(也称为指纹)添加到节点的固定集。只要您在节点的引脚集中设置了该哈希,该节点就会在您的计算机上保留相应内容的副本。

当您将数据集写入IPFS时,您的IPFS节点将为您提供该数据集的哈希值。然后,您可以将该哈希传递给任何对等节点,并要求他们将其固定在其IPFS节点上。在您将哈希添加到IPFS节点的引脚组后,该节点将与IPFS网络上的对等节点协调,以将数据的副本拉到您的计算机上。

发布哈希

分布式Web的真正力量是任何人都可以参与的事实。如果发布要保存的内容的哈希值,则任何关心数据的人都可以固定自己的副本,从而分担了存储和提供数据的负担。

没有发布哈希的既定方法。一种明显的方法是将它们发布在网站或博客上,但是还有许多其他选择。想法是散布散列,以便人们知道要使用或固定的内容。从长远来看,您需要考虑如何发布哈希,因为您希望人们获得有关数据真实性,版本控制等方面的信息。下一部分将介绍其中的一些策略。值得庆幸的是,您以后可以回填很多信息。在短期内,关键是将散列信息发给可能希望帮助您保存数据的人员。

我是否需要担心不良内容会进入我的计算机?

IPFS是点对点技术,这往往引起对不良内容的担忧。人们想知道“如果我运行IPFS节点,这是否意味着人们可以在未经我许可的情况下使用我的机器来提供不良内容?” 和“我的IPFS节点会在我不知情的情况下将不良内容拖到我的机器上吗?” IPFS的维护者非常重视此问题。IPFS协议经过明确设计,以确保您完全控制哪些内容通过IPFS进入您的计算机。您的IPFS节点将仅读取您告诉它要从网络读取的内容。它只会存储您告诉它存储的内容。这使您可以确信不良内容不会意外到达您的计算机上。如果网络上有人发布了不良内容,则该内容不会泄漏到您的IPFS节点上。您必须明确请求内容,才能使其到达您的计算机或什至通过您的计算机。

覆盖您的基础:使内容具有弹性的策略

为了真正长期保存濒临灭绝的数据,您需要以可恢复的方式存储和分发数据。这需要做的不仅仅是将数据写入IPFS,并要求您的朋友将数据副本固定到他们的计算机上。您还需要考虑冗余,可用性,真实性,版本控制和保留之类的问题。这是对每个问题的快速概述,并提供了一些有关如何在分散的环境中进行处理的提示。

与图书馆员交谈

解决这些问题时,查看库以寻求启发或指导会很有帮助。图书馆经常谈论围绕其馆藏提供三种服务:保存,发现和访问。如果您希望人们与您收集的内容互动,则需要支持所有这三个方面。如果您在这些区域中的任何一个滑倒,人们将无法使用您的内容。这适用于当前的问题-为了保存您的濒危数据,您需要涵盖所有这三个基础。您需要保留内容,以便人们仍然可以使用它。您需要保留有关内容的元数据,以便人们可以搜索或浏览元数据以发现您在收藏中拥有什么。最后,您需要为他们提供一种访问内容本身的方法。

说到图书馆,请致电您的图书管理员,并向他们寻求建议。图书馆可以帮助您弄清楚其中的一些内容。他们甚至可以帮助您存储和提供数据。 如果您是图书馆员,请考虑在库中运行IPFS固定服务,或者考虑运行IPFS哈希表。之后,请致电您在另一个图书馆的朋友,并请他们也考虑一下。

实现冗余

大量副本可确保人员安全。这是任何保存策略的基础思想。甚至有一个名称相同的项目,可以帮助图书馆保留数字内容(可惜,它还没有使用IPFS)。为了保护您的内容,您希望将其固定在多个地区,多个组织,多个司法管辖区的位置。

您还可以将巨大的数据集分布在多个对等点上,以便一组参与者可以共同努力来保存超出任何个人存储能力的数据。

确保可用性

如果您希望数据在线可用,那么冗余是不够的。您需要确保其中一些副本在网络上实际可用,否则任何人都将无法访问内容。为了使数据始终在线可用,您需要确保始终有IPFS节点连接到网络,并将数据副本固定在这些节点上。

确保可用性的简单方法是在已经连接到Web 24/7的服务器上运行某些IPFS节点。如果将数据固定在这些节点上,则只要这些节点保持活动状态,数据就将保持可用。这是云服务如何有用的一个示例-您可以在托管服务或云服务上运行IPFS节点,然后将内容固定在那里。

有许多策略可以使内容以更强大的方式可用。例如,如果您可以访问多个数据中心,则可以将内容固定在两个数据中心的节点上。这将允许您同时通过多个管道提供内容。IPFS团队当前正在开展一个名为ipfs-cluster的项目,该项目可让您根据不同的策略配置和协调IPFS节点和引脚集。

确保真实性

一旦您的数据泛滥成灾,我们如何知道哪些数据是真实数据?到目前为止,我们一直说“如果它在您的服务器上,那么它一定是您希望我看到的真实信息”,以此作为真实性的代理。这是一种建立真实性的可怕方法(主机可能篡改数据,黑客可能在没有人知道的情况下更改数据,数据可能会意外损坏等)。尽管如此,这就是我们长期以来一直在网络上建立数据真实性的方式。这是我们根深蒂固的习惯,我们不能依靠分布式技术。有什么选择?

使用内容寻址协议,我们只关心哈希(地址)的来源。基于该哈希,我可以从许多地方获取内容。这使得知道哈希是真实的非常重要。我们想知道谁说 “正确的数据具有此指纹”。或“我们的官方数据的当前版本具有此指纹。” 或“我改进的数据版本具有此指纹”。并且我们想确切地知道它们提供的哪些哈希作为指纹。

有很多方法可以告诉世界哪些哈希是您内容的“真实”指纹。他们每个人都有优点和缺点。这些方法中的某些方法可以在服务器关闭和组织拆除后幸存下来。其他的则更易于理解和实施。有些依赖诸如图书馆和报纸之类的独立机构。其他人则在不信任的环境中工作-他们避免依赖任何中央权威来建立真实性。

建立数据真实性的关键思想是将有关内容哈希值的权威性声明放入公共记录中。诀窍是选择无法关闭或损坏的地方。例如,您可以将散列放在您的网站上,但是如果您的网站被关闭,您将失去该真实性证明。更糟糕的是,如果有人接管了该网站并发布了不良哈希值,那么很难找到信任的人。这就是为什么真实性很棘手的原因。

相对可靠的低技术方法是将散列图发布在报纸或学术期刊上。这依赖于这些出版物的发行渠道,以确保对散列的持久访问。

您也可以去图书馆,要求他们运行经过身份验证的内容地址注册表。从长远来看,他们可能会使用区块链来做到这一点(见下文),但是从短期来看,他们可以保存信息并通过任何可能的方式对其进行重新分配。

这两种方法都依赖于独立机构(报纸/期刊出版商或图书馆)将您的权威性声明记录为公共记录的一部分。这些方法容易受到攻击,例如图书馆的资金被削减或出版商被迫发布不良信息,但它们比在您的网站上发布哈希值更持久。

指示哈希来源的最技术上最正确的方法涉及公共密钥密码学,您可以在其中用安全的私有加密密钥对哈希(或有关哈希的元数据)进行签名。这相当于使用蜡封将文档标记为真实的加密方法。遗憾的是,尽管公开密钥密码术已经存在很长时间了,但是用于管理密钥和签名内容的工具仍然笨拙而令人生畏。这是不幸的。当有人围绕这些技术构建正确的用户体验时,世界将受益匪浅。许多项目正在解决该问题。Keybase特别有前途。

依赖公钥加密的一种技术是IPNS,即IPFS名称服务。IPNS仍在开发中。在IPFS白皮书和IPFS规范中对此进行了解释

另一个仍处于起步阶段,因此难以采用的流行技术是将哈希值写入区块链。区块链是去中心化的分类账。我们说之所以分发它们,是因为它们不受任何个人或团体的控制,每个参与账本的人都拥有账本的同等有效副本。当您在区块链分类账上编写交易时,参与分类账的所有各方都可以看到该交易,任何人都可以在不依赖中央授权的情况下验证交易。这意味着您可以将哈希值写入区块链分类账中的交易中,从而以一种很难擦除的方式使其在全球范围内可见。即使您要消失,甚至您的组织消失,分类帐将显示您已宣布这些哈希值。为了破坏该记录,恶意方将不得不损害分类帐中的大多数参与者,而分类帐通常遍布世界各地。这使得它成为保存少量防篡改内容(如我们宣布的哈希)的最有前途的方法之一。

处理版本控制

这不是一次性过程。在大多数情况下,数据集会随着时间变化,增长和发展。为了适应那些不断变化,增长,发展的数据集,我们需要一种方法来跟踪内容的不同版本。值得庆幸的是,内容寻址为您提供了正常跟踪版本所需的基本构建块。强大的版本控制工具(例如git)建立在相同的内容寻址基础上,并使用加密哈希来构建信息树以表示历史记录,版本,分支等。

例如,每次创建新版本的数据时,您都会使用新的哈希值来唯一标识该版本。这真的很强大。剩下的唯一挑战是告诉您的同伴哪些哈希对应于哪个版本。您可以通过多种方式来执行此操作。最简单的方法是在文本文件中列出哈希值以及一些描述。如果您希望该信息是机器可解析的,则可以将其放入JSON而不是自由文本中。

去中心化网络的一个惊人好处:您也可以将版本信息放入IPFS,发布整个版本历史记录的哈希值。

目前,尚无很好的工具来使用IPFS内容构建此类版本历史记录,但所有内容都已存在。如果您认识某个软件开发人员,他们正在寻找一个好的项目来全力以赴,请向他们指出。我们很乐意帮助他们解决它。鼓励他们通过在IPFS社区github存储库上创建问题来表达自己的兴趣。

保存数据

最后,除了冗余,可用性,版本控制等之外,还有保存的问题。为了制定保留策略,您需要查看威胁模型,然后弄清楚如何保护数据免受这些威胁。

保存是涉及文件格式,存储设备,组织可持续性等方面的一个巨大主题,但是与该文档肯定有关的一件事是:您不应仅依赖IPFS。您还应该将内容存储在各种位置的各种联机和脱机存储设备上。

这就提出了内容寻址非常有价值的另一种方式,因为我们用来标识IPFS中内容的哈希可以用作校验和,用于验证数据的任何副本,而不管它们存储在何处。对于您存储在IPFS之外的数据副本(可能是备份硬盘驱动器,脱机存储或内存晶体),您可以随时通过检查其加密哈希并确保这些哈希与那些哈希匹配来验证这些副本。你已经发布了。内容寻址的链接可以识别内容的位置,即使该内容位于IPFS之外。

为什么已建立的工具不够好

所有关于权力下放和内容寻址的讨论听起来都是过分的。与过去15年的工作方式相比,这是一个重大变化。作为结束语,我们将探讨一些不足以依靠现有工具和技术的原因。

仅将数据移动到新的受信任位置有什么问题?

仅将数据移动到新位置是不够的,因为它使位置寻址的所有问题永久存在。断开我们一直依赖的基于位置的链接会带来所有的痛苦和不便,但不会带来切换到内容寻址方法的任何好处。

为什么每个人都下载数据副本还不够?

许多副本可确保资料安全,但是将数据副本下载到许多位置基本上是在采用分布式方法,而不使用任何分布式工具。您需要一种针对内容的方法来回答诸如“谁拥有数据副本?”,“这两个数据副本是否相同?”之类的基本问题。为了传达诸如“这是数据的最新版本”和“我有数据的最后三个版本。您想要哪个?”之类的信息,

我们不能使用云来备份数据吗?

不干胶标签:“没有云。它只是别人的计算机。”

许多人将云服务与数据备份相关联。将您的数据副本转储到任意数量的云服务上很容易,并且大多数云提供商都渴望出售其服务非常适合备份和灾难恢复的想法。

好消息:这意味着几乎每个人都可以轻松配置相对便宜的存储量。坏消息:这不能单独解决根本问题。

正如设计师克里斯·沃特斯顿(Chris Watterston)在一个流行的贴图中恰当地表达的那样:“没有云。它只是别人的计算机。” 将数据移到云服务上并不能解决集中化问题。它仅使我们很容易在一定范围内配置存储空间和/或计算功能。那是一个强大的工具,但不是完整的解决方案。

有一种方法可以利用云的便利性和成本优势来协助分散工作。首先,将您的内容添加到IPFS。然后,租用多个独立的云服务来存储内容并使用IPFS服务。这为您提供了服务冗余。理想情况下,还请他们将其存储在多个不同的地理和政治区域。这样,可以保护您的宝贵内容免受单一实体和基于位置的风险的影响。而且由于内容是由IPFS寻址和提供服务的,因此云提供商无法控制或更改内容。这是使用云的正确方法:为了方便起见,但不将控制权移交给它。务必将副本也保留在其他地方,以防万一。您永远都不知道何时云服务可能会关闭。

图书馆可以拯救一天吗?

是的,图书馆可以在其中发挥重要作用。分布式技术非常适合图书馆。对于您来说,与图书馆合作是一个令人难以置信的机会,可以为人们创建一个弹性的基础设施,以共享和保存数字信息。

成为您的数据管理员

如果您想获得本文讨论的内容的帮助,或者想为IPFS和所有使之成为可能的工具做出贡献,请转到此处或发送电子邮件至[email protected]。如果您有一个用例,但IPFS需要更多功能或错误修复,请在此处发布问题。

如果您能想到您想保护的世界之外的数据,请采取步骤进行保存。分散的技术最终使我们所有人都有可能成为我们关心的信息的管家。

本文来源:引擎存储
原文标题:保存濒危数据的说明:是时候进行分布式管理了

—-

编译者/作者:引擎存储

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...