Skip to main content
 首页 » IPFS

为什么ipfs非常有趣

2021年04月20日25

IPFS入门最全解析!

通信协议和分布式系统。对于两个人交换信息,他们需要一套通用的规则来定义信息传输的方式和时间。这些规则被广泛称为通信协议,但是它们很繁琐,因此我们将其简称为语言。如果您去过不说母语的国家,则可能会遇到通讯协议失败(或缺少)的情况。计算机就是这种情况。它们无法相互通信,并且作为隔离的计算设备存在,直到1980年代初发明了第一个用于计算的通信协议。

“协议要传达的编程语言是计算。”在计算机中,通信协议通常存在于多层捆绑软件中(称为协议套件)。例如,Internet协议套件由4层组成,每个层负责特定的功能。除了通信协议之外,要理解的重要关系是计算机之间互连的基本结构。这就是所谓的系统架构。有几种类型,但与我们相关的两种类型是客户端-服务器网络和对等网络。

Internet由依赖Internet协议套件的客户端-服务器关系主导。其中,超文本传输​​协议(HTTP)是通信的基础。

数据存储在中央服务器中,并可以通过基于位置的地址进行访问。这使得分发,管理,保护数据以及扩展服务器和客户端的容量变得更加容易。但是,安全性,隐私性和效率方面存在许多弱点:服务器的控制权转换为数据的控制权。这意味着在服务器的控制下,任何一方都可以访问,更改和删除您的数据;这可能是具有服务器合法权限的实体,也可能是恶意黑客。在基于位置的寻址中,数据是通过其位置而不是其内容来标识的。这种限制意味着,即使必须在更近的位置获得相同的数据,也必须一直到特定的位置才能访问一条数据。也不可能确定数据是否已更改,但是在大多数历史中,客户端-服务器模型和HTTP已经相当可靠地为Internet服务。这是因为HTTP Web对于在文本和图像等小型文件中移动非常有效。在Internet的前二十年中,平均网页大小仅从2 KB增加到2 MB。

资源HTTP非常适合加载网站,但它并非设计用于传输大量数据(例如音频和视频文件)。这些限制可能使另类文件共享系统(例如Napster(音乐)和BitTorrent(电影以及几乎所有内容))的出现和主流成功。

快进到2018年,点播高清视频流和大数据正变得无处不在。我们将继续产生/使用越来越多的数据,并开发越来越强大的计算机来处理它们。云计算的显着进步帮助维持了这一过渡,但是用于分发所有这些数据的基本基础结构基本上保持不变。

行星际文件系统IPFS试图通过新颖的p2p文件共享系统解决客户端-服务器模型和HTTP Web的缺陷。该系统是几种新的和现有的创新的综合。 IPFS是由Protocol Labs创建的一个开源项目,Protocol Labs是为网络协议和以前的Y Combinator推出的研发实验室。协议实验室还开发了互补系统,例如IPLD和Filecoin,下面将对其进行说明。全球数百名开发人员为IPFS的发展做出了贡献,因此,编排IPFS一直是一项艰巨的任务。以下是主要组成部分:分布式哈希表哈希表是一种将信息存储为键/值对的数据结构。在分布式哈希表(DHT)中,数据分布在计算机网络中,并且进行了有效的协调以实现节点之间的有效访问和搜索。DHT的主要优点是分散,容错和可伸缩性。节点不需要中央协调。即使节点发生故障或离开网络,系统也可以可靠地运行。 DHT可以扩展为容纳数百万个节点。由这些功能组成的系统通常比客户机-服务器结构更灵活。

Bittorrent是一种流行的大宗交易文件共享系统,它可以依靠创新的数据交换协议成功地协调数百万个节点之间的数据传输,但仅限于torrent生态系统。 IPFS实现了该协议的通用版本,称为BitSwap,可以用作任何类型的数据的市场。这个市场是Filecoin的基础:Filecoin:基于IPFS的p2p存储市场。

