IPFS和Filecoin:共生的“爱情”故事
! C2 r5 L/ F, s* ]7 i( @& GIPFS指南 2 P s& W, k5 T, C$ H2 I! J9 x; G
得得号
$ \: H9 w$ Y- V- P; }2018年10月26日阅读数:3.6k关注! x* _2 L. B6 D- j' V( y
IPFS和Filecoin其实原本是没有关系,直到有一天他们走到一起,发现生活变得更加美好了,于是他们决定一起飞向未来!, W# \0 \# F/ S
8 _, z$ ^ v/ u; R/ W+ y; EIPFS:做我女朋友吧?- ~# v; t3 f$ @& K4 Y
. h) `: w: k8 z* u$ vFilecoin:好!
3 l8 M% e* `, s8 n6 B0 Z- N
% S. H! h5 \2 k4 |& y4 p2 y7 R. u ……
! @4 a. x: z- j% _
; ~1 V3 u C$ B b. L, b. `故事就这么开始了,很平淡,但却很真实。IPFS和Filecoin其实原本是没有关系的,直到有一天他们走到一起,发现生活变得更加美好了,于是他们决定一起飞向未来!
$ z* z# x% y V1 e f& _5 @. l& o, ?2 z
为什么写这篇文章,其实因为好多人并不清楚,到底IPFS和Filecoin之间的关系是什么?为什么会有IPFS和Filecoin?本文来解答这个问题。
6 U. }7 i5 I: u8 X* @8 O' \( a2 K/ m/ p0 K
现在他们成为了共生关系,离开一方另外一方发展就会变的困难。
5 T2 J& y; N/ _* d k0 t7 I( V1 ^+ p. j5 E: Q: C( o! ~) f4 y
IPFS是一个协议也是一个p2p网络,它类似现在的bt网络,只是拥有更强大的功能,使得IPFS可以拥有了取代http的能力,为我们建造更好的web。
: C' l6 l( s: q( D6 \8 ^. e) U" ~0 w1 g' Z+ A( j; z! ` r+ j
Filecoin是一个分布式存储网络,把云存储变为一个算法市场,代币和区块链在这里面起到很重要的作用。现在已经在运行的Storj、sia,玩客云等等都是这种类型的网络,如果没有IPFS,Filecoin就是跟这些项目没有太大区别。. J# s4 T d( S/ \) U, ^# o m. M
8 j1 |5 d! Q- c: l把IPFS和Filecoin放在一起,事情变得奇妙起来:Filecoin是运行在IPFS上面的一个激励层。IPFS有巨大存储需求和节点需求,我们都知道p2p网络节点越多下载越快,如果没有激励机制,谁愿意贡献如此多的节点和存储呢,于是Filecoin来了。Filecoin可以为IPFS贡献很多很多节点,同时Filecoin带着一个巨大的分布式存储空间,同时解决了IPFS的存储问题。于是IPFS跟http对比拥有了更强的优势。
, p& b1 _2 e' ]: z1 g5 E' I7 o( }& g) V9 l
Filecoin代币的作用:Filecoin协议的代币也叫Filecoin ( 说Filecoin的时候可能说的Filecoin网络, 也可能说的是 Filecoin代币 ) ,符号FIL,代币是沟通资源使用者(用户)和资源提供者(矿工)的中介桥梁,Filecoin协议拥有两个交易市场,数据检索和数据存储,双方在市场里面提交自己的需求,达成交易。Filecoin和IPFS相互促进,共创未来,真是一对好情侣!
6 I- y5 D- C" j. e& |. c* [& M; j
IPFS协议$ X/ Y3 @8 J- ^; \- I+ j
IPFS协议对标的是http协议,http是一个传输协议, 解决的是网络传输问题。http协议我们很熟悉了,用了这么多年了,http协议是一个伟大发明,没有http协议就没有互联网,随着互联网的发展http协议逐渐暴露出来了很多问题,技术永远是在进步的" S9 F0 ~: b2 p
, P% ~$ L9 O+ T: |" w) Q: y. }2 VHTTP的不足之处:+ {. n+ z6 H; }; g
* I: d4 N' K6 L& g, J* R效率低,使用成本高,带宽资源浪费严重( C5 z0 |; |: s" s3 H
数据丢失,页面平均生命周期只有100天
7 u. T7 ^1 }- [6 A0 o中心化的网络限制了很多发展机会
' r4 {) ^$ k, G对主干网的严重依赖, 经常造成服务中断 1 o) u* k* q# A& [
IPFS也是一个数据数据传输协议, 相比于http有如下优点:0 T$ r7 h) s7 p+ y
9 m+ Z3 [0 Q# v$ Y! A- v0 wP2P下载, 节省高达60%的带宽, 使用成本低廉
- l/ \" V! m/ R& V永久web, 不在删除数据4 e5 m3 [) O1 A
分布式的网络, 给互联网带来生机. |. x; ]. f! l. W3 Z- X; b' p
不再依赖主干网, 降低因不可抗力造成的服务中断问题
" B5 @. M m) a4 O: vIPFS是一个协议也是一个网络。实实在在的网络,已经运行了2年半了。就像btc网络一样,IPFS协议也没有发明什么,大多数工作是在前人已有的基础进行的,IPFS集成了如下已有的系统:: m1 R5 u! d) j
o5 d$ w: C" d/ BDHT(distributed hash tables):分布式哈希表" i4 q4 e) J. p8 A% B
Git:版本管理工具
; I0 i" O7 F4 o' g0 M) @; |BitTorrent:数据交换协议
" F i" c/ ~1 u& C' [SFS(self-certified filesystems):自认证文件系统
6 M) p/ O9 y2 gIPFS协议是如何设计的,都包含什么:- S4 i6 `0 M, p* g F4 R* Z: x( Z. n
. n6 }! E, L2 H1 `0 f1 节点身份' M8 w$ k0 W) l, |5 Q
) n8 U& P" L5 t" ]每一个IPFS节点都有一个独一无二的身份id,利用节点的公钥生成的加密哈希,节点的活动都需要使用这个id,就像是IPFS网络里面节点的身份证。7 |& ]; I9 x+ A/ v
) |3 _/ P: r; ^
2 网络% l* r/ j0 q+ J z- S1 a
# E9 P, ?8 _! H; w7 Y4 cIPFS节点要和网络里面成百上千的其它节点通讯,现实中的网络结构如此复杂,IPFS使用 ICE NAT穿透技术来保障网络的连通性。
, U% S% ^+ d) p) Q+ K. n% ^3 P$ H, }7 [5 E4 ?$ n; b
3 路由
0 h( ?* h7 z5 V% p0 K p) ]6 `
0 D* Q! h* s K( r* e7 c* CIPFS网络的路由使用的是DHT,借鉴了S/Kademlia,使得一个节点可以快速的查找到其它节点。
0 N2 N0 U8 O# u" r9 S/ k8 N* X7 |& h
4 数据交换协议
( R! @2 ]8 g4 l# G; y3 C& h _' U% ^
% u) O0 a! D- L0 q4 |IPFS借鉴BitTorrent协议,使用了叫做BitSwap的数据交换协议,该协议使用两个列表,想要的数据块(want_list)和我有的数据块(have_list)与其它节点进行数据交换。
* K: r+ [# ]1 E. m1 x7 L* W2 W, } Y6 W" h
5 对象存储2 w, y$ A, g/ Z0 `' F6 N
4 S a+ w( x* ?3 N; D
IPFS存储数据使用的是 Merkle DAG结构,这赋予了IPFS内容寻址,防篡改,去重功能。
# J$ D% c* f! ]. Y2 }9 F u
8 o6 u- l# }+ {6 |" j4 G0 `, }6 版本控制系统
4 p4 g3 P. u6 I3 H
0 l/ c3 A4 n2 O3 X' L IPFS在 Merkle DAG上面添加了Git版本控制功能,这使得IPFS文件拥有了时光机功能,可以轻松查看文件的变动历史,是不是很酷6 ^ v6 Q0 N! p* y
! R( S! q' @ V, @0 I p
7 自认证命名系统0 Z" f; F& L9 K, o. Q8 d# U( v6 ?
6 M& b9 l1 m2 p3 I& r% M) Y IPFS使用了SFS自认证系统给文件命名,同时提供了ipns解决传播问题,而且还兼容了现有的域名系统。 ; d7 g: ~, e" l5 K5 E
, P B2 G2 X0 x2 @7 _& I7 \这就是我们的IPFS,一颗冉冉升起的新星 |