IPFS和Filecoin:共生的“爱情”故事
: b; ~9 T0 Z" @4 aIPFS指南 % Z4 B" p) J7 o8 C! K4 W6 F
得得号, X7 t# R- g: U w* R3 |
2018年10月26日阅读数:3.6k关注
& ~8 ^, w9 _! x( R" ~6 ]4 NIPFS和Filecoin其实原本是没有关系,直到有一天他们走到一起,发现生活变得更加美好了,于是他们决定一起飞向未来!
4 c* l2 Q# f! h' ^6 e! P2 _/ |8 @6 W; M. O% z5 D5 N
IPFS:做我女朋友吧?
& @0 Q5 r% h5 e- Z/ p/ n3 c6 L* m, p6 l U$ u
Filecoin:好!" ~ z* ~2 Q! g8 s! K3 w
, w& ~ r: y; ]6 v2 Z/ q
……8 }7 W( L1 F* E- F, }9 o+ g" t
/ ]3 S t$ M4 o2 a! `
故事就这么开始了,很平淡,但却很真实。IPFS和Filecoin其实原本是没有关系的,直到有一天他们走到一起,发现生活变得更加美好了,于是他们决定一起飞向未来!
# x4 P0 Q9 K- d9 k( V9 ]0 ~$ o3 ~, I% ^. X+ @: ?# M5 i% B
为什么写这篇文章,其实因为好多人并不清楚,到底IPFS和Filecoin之间的关系是什么?为什么会有IPFS和Filecoin?本文来解答这个问题。: i# G1 ?. L E. J3 O, ?
3 O2 A- C7 D, f4 R. n! ~现在他们成为了共生关系,离开一方另外一方发展就会变的困难。
) r# a) v$ l; }& j( \$ @ }/ _% L2 u9 s
IPFS是一个协议也是一个p2p网络,它类似现在的bt网络,只是拥有更强大的功能,使得IPFS可以拥有了取代http的能力,为我们建造更好的web。
7 e" q3 L1 p X0 \4 t' O8 M* ?* u% Y7 h$ y+ b# ?
Filecoin是一个分布式存储网络,把云存储变为一个算法市场,代币和区块链在这里面起到很重要的作用。现在已经在运行的Storj、sia,玩客云等等都是这种类型的网络,如果没有IPFS,Filecoin就是跟这些项目没有太大区别。) F+ a% ~( r B% H
; y& i( w2 e9 q8 S把IPFS和Filecoin放在一起,事情变得奇妙起来:Filecoin是运行在IPFS上面的一个激励层。IPFS有巨大存储需求和节点需求,我们都知道p2p网络节点越多下载越快,如果没有激励机制,谁愿意贡献如此多的节点和存储呢,于是Filecoin来了。Filecoin可以为IPFS贡献很多很多节点,同时Filecoin带着一个巨大的分布式存储空间,同时解决了IPFS的存储问题。于是IPFS跟http对比拥有了更强的优势。
& q0 w% h, Z5 s0 l* e
7 G9 a) s8 N/ U1 `: G, CFilecoin代币的作用:Filecoin协议的代币也叫Filecoin ( 说Filecoin的时候可能说的Filecoin网络, 也可能说的是 Filecoin代币 ) ,符号FIL,代币是沟通资源使用者(用户)和资源提供者(矿工)的中介桥梁,Filecoin协议拥有两个交易市场,数据检索和数据存储,双方在市场里面提交自己的需求,达成交易。Filecoin和IPFS相互促进,共创未来,真是一对好情侣!
3 |- R% a8 V# h9 |. k( F$ J# _7 @ x' W4 p9 v0 ?7 E
IPFS协议. M8 K! T8 P* D3 e
IPFS协议对标的是http协议,http是一个传输协议, 解决的是网络传输问题。http协议我们很熟悉了,用了这么多年了,http协议是一个伟大发明,没有http协议就没有互联网,随着互联网的发展http协议逐渐暴露出来了很多问题,技术永远是在进步的5 a7 U8 p6 |. s1 X, `% o
5 x) U! d/ }( \7 J& k1 Q
HTTP的不足之处:
, Z4 _) L* K. p/ G/ f ~6 q
3 u$ t6 g( X5 s) B效率低,使用成本高,带宽资源浪费严重
5 W( O3 s; d4 ]0 C9 \数据丢失,页面平均生命周期只有100天. o2 ~: E/ ^( H# |# r4 h: b p3 A, n
中心化的网络限制了很多发展机会0 U! B8 S" l# r/ d/ h3 j. T. S" x
对主干网的严重依赖, 经常造成服务中断 - s8 s8 ` K2 E6 v- u8 z+ D
IPFS也是一个数据数据传输协议, 相比于http有如下优点:
) ^" i1 F+ ~! A. E9 Q: f
1 E5 n9 o+ K2 O. t2 jP2P下载, 节省高达60%的带宽, 使用成本低廉
3 Q0 i* t0 U2 \' [: x9 F* b永久web, 不在删除数据/ C2 u* _& {7 F" D
分布式的网络, 给互联网带来生机
1 d# J8 i( W7 C不再依赖主干网, 降低因不可抗力造成的服务中断问题9 @* c% R5 M3 X8 }
IPFS是一个协议也是一个网络。实实在在的网络,已经运行了2年半了。就像btc网络一样,IPFS协议也没有发明什么,大多数工作是在前人已有的基础进行的,IPFS集成了如下已有的系统:
+ L- ]/ H( E6 u. m+ e7 E- k0 `. Q8 s8 D, b7 ^ C7 v/ |
DHT(distributed hash tables):分布式哈希表: b) b) E: H9 X2 C: B# y
Git:版本管理工具
9 r2 `2 X& x* h6 \0 A/ kBitTorrent:数据交换协议7 Z3 `. |1 w% \+ B
SFS(self-certified filesystems):自认证文件系统
& S! I F/ d( `3 xIPFS协议是如何设计的,都包含什么:1 j) }3 _4 k. j! n0 r: ]
" C7 t, a, S/ F9 R1 节点身份
6 X) I0 C4 x' S& G
) R+ e. d4 ]: _. F: @$ i/ i/ [! p每一个IPFS节点都有一个独一无二的身份id,利用节点的公钥生成的加密哈希,节点的活动都需要使用这个id,就像是IPFS网络里面节点的身份证。
' W& r" @" H3 M: Q. N, {. L4 x1 o
2 网络$ y0 e4 g5 N( ~( m
; ]. \3 X Y& d6 M( v) j r+ w {
IPFS节点要和网络里面成百上千的其它节点通讯,现实中的网络结构如此复杂,IPFS使用 ICE NAT穿透技术来保障网络的连通性。8 ~* Z: W$ |& N( ~! C
8 q4 t2 J; B3 [) ]2 @9 @* {% |
3 路由
8 { ^$ L4 I* D! T$ Z6 n9 L8 |
IPFS网络的路由使用的是DHT,借鉴了S/Kademlia,使得一个节点可以快速的查找到其它节点。
( U6 p% b1 x" _* c4 P1 r. G2 @
) q- Q3 E5 _6 _6 K4 F4 数据交换协议6 z: c" ]* c% N5 B
# N3 s9 {' N$ m' j2 ^ }
IPFS借鉴BitTorrent协议,使用了叫做BitSwap的数据交换协议,该协议使用两个列表,想要的数据块(want_list)和我有的数据块(have_list)与其它节点进行数据交换。
3 o- \9 j+ [7 L4 g* ^4 ^
& g* x$ S- V/ [- E5 对象存储1 I) f$ b8 F) |% s& `! y
1 ?/ [$ F" m/ R; X5 K8 OIPFS存储数据使用的是 Merkle DAG结构,这赋予了IPFS内容寻址,防篡改,去重功能。
/ |: z% ~& a% M T: R3 b
$ _1 Y$ ]2 F, m* C* _+ S6 版本控制系统% k9 K- q# I' j* Q
3 ~0 L( n8 r9 R8 u# l3 f1 e: X) @( d
IPFS在 Merkle DAG上面添加了Git版本控制功能,这使得IPFS文件拥有了时光机功能,可以轻松查看文件的变动历史,是不是很酷! P" F: ]5 m' m
+ `& Z/ ], _1 C4 f
7 自认证命名系统
' \. X* ~% Z: H1 {* ~$ F( Q" ~; V% e
, C5 }6 Q+ C& j% ~3 V( | IPFS使用了SFS自认证系统给文件命名,同时提供了ipns解决传播问题,而且还兼容了现有的域名系统。
8 H- ]5 n' v8 \6 C# N& g( M
) K- ]* K$ _7 g+ ? c这就是我们的IPFS,一颗冉冉升起的新星 |