Merkle DAGmerkle DAG是Merkle树和有向无环图(DAG)的混合体。默克尔树可以确保在p2p网络上交换的数据块是正确的,未损坏的和不变的。通过使用密码哈希函数组织数据块来完成此验证。这只是一个接受输入并计算与该输入相对应的唯一字母数字字符串(哈希)的函数。检查输入是否会导致给定的哈希很容易,但是很难从哈希中猜测输入。

版本控制系统Merkle DAG结构的另一个强大功能是,它允许您构建分布式版本控制系统(VCS)。最受欢迎的示例是Github,它使开发人员可以轻松地同时在项目上进行协作。 Github上的文件使用merkle DAG存储和版本控制。它允许用户独立地复制和编辑文件的多个版本,存储这些版本,然后将编辑后的内容与原始文件合并。

IPFS对数据对象使用类似的模型:只要可以访问与原始数据和任何新版本相对应的对象,就可以检索整个文件历史记录。假设数据块存储在整个网络的本地并且可以无限期地缓存,这意味着IPFS对象可以永久存储。

另外,IPFS不依赖对Internet协议的访问。数据可以分布在覆盖网络中,覆盖网络只是在另一个网络上构建的网络。这些功能非常引人注目,因为它们是反审查网络的核心要素。它可能是促进言论自由与全球互联网审查制度作斗争的有用工具,但我们也应该认识到,不良行为者可能滥用权力。

自认证文件系统IPFS的最后一个基本组件是自认证文件系统(SFS)。它是一个分布式文件系统,可以在没有特殊权限的情况下交换数据。这是“自我认证”,因为提供给客户端的数据通过文件名(由服务器签名)进行认证。结果?您可以通过本地存储的透明性来安全地访问远程内容。

IPFS在此概念的基础上创建了星际名称空间(IPNS)。它是一个使用公用密钥加密技术对网络用户发布的对象进行自我身份验证的SFS。前面我们提到,IPFS上的所有对象都可以唯一标识,但这也扩展到了节点。网络上的每个节点都有一组公用密钥,专用密钥和一个节点ID,该ID是其公用密钥的哈希。因此,节点可以使用其私钥对发布的任何数据对象进行“签名”,并可以使用发送者的公钥来验证此数据的真实性。

以下是IPFS关键组成部分的快速回顾:使用分布式哈希表,节点无需中央协调即可存储和共享数据。 IPNS允许使用公钥加密技术立即对交换的数据进行预身份验证和验证。Merkle DAG可实现唯一标识,防篡改和永久存储的数据。您可以通过版本控制系统访问已编辑数据的过去版本。那么,为什么所有这些都很重要?

IPFS提供高吞吐量,低延迟和数据分发。它也是分散的和安全的。这打开了几个有趣而激动人心的用例。它可以用于将内容传送到网站,使用自动版本控制和备份在全球存储文件,以及促进安全的文件共享和加密的通信。

以下是一些基于IPFS构建的有趣项目:Akasha,下一代社交网络Balance3,三项会计平台BlockFreight,开放的全球货运网络Digix,用于标记实物黄金,Infura和DApp基础结构的平台。提供商Livepeer,去中心化的实时视频流媒体平台Origin,共享经济点对点市场UPORT和自治标识系统等应用程序的多样性证明了IPFS在几种不同用例中的多功能性。它也用作公共区块链和其他p2p应用程序的补充文件系统。在撰写本文时,在以太坊智能合约中存储一千字节的数据可能要花费数美元。这是一个主要限制,并且当前正在启动的新分散应用程序(DApps)的数量已大大增加。 IPFS可以与智能合约和区块链数据进行互操作,因此可以为以太坊生态系统增加可靠且低成本的存储容量。试图使以太坊区块链数据可以在IPFS上本地访问的尝试是一种称为IPLD(星际链接数据)的单独协议。

