『Steemit区块链学院』第七期课程 | 区块链中的IPFS内容存储技术

in SteemitCryptoAcademy3 years ago (edited)

欢迎各位SteemCN区的用户参与「Steemit区块链学院第三季课程」,我是「Steemit区块链学院」CN区的教授@abcallen,我将通过每期课程,与各位CN区学员学习了解区块链网络世界中不同的区块链生态,一起认识背后的架构以及原理,让各位CN区学员可以深入浅出并且透过实际操作认识区块链,在区块链网络世界中可以更好的发展。


12.png

本期课程为「Steemit区块链学院第三季课程」第七期,本期所要教学的内容是大部分CN区用户都会忽略的问题,那就是内容存储问题。

作为Steem用户,我们在进行内容创作并发布之后有没有想过我们所创作的内容可以在Steem之上存留多久,有的用户可能会觉得Steem是区块链平台,既然是区块链平台,那么内容必然永久留痕,去中心化,可追溯,不可篡改。

但,我们所创作的内容能够存多久,如果有一天见证人全跑路了,Steem也消亡了,那么我们的内容也将跟着一起消亡。当然,我们热爱的Steem将健康成长,长期存在。

面对内容的永久性存在的问题,本期课程将教授各位CN区学员一向来自于区块链之上的全新分布式存储技术——IPFS。

而本期课程也将从以下2点为各位CN区学员展开讲解,以此让各位CN区学员能够更好地学习并认识IPFS。

  • IPFS的背后架构
  • IPFS的场景应用

希望各位CN区学员认真学习新的知识,以此提升个人区块链知识储备量,推动自身的发展。


『第一部分:IPFS的背后架构』

IPFS的概念

IPFS,全程 InterPlanetary File System ,中文名称为 星级文件系统,是一种建立在分布式网络「区块链」中的Web,是一种点对点传输的区块链超媒体协议。

知识扩展Web,中文名称为「全球广域网」,也称为「万维网」,Web是一种基于超文本和HTTP协议的、全球性的、动态交互的、跨平台的分布式图形信息系统。

IPFS的发展导向

IPFS旨在通过区块链技术让互联网速度更快,信息更安全,让互联网实现去中心化的存在,让互联网信息存储成本更低,处理速度更快,让互联网信息实现真正的永久留痕。

IPFS与HTTPS的对比

HTTPS

HTPPS协议依赖于中心化服务器,每次使用HTTPS协议的时候需要从中心化服务器下载完整的文件,整个过程速度慢且效率低。

HTTPS协议依赖于中心化服务器,而中心化服务器的存储成本极高,且具有存储瓶颈,在面对高访问量的使用容易出现宕机。

31.png

HTTPS是建立在HTTP之上拥有加密方式的网络协议,而HTTP的网络生存周期具有局限性,Web内容经常被删,这也导致内容无法长期保存,无法保障用户可以长期获得相关web内容。

各位CN区用户或许经常碰到访问一个网页的时候出现404的情况,一般HTTP的网络生存周期大约在100天左右,时间过了就挂了。

就目前来看,整个互联网使用的大部分都是HTTPS协议,无论是HTTP还是HTTPS都高度依赖于中心化服务器,这也导致互联网的高度中心化。互联网络的高度中心化所导致的问题往往有网络封锁、受到监管,被监控。

最明显的例子就是https://Steemit.com/ ,在2019年之前中国大陆可以不用翻墙就能访问,而因为Steemit部分内容的敏感性导致自身被中国大陆封锁。

对于监管,只要是中心化的东西就很容易受到政府的监管,而监控方面最具有说明的应该是当年的“斯诺登事件”。

IPFS

面对HTTPS所暴露出来的种种弊端,也可以说HTTPS的局限,IPFS的出现很好地改变了这一局面。

IPFS是建立分布式网络当中的,也就是区块链之上的,IPFS不依赖于中心化服务器,IPFS对于Web内容的存储是依靠多个服务器而实现的,IPFS通过挖矿奖励机制来激励旷工分享自己的硬盘为IPFS存储Web内容,因为挖矿奖励机制的存在,所以不用担心服务器的掉线。

30.png

因为IPFS依赖于去中心化服务器,这也使得存储空间变的更为便宜,且存储空间近乎无限,因为有挖矿奖励机制的存在,所以会有更多的人愿意分享自己的存储设备用于IPFS存储,可以说IPFS实现了双赢的结果。

当用户存储一个文件至IPFS上的时候,IPFS会将文件进行分布式存储。而非存储于一个无服务器当中,而是多个,这也保障了用户在访问某个文件的时候不用担心服务器掉线而无法访问想要访问的内容。

以传统的HTTPS为例,我们在HTTPS协议下访问某个内容的时候是通过域名来寻找所要访问内容的位置,相较于传统的HTTPS不同的是,IPFS采用的是「内容寻址」,而非「地址寻址」——当用户进行文件存储的时候,IPFS会为文件分配一个独一无二的哈希值,如同一个指纹,即使是两个文件内容只存在略为不同,其哈希值也是不相同的。

在IPFS下,一个内容拥有一个独一无二的哈希值,在访问内容的时候只需要输入那个独一无二的哈希值就可以快速准确的或许想要访问的内容。而为了让人们能够更好的记忆那窜复杂的哈希值,IPFS通过IPNS「星际命名系统」将复杂的哈希值映射为容易记忆的「URL」,所以IPFS是基于内容进行寻址,而非域名寻址。

IPFS在网络当中会去除重复的文件,而文件的变更则会以历史的形式被永远记录,每一次变更都会形成一个独一无二的哈希值,也就是一个单独的版本,用户可以通过哈希值查看到不同的历史版本。

