没有IPFS的以太坊,是不完美的!
一身似水厝
发表于 2023-1-5 07:11:50
295
0
0
: H6 c$ m3 d7 ?) e% b# v( D6 a
1、以太坊GAS成本问题
2 D- B8 E7 b4 d6 r6 i
Gas是什么?
Gas的中文名叫瓦斯,有时也会称呼为燃料,它是用于支付给在电脑上记录交易及其他行为的以太币,相当于比特币中的交易费用。
% n0 W1 U8 i Y
在以太坊平台上运行的大多数分布式应用程序,需要存储/检索数据,就像使用PostgreSQL,MongoDB,Redis等传统或“集中”应用程序一样。EVM(以太坊虚拟机)确实允许我们保存变量/状态永久存储。
% g+ R8 H: N+ y* [2 c
但存储交易费用,是非常高昂的。& N5 `% Y! e) k7 L8 y
例如,总计两个数字需要3个gas。乘以它们需要5个gas。将256位字存储到区块链中需要20000个gas,这意味着存储1kb的数据需要640000个gas。
4 G$ o* g' K" Q5 r) f( |( K1 o
就像美元有美分一样,以太也有自己的基本单位:wei。 如果我们将wei作为以太的基本单位,我们得到下面的定义表:& b% Q2 e4 K: G+ U' O3 t7 z
# L$ G% l+ e& |2 G2 T+ e
比如,去年11月23日的交易价格(530美元,4gwei),在以太坊上存储250GB将花费你106,000,000美元。一般来说,我们可以忍受高成本因为我们:
( r ?' p5 f# _+ ~! l* R
不会在以太坊区块链上保存那么多数据区块链的审查制度,透明度和稳健性是值得的
7 b: Y. p0 y! B/ c5 S5 ]
. ~+ w* V0 ~* @4 X
以太坊是如何解决存储交易的高昂成本问题?
% y# e ~7 j% p- c, q! V Y2 w% f
2、以太坊底层存储方案——IPFS(星际文件系统)5 W* r& {0 m' i
% u- K& [2 b3 {# \) n
对于以太坊来说,将几个字节保存到EVM是可以的,但对于更大的数据块,大多数项目的成本可能太高。
一种解决方案是修改我们的数据存储策略,并将数据保存在链外。有多种脱链存储选项:IPFS和Swarm是两种流行的存储选项。0 K5 V4 i6 f! L+ r& V V/ n
& H% E5 _! p! Q) |' T
我将在这篇文章中使用IPFS。$ t& U2 r6 b; b
IPFS(行星际文件系统)是一种旨在创建存储和共享文件的永久和分散方法的协议
IPFS允许p2p存储,我们可以将其用作分布式文件系统来存储数据。: n! ?3 U; z/ K( s. q8 Y
3、以太坊为何选择IPFS作为存储解决方案?
7 y( S+ z% z6 j3 ^4 V$ ]
低成本数据存储战略
9 t6 |$ J5 |) h6 E0 T
: y% w+ C' @; D$ y
在IPFS上保存数据,可提供唯一的哈希值。以太坊只会在合同上存储哈希,而不是将数据存储在合同上,然后我们可以使用哈希来检索数据。) {) y5 L$ q& q, I E8 A8 M
* F I4 k9 s- N0 }* v
在应用中,你需要创建自己的IPFS节点,但INFURA为开发人员提供了一个我们可以免费使用的节点。+ `7 Y* @* S& I* Q! L1 G8 ^
用户可以将数据保存到IPFS:6 T% n2 a7 X- F, ] l5 R, R+ y$ L
ipfs网络将为你返回一串哈希值,如下:
“Qmaj3ZhZtHynXc1tpnTnSBNsq8tZihMuV34wAvpURPZZMs”,我们可以使用它来查询我们的数据。# K# L5 p* z% D8 Y" K. ]+ ?
IPFS网络系统根据搜索的哈希值,返回数据:( ^5 S8 ]& U: z2 O; Q2 f* J
- o" e8 R$ x. a/ i
“8803cf48b8805198dbf85b2e0d514320”
散列字符串大小与数据大小无关,这意味着以太坊可以在IPFS上存储大数据块或文件,而不会增加交易成本!" T# L4 h. D6 U; U$ x
目前,在Filecoin主网未上线的状态下,使用IPFS存储文件,成本不会比传统的磁盘空间花费更多。例如:使用EBS 250GB存储运行EC2 t2.micro实例,将花费你大约15美元/月。
去中心化存储
" y( A) v" v. H) H5 q$ G8 \4 V
+ `; f. |& y3 A0 g% Z5 c, i$ V
9 w; m2 i& }: p. i
IPFS(星际文件系统)对区块链存储有一些保证,即去中心化和防篡改。# I7 o$ U0 J5 i1 p& {( p6 V
IPFS的一个独特功能是它处理文件的方式。它不使用基于位置的寻址(如域名,IP地址,文件路径等),而是使用基于内容的寻址。将文件(或目录)添加到IPFS存储库后,可以通过其加密哈希来引用它。
4 t2 {' ~$ k, ?, T# x9 H: P
然后,你可以使用IPFS客户端或任何公共网关访问文件。你还可以创建非公共网关,默认情况下使其成为可写(只读),并实现授权方案,以便以编程方式访问IPFS网络。- K2 X- O) e: a
强壮的存储系统
# I% k, W7 \2 H. y+ a* S. Y
+ \5 d: K6 u! `, U
; R1 T, ?4 z1 j! Q% v! ^
重要的是要了解IPFS不是一种服务,其他节点将存储你的内容。; X, t7 m8 |1 S P# }; ]
如果你的内容不受欢迎,IPFS网络上一些节点,不想在出租存储空间,垃圾收集器会将其从其他节点中删除。只要网络上至少有一个节点,存储着你的文件,并且有兴趣存储它们,网络上的其他节点就可以轻松获取该文件。' s9 V/ u6 {' q) \/ Z
; W3 i5 Q5 N5 {
即使你的文件从网络中消失,也可以在以后再次添加,除非其内容发生更改,否则其地址(哈希)将相同。
/ c- D1 c* C. I
IPFS是一种分布式文件系统,与以太坊的分布式计算机,有着天然的共同点,是最默契的搭档。不仅是以太坊,还有数百个项目选择ipfs,作为他们底层的存储设施,尤其是区块链项目,因此,IPFS&Filecoin,将成为区块链世界的底层基础设施。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
成为第一个吐槽的人