挑战尽管IPFS表现良好,但仍有一些问题尚待完全解决。首先,目前IPNS上的内容寻址不是很友好。您的典型IPNS链接如下所示:ipfs.io/ipns/QmeQe5FTgMs8PNspzTQ3LRz1iMhdq9K34TQnsCP2jqt8wV/域名系统(DNS)可用于将这些链接简化为更简单的名称,但这将为内容分发引入外部故障点。但是,仍然可以通过原始IPNS地址访问内容。一些用户还报告说IPNS解析域名的速度可能很慢,最多延迟几秒钟。目前尚不清楚此问题的根源是什么。

更新:2018年3月26日,IPNS发布了具有实验功能的升级版本,以加快发布/解决方案的速度。单击此处了解详细信息。在IPFS上,节点几乎没有动力维护网络上数据的长期备份。节点可以选择清除缓存的数据以节省空间,这意味着从理论上讲,如果没有剩余节点可以承载数据,则文件最终将随着时间的推移而“消失”。在当前的采用水平上,这不是一个大问题,但是从长远来看,备份大量数据需要强大的经济动力。

存储市场Filecoin是一个单独的协议,旨在增加对IPFS上文件存储的经济激励,并促进与企业云存储(例如Amazon S3等)竞争的分布式存储市场。 IPFS + FileCoin用固定价格代替了集中式基础架构,但将其存储在本地提供商的全球网络中,后者可以根据供需自由确定价格。 Filecoin代替了工作量证明共识算法(例如比特币),但使用存储量证明来确保安全性和可靠性。这样,任何人都可以加入网络,在其计算设备上提供未使用的硬盘空间,并获得Filecoin令牌奖励以进行数据存储和检索服务。

该网络是在以太坊上开发的,因此智能合约集成可以在存储市场中生成高级功能,例如托管和保险。从理论上讲,这种经济模式应该建立一个竞争激烈的自由市场,其成本可能低于大型供应商。但是FileCoin尚未启动,因此观察这些概念在现实中的工作方式将很有趣。

IPFS入门是一项非常雄心勃勃的工作。显然,系统功能的精确机制比本指南中描述的要复杂得多。我们将这些细节留给密码学家和计算机科学家。您不必使用IPFS即可成为专家,因此,如果任何优点或用例对您而言有用或有吸引力,请下载IPFS并在此处开始使用。如果您有GB或TB的未使用存储空间,并且想要充分利用该可用容量,则可以在网络启动时注册为早期的Filecoin矿工。如果您有兴趣成为早期的存储用户,也可以注册。使用IPFS非常引人注目,而了解使之成为可能的技术指南则更加令人兴奋。如果成功,IPFS及其补充协议可以为下一代Web提供弹性的基础架构。承诺提供一个分布式,安全和透明的网络。

IPFS初学者指南(下)

Filecoin是一个单独的协议,旨在为IPFS上的文件存储增加经济诱因,并培育与企业云存储(例如Amazon S3等)竞争的分布式存储市场。 IPFS + FileCoin在由本地供应商组成的全球网络上提供存储,这些供应商可以根据供需自由设置价格,而不必使用具有固定定价的集中式基础架构。像比特币一样,Filecoin使用存储证明,而不是工作证明算法。它使用存储证明来确保安全性和可靠性。因此,任何人都可以加入网络,在其计算设备上提供未使用的硬盘空间,并获得Filecoin令牌中的数据存储和检索服务的奖励。

「IPFS红岸智能」一起来认识HackFS团队:第三卷

HackFS是协议实验室和ETH Global联合举办的为期一个月的黑客马拉松,目的是展示Web3的强大功能。在黑客马拉松的最后一周,我们与其他三个团队进行了交谈,以了解他们的工作,他们通过HackFS中学到的知识以及为什么要建立在Filecoin上。