IPFS依赖于去中心化服务器,所以其网络速度超快以及存储空间低成本且近乎无限,这样使得IPFS在快速发展的时代更具有优势,尤其是在IFPS协议下的网络内容都拥有一个独一无二的哈希值,这也更进一步增加了IPFS的安全性。

即使IPFS网络遭到黑客攻击,那么黑客所篡改的部分或是添加的木马都会被立刻标记并被处理。

IPFS依赖于去中心化服务器的特性也成就了IPFS网络的开放性,这也进一步避免了网络的被封锁、监管以及各种限制。

因为IPFS是建立在区块链之上的网络协议,所以存储于IPFS网络中的内容会永远存在,并且去中心化,可追溯。这也使得用户不用担心多年之后无法访问到相关内容。

IPFS之所以被称为 星级文件系统,是因为星球与星球之间服务器的反应速度很慢,所需要花的时间会很长,如果一个人在火星想要在互联网上访问一个内容,那么正个过程将是极其低效的。

而IPFS则可以将当下网络内容缓存至分布式服务器当中,将这部分内容缓存于火星上,当一个人想要火星访问某个内容的时候,整个过程将是短时高效的。

IPFS正在逐渐成熟,并且最终有望取代HTTPS,这将会是互联网的Web 3.0。这将会是建立在区块链之上的时代,一个完全去中心化的互联网时代。


『第二部分:IPFS的场景应用』

IPFS在未来的应用可以说是非常广泛的,这是一项足以改变世界的技术,以下列举几项IPFS的场景应用。

Dtube

Dtube是建立Steem生态以及IPFS网络之上的区块链自媒体平台,Dtube目前是Steem用户使用率最高的区块链自媒体平台,Steem用户可以在Dtube发布视频并且从中获得来自Dtube以及Steem之上的收益。

17.png

Dtube类似于中心化平台的Youtube,Dtube允许用户在IPFS以及FIlecoin基础上观看或是上传视频。

Ujomusic

Ujomusic是一个 IPFS上的音乐家的区块链市场,音乐家通过发布原创作品至Ujomusic,用户通过购买许可权,下载、试听,或是用于其他用途都可以为音乐家带来收益。IPFS在Ujomusic起到了很好地版权保护作用以及内容存储作用。

16.png

Textile

Textile 是一款开源照片备份Dapp,支持在设备上整理照片或远程备份照片,可以将照片发布给朋友,家人或喜爱的社区。用户上传的照片全部存储在IPFS分布式存储网络中,旨在永久留痕,可以追溯,且所保存至IPFS的照片都具有独一无二的哈希值,并且经过私钥加密。

Textile 可以说是区块链领域的照片钱包,通过Textile用户更好更安全的长期保存自己或他人的照片,不用担心照片的泄露。

18.png

Pinata

Pinata是一个能够使得用户轻松灵活上传文件至IPFS网络中的平台,可以让CN区用户提前体验IPFS。

19.png


『Steemit区块链学院』| 课后作业

  • 将音频、视频、图片、文档等文件内容上传至IPFS网络中,任选一种即刻,也可以多选。

  • 写一篇文章,以教程的形式将整个实际操作流程记录下来,过程中必须包含整个流程的文本图片,并且进行图文并茂的描述。

  • 参与课程的CN区学员请按照以下教程进行操作,平台一共2个,分别是Dtube和Pinata,参与课程的CN区学员可以二选一。

Steem教程 | 如何在Dtube上发布视频
Steem学院课程辅助教程 | 如何将文件内容上传至于IPFS网络当中

  • 参与课程的学员选择了Dtube学习实践IPFS的CN区学员,发完视频后,请重新写一篇文章,以教程的形式记录下整个实践的过程,整个过程需要包含实践操作相应的文本图片。

  • 请参与课程的CN区学员学习完课程后再进行作业文章的编写。

注 :为了不必要的争端,请参与的CN区学员作业文章中不要涉及blurt 、hive 这种分叉链等相关内容。


『Steemit区块链学院』| 课后作业要求

  • 参与要求:Steem声望50以上

  • 参与时间:8月2日-8月8日23:00「北京时间

  • 文章语言:中文「Chinese

  • 课程只接受中文用户参与,且不接受翻译的内容,而且针对的是SteemCN区。The course only accepts Chinese users, and does not accept the translated content, and it is aimed at the SteemCN area.

  • 参与课程的学员请将作业文章发布到「SteemitCryptoAcademy社区

发布教程请看:Steem教程 | 参与Steemit学院课程的学员如何将文章发布至SteemitCryptoAcademy社区

  • 参与课程的学员作业文章需要加入标签 #cryptoacademy 发布到Cryptoacademy社区。「添加标签的时候不要加上#
  • 参与课程的学员作业文章需要加入标签 #abcallen-s3week7,方便Steem学院统计和点赞。
  • 参与课程的学员作业文章字数要求「最少400字以上」。
  • 参与课程的学员作业文章标题需要带有「Steem学院课后作业」字样。例如:「Steem学院课后作业-关于文件内容上传至IPFS网络中的流程纪实
  • 参与课程的学员作业文章必须为「原创」,严禁抄袭,洗稿,翻译,搬砖、开小号撸羊毛等,一经发现,拉入黑名单,取消参与资格。
  • 每周课程的参与周期为一周「7天
  • 请参与Steem学院课程的学员认真编写作业文章。
  • 每次课程,每位学员「只能参加一次,写一篇文章。
  • 请参与课程的学员提早进行作业编写,并保证作业质量,这样有机会获得Steem官方奖励。


abcallen.cn.png

Sort:  

You've got a free upvote from witness fuli.
Peace & Love!

Coin Marketplace

STEEM 0.19
TRX 0.14
JST 0.029
BTC 65811.20
ETH 3178.05
USDT 1.00
SBD 2.54