IPFS和Filecoin:共生的“爱情”故事; h1 J+ Z0 [; v9 Z- t/ d' h: }# w+ _8 }
IPFS指南
" ^2 j; n2 R/ F3 Z+ u4 ]! S) i得得号
# N; X* ?0 D7 n8 a2018年10月26日阅读数:3.6k关注
5 ]9 ?: q6 L9 H7 g- p+ T# fIPFS和Filecoin其实原本是没有关系,直到有一天他们走到一起,发现生活变得更加美好了,于是他们决定一起飞向未来!
$ O ?- I1 z5 G+ L' S+ ?1 k6 `, M1 e+ X# E. a4 f
IPFS:做我女朋友吧?
' k. Y1 p% I5 c* O0 E( Z
* `' O! g7 J7 E5 B- X! r+ R! \Filecoin:好!
) R; `) L0 c: {/ J) W
2 G! _4 y0 F! j: q( S ……# [ |9 P* n4 U# r% T- m
8 I5 X0 Y ]' k" e9 a8 s故事就这么开始了,很平淡,但却很真实。IPFS和Filecoin其实原本是没有关系的,直到有一天他们走到一起,发现生活变得更加美好了,于是他们决定一起飞向未来!
( a b6 R" `; `( H3 q5 O b
5 O1 t+ t5 s( y* d" L$ o6 x为什么写这篇文章,其实因为好多人并不清楚,到底IPFS和Filecoin之间的关系是什么?为什么会有IPFS和Filecoin?本文来解答这个问题。
: T+ x% L6 ?* u' |) ], q& _" A5 p* U% a8 |0 m) W {
现在他们成为了共生关系,离开一方另外一方发展就会变的困难。
& u" \; Q! ]- E% _: q3 [" R* _0 y& ?5 k
IPFS是一个协议也是一个p2p网络,它类似现在的bt网络,只是拥有更强大的功能,使得IPFS可以拥有了取代http的能力,为我们建造更好的web。
! {) A! R0 p1 }1 G
3 E. a5 A9 R$ b, n% [Filecoin是一个分布式存储网络,把云存储变为一个算法市场,代币和区块链在这里面起到很重要的作用。现在已经在运行的Storj、sia,玩客云等等都是这种类型的网络,如果没有IPFS,Filecoin就是跟这些项目没有太大区别。
4 [4 L3 e. H( ?! X# z+ S2 `6 l7 N" ? l6 d3 Z, y6 ]* [' y6 j* L
把IPFS和Filecoin放在一起,事情变得奇妙起来:Filecoin是运行在IPFS上面的一个激励层。IPFS有巨大存储需求和节点需求,我们都知道p2p网络节点越多下载越快,如果没有激励机制,谁愿意贡献如此多的节点和存储呢,于是Filecoin来了。Filecoin可以为IPFS贡献很多很多节点,同时Filecoin带着一个巨大的分布式存储空间,同时解决了IPFS的存储问题。于是IPFS跟http对比拥有了更强的优势。* o- J& R3 L: _7 O$ u
4 ]1 ~! ^, a+ x1 U* G0 lFilecoin代币的作用:Filecoin协议的代币也叫Filecoin ( 说Filecoin的时候可能说的Filecoin网络, 也可能说的是 Filecoin代币 ) ,符号FIL,代币是沟通资源使用者(用户)和资源提供者(矿工)的中介桥梁,Filecoin协议拥有两个交易市场,数据检索和数据存储,双方在市场里面提交自己的需求,达成交易。Filecoin和IPFS相互促进,共创未来,真是一对好情侣!5 z# e' Z: h" G7 P& V+ E4 y
2 Z3 B$ y2 h# Q( w8 ZIPFS协议 R' ^( Y; T3 u0 H
IPFS协议对标的是http协议,http是一个传输协议, 解决的是网络传输问题。http协议我们很熟悉了,用了这么多年了,http协议是一个伟大发明,没有http协议就没有互联网,随着互联网的发展http协议逐渐暴露出来了很多问题,技术永远是在进步的: M% d: J4 g$ O8 z" L+ Y# ^
" R" r2 T# A5 m% d. a4 D8 X) t2 a
HTTP的不足之处:2 u% _& ^- F% K. M; v
$ G9 ~) K z1 g1 g$ t/ w
效率低,使用成本高,带宽资源浪费严重4 F. a, T2 l5 ]8 ]. t$ {- F1 E
数据丢失,页面平均生命周期只有100天
6 N2 F* ~ v# r" M1 t中心化的网络限制了很多发展机会( x9 q, n2 ^ U6 B- ]
对主干网的严重依赖, 经常造成服务中断 + D S$ w1 K2 Q1 B
IPFS也是一个数据数据传输协议, 相比于http有如下优点:
0 R. L& t/ R c7 g3 R6 }0 ?9 j6 O% k5 P; J
P2P下载, 节省高达60%的带宽, 使用成本低廉4 E4 }) x3 K4 ^' s: E
永久web, 不在删除数据! j1 T8 m5 B3 u. f$ {2 D
分布式的网络, 给互联网带来生机9 m9 k- `$ W/ N1 Q' M
不再依赖主干网, 降低因不可抗力造成的服务中断问题$ |. u+ R5 c# t e- O; D
IPFS是一个协议也是一个网络。实实在在的网络,已经运行了2年半了。就像btc网络一样,IPFS协议也没有发明什么,大多数工作是在前人已有的基础进行的,IPFS集成了如下已有的系统:
& K. \, U U6 U: e
, |; V/ q. Z& S3 p5 R+ wDHT(distributed hash tables):分布式哈希表2 E( v% u( P! j0 a( ^: v
Git:版本管理工具
( m/ f: {; \4 @! r' Z8 u: B9 ZBitTorrent:数据交换协议
9 {) `2 W* N9 `4 Z- y* Y6 PSFS(self-certified filesystems):自认证文件系统
& z1 |* X! d) A" f2 ZIPFS协议是如何设计的,都包含什么:
- J' H$ {# s3 j# B
( V$ O' v! F- C# k9 |1 节点身份
: o0 E& g% j* u
. J# F! A1 p7 j+ f每一个IPFS节点都有一个独一无二的身份id,利用节点的公钥生成的加密哈希,节点的活动都需要使用这个id,就像是IPFS网络里面节点的身份证。
- c, [) K' o- J' l! ^. Y" x0 h
4 ?$ W) P9 Y/ `8 S& F7 j2 网络
" X3 Y4 v1 U9 I. N3 o9 W4 d, u. T, o! e
IPFS节点要和网络里面成百上千的其它节点通讯,现实中的网络结构如此复杂,IPFS使用 ICE NAT穿透技术来保障网络的连通性。
& L! E, [# H2 B2 V: b
) E" n! g( d. a' x0 k; Z1 m n3 路由
4 z( g& Q2 c7 s$ B
" m( D. r' W6 O( JIPFS网络的路由使用的是DHT,借鉴了S/Kademlia,使得一个节点可以快速的查找到其它节点。" R H9 |, \7 `0 \) o6 A
- c; A, M& k' b9 l3 A! y4 数据交换协议
2 R+ D& X6 Z% V- j" {
+ h h' r) ?5 G5 B1 @$ D3 jIPFS借鉴BitTorrent协议,使用了叫做BitSwap的数据交换协议,该协议使用两个列表,想要的数据块(want_list)和我有的数据块(have_list)与其它节点进行数据交换。4 e% ^- Y8 U( g# [ k$ D0 m8 Z
, ?* ^$ V* M5 `# a6 E& f" s0 X9 E
5 对象存储# c' T J$ l" P; X, c: W# T
6 L+ Z$ m0 Z9 q& O9 H3 g; w
IPFS存储数据使用的是 Merkle DAG结构,这赋予了IPFS内容寻址,防篡改,去重功能。+ D4 f7 I. @) D7 @$ w3 W
! Y1 I9 I* X- ~* v7 F! U. |
6 版本控制系统3 n3 f" o: h+ B
+ M% N6 ^- C7 }+ T IPFS在 Merkle DAG上面添加了Git版本控制功能,这使得IPFS文件拥有了时光机功能,可以轻松查看文件的变动历史,是不是很酷9 ]$ [" a7 Q. l. f& `0 z+ w
2 ]! S3 y4 o! w5 G0 v+ o7 自认证命名系统
( r3 t9 z/ F6 g; i' a
9 E; K2 p8 F6 m% w* [9 ^ IPFS使用了SFS自认证系统给文件命名,同时提供了ipns解决传播问题,而且还兼容了现有的域名系统。
$ T. [9 `3 [* q' x) ^$ a: ]( Q& y% N) f' u
这就是我们的IPFS,一颗冉冉升起的新星 |