团队:coeo团队成员:Yalda Mousavinia,Ola Kohut和Peter Phillipscoeo背后的想法:Coeo是沟通和基层组织的去中心化平台。我们的团队来自Autark,我们在其中构建了DAO的应用程序。我们在黑客马拉松开始之初就开始了这个项目的工作,但是其中一些想法受到了我们先前在DAO生态系统中的工作的启发。

coeo背后的想法很简单:没有适当的沟通,您将无法决策和协作。而且,如果您想创建一个真正的分散社区,则无需任何人仅仅因为他们已经创建了一个组织就可以删除或更改讨论。我们希望看到人们使用我们的工具来找到他们可以做出贡献的原因;为他们的组织/理由获得资金;并共同管理他们的资金。我们希望做到这一点,同时在便利用户输入和维护重要隐私(投票和付款)之间取得平衡。

我们如何结合Filecoin和IPFS:我们通过3BOX使用IPFS和OrbitDB。该平台的核心是3Box线程消息API。我们将其用于公共和私有线程,通知和信号投票(非约束性脱链投票)。我们还使用它来存储公共和私有配置文件数据。我们将刺猬用于基于电子邮件/密码的身份验证,并将Metamask用于传统的Web3身份验证。

我们计划将Semaphore用于匿名,零知识,链上投票,并将Aztec协议用于零知识支付。最终,我们设想使用Filecoin进行媒体共享,协作文档(Wiki)甚至托管法律协议,以确保可靠地存储数据并为所有需要访问数据的用户提供。

我们为什么要参与HackFS:我们认为参与HackFS是将想法付诸实践的绝好机会。我们非常喜欢可以持续数周而不是周末的hackathon的概念,因为我们有兴趣投入时间来实际构建可以超过hackathon的东西,并且我们对HackFS的精神深表感谢。

Web3的未来:Web3是尝试新的组织方式的机会。借助可编程资金,智能合约和加密技术,我们可以绕过传统的网守和寻租者,并建立不受地理位置或公司/政治控制限制的社区。它是广泛运动中不可或缺的一部分,该运动试图从我们所处的等级制中恢复自主权,该等级制将人们商业化,利用并从中获取财富。对于Web 2.0公司,我们就是产品。 Web3带来了新的社会共识。

团队:IPFS.FPS团队成员:Leon Do和Randy Daniel我们正在建设什么:IPFS.FPS是一款去中心化的第一人称射击游戏。我们的团队希望在这次黑客马拉松中玩得开心。我们对构建钱包和其他加密项目非常熟悉,因此我们想进行分支。当我们开始时,没有太多关于如何在IPFS上部署Unity程序或Unity引擎的文档。因此,我们的第一步是使这项工作正常进行。下一步是构建完全分散的多人游戏功能并合并令牌。这就是Filecoin的目的。 libp2p也可用,因此我们可以添加聊天方面或对等连接。

我们的黑客马拉松经验:就信息而言,这些研讨会非常有用。我们所有人都全职工作,所以我们确实在周末花费了大量工作。幸运的是,已经记录了许多这样的事情。因此,我们可以随时加入并观看视频。此外,Filecoin Slack确实很有帮助。

当前,在我们的网站上,我们使用Fleek。我们在Unity上构建了游戏,将其导出并保存在GitHub上。我们的GitHub帐户中有一个钩子,因此无论何时更新GitHub,我们都会对其进行更新。这是基于IPFS的Fleek出现的地方。然后是不可阻挡的领域。

我们拥有IPFS.FPS.zil域,这是访问我们站点的简便方法。然后,我们将Pinata用于元标记。这是我们意识到可以使用的一个小技巧-当您共享链接时,它具有名称图像或屏幕截图-元数据来自Pinata。

我们为这次黑客马拉松制定了两个目标:首先,我们必须创建良好的文档,以便其他开发人员和游戏玩家可以使用现有文件。我们花了一两个星期来了解所有这些部分如何组合在一起。因此,我们希望当其他开发人员阅读我们的文档时,他们可以在半天之内完成文档。这次黑客马拉松的第二个目标是增加更多的集成:聊天方面,令牌的使用和多人游戏。

