Arweave -- 永久性存储分享

news2024/11/25 20:32:27

Arweave

Arweave 是一种新型存储,它支持具有可持续和永久的数据,允许用户和开发人员真正永久地存储数据

Arweave 项目,以前称为 Archain,正在创建一个与互联网平行的永久、去中心化和不可审查的信息档案。Arweave 的新颖“blockweave”技术建立在第一个真正可扩展的加密货币之上,可实现高效、自组织的数据存储,确保网络中的数据在未来许多年、数十年甚至数百年内都可用,不受意外或有意的影响数据变更

Arweave 原理(区块纺 Blockweave

Arweave 采用链上存储,每个节点只存储一部分区块,每个区块除了像传统区块链协议一样链接到之前的一个区块,还指向了一个随机的先前回忆区块 (recall chunk) , 因此构成了一个纺状的区块结构blockweave,并且每个区块大小没有限制。(filecoin的矿工硬盘里包含两类数据,一类是filecoin整条链的区块交易数据,另一类才是用户存储的信息,而ar矿工的硬盘里只有arweave的区块数据,无论是交易信息还是存储信息都在区块里。)

SPoRA共识机制

Arweave在使用SPoRA共识机制之前, 使用的是PoA+PoW机制。PoA代表Proof of Access:访问证明。在该机制下,Arweave要求网络中的每个矿工节点如果想要生成新的区块并获得奖励, 就必须在本地访问随机的一个回忆区块,如果他没有储存该区块,就没有办法生成新区块。

在这种情况下,如果矿工想尽可能获得较高的挖矿收益, 那么他会去选择存储所有区块,因为每个下一个区块会指向当前区块以及之前随机的一个区块,储存的区块越多,就越有资格产出区块和获得奖励。PoA激励了矿工去多存储Arweave的区块, 并且这也鼓励矿工去存储一些大家较少存储的区块, 来提高满足PoA的概率。

然而单独的PoA机制下, 如果所有矿工都把所有区块存储了, 那么每个人的出块概率就是完全一样的,所以在PoA之外,Arweave又引入了PoW(工作量证明)机制来丰富出块的竞争维度。

Arweave在2021年2月把PoA+POW升级为SPoRA。单纯的PoA+PoW机制保证了数据的永久存储,但是没有保证数据的访问速度,而PoW还有耗电的环保问题。SPoRA机制降低了之前矿工出块概率中PoW的权重,加入了数据访问速度的维度。除此之外,SPoRA让矿工更加专注于维护自己本地的硬件和节点, 避免矿工们都把数据存储在同一个费率低的数据中心, 便于节点地理位置的多样化,提高了整个网络去中心化的程度

解决了什么

Arweave 为了解决传统区块链架构下的链堵和高昂的gas和低下的tps这一问题,设计了不同的区块链数据结构以及证明方式

缺点

这样每个节点只存储一部分区块的设计,带来的问题是无法像存储全区块的传统区块链一样每个节点都可以验证交易,这样的支付交易信息无法得到有效的安全性验证,Arweave使用2张表解决了这个问题:

  1. 区块哈希列表
  2. 钱包列表

有了块哈希列表,我们不需要下载所有区块进行逐个验证,而是在区块生成过程中持续验证。

有了钱包表,Arweave可以在当前区块即可查到任何一个账户的状态。其原因和以太坊中为何状态树不和交易树一样只存储当前区块涉及到的账户一样。即假设要给1个没有发生过交易的账户转账,则需要遍历到初始块中。以太坊的设计是为了提高效率,而Arweave则是为了实现只存储部分区块的目标。

生成新块

我们来描述Arweave生成1个新的区块的具体流程

  1. 当面末尾区块是区块5,节点A存储了区块2和3
  2. 生成区块6的需要携带区块2的数据,节点A进行POW
  3. 通过比拼节点A POW竞争中胜出,获得记账权
  4. 节点A打包事务并按照要求存入区块2的部分数据,整体打包生成新的区块
  5. 节点A将新的区块和recall block广播给其他节点
  6. 其他节点验证新的区块是否有效,有效包含区块的随机数符合POW以及区块中是否包含recall block的部分数据。

上面的过程,为什么要将recall block也一并广播给其他节点呢?Arweave每个节点只存储部分区块,所以很多节点并没有该recall block,但很多都包含recall block的hash值,这样我们可以确认传输过来的recall block的正确性,并用该recall block去验证新的区块中包含的数据是否正确。

Arweave通过POA的方式可以实现均匀的将块分布在不同节点上,每次新块需要的recall block是随机的,一旦某个区块有较少节点存储那么拥有这个区块的节点获得记账权的概率就会变大,从而其他节点也来存储该区块。而如果按照均匀分布计算,某个区块丢失的概率为 (1-平均每个节点存储的区块数/网络中所有区块)^网络中节点数,由于网络中节点数不断增加,区块丢失概率非常之低。

由此可见,Arweave的永久存储还是比较靠谱的,真正从机制上实现了存储冗余

存储成本

Arweave 上任何数据的存储成本取决于三个因素:

  • 正在存储的数据的大小
  • 今天永久存储 1 GB 数据的法定成本
  • AR(Arweave 的原生代币)的法定价格

这一切的前提都建立在互联网网络日益降低的存储成本趋势上。存储成本主要受数据密度和数据可靠性驱动

需要注意的是,**用户支付的存储费用也被设为矿工永久存储的成本,Arweave 目前的收费足以覆盖存储数据 200年的成本。根据 Arweavefees数据,目前存储数据费用约为 2.927 USD/GB

经济模型

加密协议的经济模型就是如何协调服务提供者*(矿工)、服务使用者(用户)和持币者之间的利益关系。矿工为加密协议网络提供计算、带宽和存储资源,保障协议安全可用,用户使用协议要向矿工付费。矿工的收益分为两个部分:一是用户直接支付的交易费;二是协议向矿工分发新铸造的通证,即增发奖励。增发奖励是全体持币者按照持币数量分摊的铸币税。在几乎所有加密协议经济模型中,矿工的主要收益都是增发奖励(铸币税)*。例如,虽然比特币已经经过三次增发奖励减半,增发奖励仍然占矿工总收益的 95%,交易费仅占 5%。这实际上是持币者对用户使用协议进行补贴的机制。

Arweave协议平均 2 分钟一个区块,创世块之后每个区块增发大约 29 个 AR,增发量每年减半,一共最多增发 1100 万个 AR。也就是说,主网上线 2018 年 6 月后的每一年,都会挖出剩余 AR 的一半,即第一年挖出 550 万个 AR,第二年挖 275 个,第三年挖 137.5 万个 ...(Arweave主网于 2018 年 6 月上线,出块奖励发放有两多月的滞后)

总结来看,区块通胀是大部分加密协议的最基本收益来源。如比特币和以太坊,都以原生代币的形式提供矿工区块验证补偿。AR 的总量为 6600 万,在 2018 年 6 月 8 日的创世区块生成了 5500 万个。与比特币类似,AR 代币发行/区块奖励设计呈下降趋势 。与比特币每 4 年减半的离散减半模式不同,AR 代币是连续减半模式 。据 Delphi Digital 报告 ,2021 年区块奖励大约占 972,000 AR,即平均 3.7 AR/2 分钟区块;随着区块膨胀最终达到 0,AR 代币最终完成 6600 万代币的发行。

Arweave 网络的核心贡献者是自愿加入的矿工。矿工愿意永久储存数据的动力是收益。矿工们的收入主要有两个来源,一个是网络手续费,另一个便是区块奖励/区块通胀

Arweav生态项目

ArdriveArDrive

,一个永久版的 Dropbox,将数据上传至永在网。桌面端的 Evermore 则允许用户配置本地文件夹,文件夹中的内容将自动备份到 Arweave。这些 dApp 使得永在网提供了与传统互联网类似的用户体验,但用户发布的内容可永久访问和使用,404 不会出现。

Bundlr

2021 年 9 月,Arweave 发布了二层解决方案 — Bundlr。Bundlr 更像是 L2 兼容层。简单来看,若协议一次性需上传大量数据,可能会达到 Arweave 网络当前的吞吐量限制。而 Bundlr 将多个第 2 层交易捆绑/打包成单笔 Arweave (第 1 层)交易(即 Bundle)后上传,从而有效缓解 Arweave 网络拥堵情况,提升用户体验。Bundlr 节点并不压缩数据,只是减少 Arweave 上的交易计数。Bundlr 给出用户的收据凭证将作为权益证明,确保其交易有效性及安全性。这解决了在 Arweave 上存储大容量文件的需求。Bundlr 亦支持用户使用 ETH、SOL、MATIC 等多种代币来支付存储费用,用户不再需要获取 AR 代币、链接 Arweave 钱包。交易繁琐度下降后,用户体验因而上升。可以说,Bundlr 在不牺牲安全性的情况下,提供了类 Web 2 的高速、高效的用户体验。

目前,Bundlr 已经处理了超过 2 亿笔交易,超过 90% 的上传到 Arweave 的数据,并将上传速度提高了约 3000%。直观的数据表明了 Bundles 提供了更可靠、更具成本效益的永久存储,也吸引了更多开发和使用者进入 AR 生态。

去中心化博客Mirror

mirror作为加密市场目前使用范围最广的去中心博客平台,过去一年作者带来给1百多万美元的收入,如果再加上创作者众筹,那么Mirror的数据是 1千1百万美元,Mirror 是目前最成功的非金融web3产品,得益于ar低廉的永久存储成本,在过去的一年的吸引了加密市场大量用户,如今加密圈在在mirrior写文章已经是加密圈的主流习惯,一个永远不会被关闭的博客平台对于以往大量因为各种原因关闭的中心化博客平台有着巨大的竞争力。近期mirror发布了订阅功能,新功能的迭代加入将会是的mirror更加有着竞争力。去中心邮箱电子邮件是上个世纪互联网最早的发明与通讯工具,而arweave这种永久存储范式的公链最适合用来把上个世纪发明的电子邮箱去中心化,而且由于发送邮件是付费的可以非常有效的解决传统电子邮件解决不了的垃圾邮件的问题,目前arweave生态已经有了两款去中心化邮箱产品,分别是官方的weve.mail以及permamail.app。

去中心化论坛metaweave

metaweave.xyz是目前arweave生态一个比较有意思的产品,目前已经实现了一个去中心化论坛所有的发帖,点赞,评论功能,但由于对于 Arweave出块时间为2分钟,大约需要 2 分钟才能确认发帖,相比以太坊的15秒是要长的多,在用户体验方面确实存在问题。如果用户只想上传少量数据,例如 200KB 的 PDF 文件,但必须等待 2 分钟才能获得一次确认,他们就不想再使用该产品了。为了解决这个问题,去中心化网关ar.io - Your Gateway to the Permaweb在今年年初融资了1700万美金将打造一个强大的去中心化arweave网关用来缓存数据,网关可以将多个上传捆绑到一个 Arweave 交易中以降低费用加强arweave生态体验,相信随着生态的不断建设与数据自主权的不断深入人心,metaweave这样的真正去中心化论坛将会获得越来越多用户的亲睐。

基于存储范式(SCP)的去中心化电子游戏

以我的世界为例,去中心化游戏的第一步就是资源上链,第二步就是用SCP把所有执行指令上链,把一个游戏从链上加载回来,然后把游戏在本地运行起来,这些本地客户端可能是Mac电脑,可能是Windows电脑,或者是个人手机。游戏运行起来之后要符合SCP模型,本地客户端首先需要加载存储在Arweave上的所有历史指令,构建出我的世界里的每一个板块。在我的世界中指令非常简单,通常是在某个坐标点放置某种方块,或者从某个坐标点移除方块。一个用户在玩游戏的过程中的所有指令都会批量的上传到Arweave上,不论用户在游戏中做一百万条指令还是一千万条指令,这些指令都将被打包到Arweave的区块中。当Arweave上存在游戏素材、游戏核心程序以及玩家的游戏指令后,任何的用户都可以通过AR下载到这个程序,加载指令,把曾经建设的造房屋完整的构建出来。

因为只是指令上链,共识的成本将会非常低。目前1GB共识数据只需要4美金,由于1GB只是一种指令存储,因此使用1GB数据处理千万条指令。指令和所有素材都在Arweave上,核心程序也在Arweave上,那么任何时候都可以从Arweave加载和运算出构建的庞大地图,这些地图中的建筑就是由成千上万条指令组成的。甚至在游戏中我们移动的每一步都可以批量上传到Arweave上。

此时链游的节点就像比特币一样,用户在玩这个游戏,挖矿这个游戏的时候,就会直接把私钥注入这个节点,就和比特币矿工去挖矿肯一定要注入钱包一样,打包,验证,挖出比特币到矿工钱包。在玩我的世界的时候,放入的私钥将签署每走一步的移动,每个砖块的放置和删除。最终这些被签署的指令将上传到Arweave上形成共识。Arweave在这个过程中就变了可信的通信信道,每个人都通过加载存在Arweave上的可信事件,构建出一个可信的元宇宙。

DeFi 的抗审查

DeFi 经济的内在意识源于“去中心化”,希望打造一个更平等、更透明、更安全的数字经济。然而,诸如 Uniswap 在内的 DeFi 项目并无法逃过躲过监管。2021 年 7 月,出于美国监管政策,注册在美国的 Uniswap ,将从前端删除自 Synthetix 等衍生品平台的129只代币。尽管以太坊链上交易记录无法修改,尽管前端用户界面(UI)是开源的,尽管 UI 界面之下的智能合约仍然存在,但 UI 的管理仍是中心化的,开发人员有权利进行 UI 界面的任何更改和“更新”。

正如 Arweave 提出的,“****协议是永恒的,但 DeFi 可以被审查吗?”****当去中心化金融失去去中心化的本质,成为监管政策下的牺牲品时,留下的是反乌托邦式的阴影。 Arweave 成为了一个答案。当Arweave 托管了 DeFi 前端的副本,这些数据开始有了抗审查、永久和不可变的特性。网络时代的“永久”记忆或意味着降低了政府审查的威胁。作为回应,用户在 Arweave 上传了,便于用户访问审查。其他 DEX 的未审查版本,如SushiSwap,Compound,1inch、Synthetix 等都可在 Arweave 上查看

当然,尽管储存在 Arweave 上的原版本信息不会被覆盖,任何人,无论是用户还是项目开发者,都不能以任何方式改变。但对智能合约来说,永久也意味着项目升级的高昂成本。项目若想进行版本升级,即使微小的前端改动,也需进行完整的新版本部署。结语:Arweave站在比特币以太坊的这些前辈的肩上,不同于所有加密行业的传统区块链项目,做到了全新的范式创新,用博弈论设计的长期激励的经济手段确保了项目的可行性,做到了比特币以太坊这些加密行业的前辈做不到的大量数据的存储的永久性和不变性,将数据的所有权归还给了生产者,为个人赋予一种“权利”可以保护和控制自己的财富之路、数字精神之路,可以被称为区块链3.0也当之无愧

问题

如何使用 arweave.app 网络钱包?

幸运的是,我们创建了一个分步指南

AR 代币是否与任何硬件钱包兼容?

我们就快到了!arweave.app 已经完成了最初的客户端集成,但完整的支持正在等待即将发布的分类帐版本。

我可以将 AR 代币发送到 MyEtherWallet/另一个第三方钱包或 ETH 地址吗?

不,这些从根本上是不相容的。不要将您的 AR 令牌发送到其他区块链地址或钱包

其他Arweave vs filecoin

同样作为去中心和的存储方案,我们来看看Arweave和filecoin有什么区别,这里不再对比ipfs,之前文章已经论述过ipfs是更侧重数据分发的协议而非存储方案,并且filecoin就是基于ipfs搭建的

 这两种方式整体上看目前Arweave要相对更实用一些。filecoin核心问题在于其分发机制一直被诟病,基本上无法单独满足用户体验

                                                                                                       -- 以上数据参考官方和其他调研 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/100844.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

技术分享 | 软件测试入门必会-流程管理平台

JIRA 是目前比较流行的测试流程管理系统,现在很多大厂使用的都是 JIRA。为什么大厂更爱用 JIRA 呢?其实就是因为它的定制性非常的强。可以自己定义流程,自己定义界面,自己定义字段。通过这些自定义的方式,就可以让整个…

特殊情况的高新技术企业成长性计算方法。

根据文件《高新技术企业认定管理工作指引》(国科发火〔2016〕195号)规定,选取企业净资产增长率、销售收入增长率等指标对企业成长性进行评价。企业实际经营期不满三年的按实际经营时间计算,计算方法如下: 成长性评分标…

【数据结构初阶】反转链表

文章目录问题描述:思路分析:代码展示:问题描述: 给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。 数据…

【计算机毕业设计】79.勤工助学管理系统源码

一、系统截图(需要演示视频可以私聊) 摘 要 随着我国教育需求不断增加,高校教育资源有限,教育经费相对不足的情况下,利用现代信息技术发展高等教育,不仅充分利用了优秀的教育资源,而且为更多的…

迅为3A5000_7A2000开发板龙芯LoongArch架构

迅为3A5000_7A2000开发板龙芯LoongArch架构 主要参数 处理器: 龙芯3A5000 主频: 2.3GHz-2.5GHz 桥片: 7A2000 内存: 8GB、16GB DDR4带ECC纠错(配置可选) 系统: Loongnix 典型功耗: 35W 核心板: 16层 底板: 4层 核心板参数 尺寸: 125*95mm CPU: 龙芯…

J-004 Jetson电路设计之HDMI设计--NANO XAVIER NX

HDMI电路设计1 简介2 框图介绍3 原理图介绍1 简介 NANO & XAVIER NX提供一路HDMI接口,DP接口与HDMI是兼容的,可用于扩展一路HDMI。其中引脚说明: PIN名称描述方向类型63HDMI_DP_TXDN0DisplayPort 1 Lane 0 or HDMI Lane 2输出HDMI/DP65HDMI_DP_TXD…

高阶数据结构--图

本篇主要是介绍:图的一些常用的算法。 文章目录 一、图的基本概念二、图的存储结构 1、邻接矩阵2、邻接表三、图的遍历 1、广度优先遍历2、深度优先遍历四、最小生成树 1、Kruskal算法2、Prim算法五、最短路径 1、单源最短路径--Dijkstra算法2、单源最短路径--Bellm…

postgres 源码解析 45 btree分裂流程_bt_split

B树简介 B树一种多路平衡树,有如下特点: m阶B树表示每个节点最多含有m-1个元素,除了根节点之外,每个节点至少含有ceil(m/2)-1个元素。如5阶B树,每个节点最多4个元素,除根节点之外最少含有2个元素&#xf…

Java异常(Exception)处理及常见异常

很多事件并非总是按照人们自己设计意愿顺利发展的,经常出现这样那样的异常情况。 例如: 你计划周末郊游,计划从家里出发→到达目的→游泳→烧烤→回家。 但天有不测风云,当你准备烧烤时候突然天降大雨,只能终止郊游提…

Qt扫盲-QTableWidget理论总结

QTableWidget理论总结1. 概述2. QTableWidgetItem 概述3. 表头设置4. 常用功能5. 常用信号6. 槽函数7. 外观1. 概述 QTableWidget 是 Qt 提供的一个简单方便、标准的表格显示类。QTableWidget 中的 单元格数据 由 QTableWidgetItem 显示如果 想要一个使用你自己定义modle 的表…

MR案例(3):计算学生成绩(总分和平均分)

文章目录一、 任务目标1. 准备数据二、实行任务1. 创建Maven项目2. 添加相关依赖3. 创建日志属性文件4. 创建成绩映射器类5. 创建成绩驱动器类6. 启动成绩驱动器类,查看结果7. 创建成绩归并器类8. 修改成绩驱动器类9. 启动成绩驱动器列,查看结果一、 任务…

艾美捷利妥昔单抗Rituximab参数及应用

艾美捷利妥昔单抗Rituximab背景: 利妥昔单抗是一种针对CD20抗原的基因工程嵌合鼠/人单克隆IgG1κ抗体。利妥昔单抗的分子量约为145 kD。利妥昔单抗由哺乳动物细胞(中国仓鼠卵巢)产生。 艾美捷利妥昔单抗Rituximab基本参数: 中文…

Java+SSM流浪猫狗救助领养网站(含源码+论文+答辩PPT等)

项目功能简介: 该项目采用技术: 后端采用SSM框架 前端采用了htmlcssbootstrap框架 MySQL数据库Tomcat服务器,项目含有源码、文档、配套开发软件、软件安装教程、项目发布教程等 项目功能介绍: 项目分为前端和后端两,包含的功能主要…

DBCO-PEG-TPP,二苯并环辛炔-聚乙二醇-磷酸三苯酯,DBCO-PEG磷酸三苯酯

【产品描述】 西安凯新生物科技有限公司供应的:​DBCO-PEG-TPP亲水性聚乙二醇 (PEG) 间隔臂提供了一个长而灵活的连接,磷酸三苯酯为无味、无臭的白色结晶块状或粉末,它不溶于冷水,但可溶于50℃以上的热水中,当溶液温度降低至室温时呈现疏水性…

安装 DbVisualizer pro 10.0.16

DbVisualizer pro 10.0.16 双击安装, 选择下载 JRE运行后 选择 创建 桌面快捷方式 安装成功后 ping 报错无法连接到mysql , 驱动 所致 官方下载最新驱动 MySQL :: Download MySQL Connector/J (Archived Versions)https://downloads.mysql.com/archi…

校园二手书商城源代码基于微信小程序云开发,可在线支付提现,含详细配置教程

校园二手书商城源代码基于微信小程序云开发,可在线支付提现,含详细配置教程 完整代码下载地址:校园二手书商城源代码基于微信小程序云开发 欢迎使用,下面是配置教程 长话短说,下面直接说配置流程 一、小程序端 1…

JZ31. 栈的压入、弹出序列

文章目录1. 题目描述2. 解题思路3. 动图演示4. 代码实现1. 题目描述 题目链接:31. 栈的压入、弹出序列 2. 解题思路 元素入栈指的是把新元素放到栈顶元素的上面,使之成为新的栈顶元素; 元素出栈指的是从一个栈删除元素又称作出栈或退栈&am…

MySQL8.0高级篇(上)-架构与索引

文章目录一、MySQL环境安装与介绍1、MySQL安装1.1 安装前说明1.2 MySQL的Linux版安装1.3 MySQL登录1.4 字符集的相关操作1.5 字符集与比较规则(了解)1.6 请求到响应过程中字符集的变化1.7 SQL大小写规范1.8 sql_mode的合理设置2、MySQL的数据目录2.1 MySQL8的主要目录结构2.2 查…

Batch Normalization批量归一化

批量归一化(batch normalization)层,它能让较深的神经网络的训练变得更加容易。 对深层神经网络来说,即使输入数据已做标准化,训练中模型参数的更新依然很容易造成靠近输出层输出的剧烈变化。这种计算数值的不稳定性通…

前端基础_事件介绍

事件介绍 下面介绍一下浏览器在请求媒体数据、下载媒体数据、播放媒体数据一直到播放结束这一系列过程中,到底会触发哪些事件。  loadstart事件:浏览器开始请求媒介。  progress事件:浏览器正在获取媒介。  suspend事件:浏览器…