我们发现了一个名为ETH.link的小功能,该功能使任何人都可以访问以“ .eth.link”结尾的网站,但该网站未链接到“ .zil”。因此,我们出去购买了域名zil.sh。这就像将Web3连接到Web 2.0的桥梁。因此,现在,如果您具有website.zil,则可以在末尾添加“ .sh”,并且可以将其发送给任何人,并且无论使用哪个插件,它将它们重定向到正确的IPFS哈希。

我们在这次骇客马拉松比赛中获得了意想不到的惊喜:骇客马拉松是与来自不同行业的人们保持联系的好方法。在HackFS的第一周,Juan Benet谈到了去中心化的音乐网络Audius。我们对其进行了调查,并认为它真的很酷。

当我们开始构建游戏时,我们使用的第一个背景音乐有点无聊。我们想找到更有趣的东西。因此,我们去了Audius,听了不同艺术家的表演。我们在乔治亚州找到了一位名叫ElectronWarbear的艺术家。我们伸出手说:“我们喜欢这首歌”,并能够根据需要将其放入我们的游戏中。

因此,通常使用IPFS,人们可以运行本地节点并存储文件。如果其他人想要检索这些文件,则他们还必须运行本地节点。在创建Sailplane的方式中,我们所有的节点-IPFS节点实际上都在浏览器中运行。因此,将文件拖到应用程序中时,浏览器会将文件存储在本地并将其固定到IPFS,因此不需要单独的软件。您只需要访问我们的网站,IPFS节点就会立即旋转。从长远来看,随着我们不断改进,我们计划在Filecoin的基础上进行开发。

我们的目标是构建一个无需注册即可使用许多实用程序的Web应用程序。此外,我们非常关注可以自行托管Web应用程序及其连接的基础结构的人员。

IPFS和OrbitDB的魔力:现在,整个应用程序都基于IPFS和OrbitDB构建。我们使用IPFS存储数据,然后使用OrbitDB创建可共享状态。因此,使用IPFS,如果先上传文件然后上传文件夹,则如果更改文件夹中的文件,所有哈希值都会更改,因此无法跟踪。但是使用OrbitDB,它可以存储所有已发生的更改。

,例如,如果我将一些文件添加到文件夹中,并与您共享驱动器,然后将文件添加到该文件夹​​中,则所有这些文件都由OrbitDB处理,该文件将IPFS文件CID存储在System中的文件结构中。用户可以与此文件系统进行交互并计算目录CID。这是使它真正酷炫的魔力,因为人们创建了一些可以共享文件的东西,但是您以后不能更改这些文件。现在,如果我与您共享一个文件夹,则可以打开它,如果我开始修改内容,则可以在屏幕上实时看到它,并且可以实时更改和添加文件。

关于以狗食为食的重要性:我遇到了这个问题,试图将大型视频从计算机传输到手机,而Apple AirDrop却根本无法正常工作。因此,我最终使用了Sailplane。在这次黑客马拉松期间,我们一直在使用Sailplane在彼此之间来回发送文件。最好的方法是当您发现自己使用自己的工具来完成工作时!为什么选择Web3,为什么现在呢? Web3允许人们做以前不可能做的事情。单独使用Filecoin是一个了不起的选择。为了能够激发那些拥有完全未使用的硬盘空间的人和那些想要存储其文件的人。这样的事情以前不可能真正存在,因为一切都如此集中。您无法拥有真正的自由市场。例如,在数据共享或分散式金融的情况下,能够彼此进行期权交易并消除中间商是令人惊讶的。我们一直是权力下放的忠实拥护者,因为我们知道这样做是可能的。这是一个巨大的破坏者,它将改变世界,因为它只会变得更好。

报告/反馈

微信
登录
用户名
密码
注册
用户名
密码
确认密码
昵称
邮箱
QQ
找回密码
用户名
邮箱
※ 重置链接将发送到邮箱