IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> Solana Account 详解 -> 正文阅读

[区块链]Solana Account 详解

1、Account概述

在Solana的世界里,一切都是Account,每个Account都有一个独一无二的地址,除了地址外,每个Account都有以下属性:

a.?lamports

在Solana的世界里,Account不是免费的,因为Account会占用一定的存储空间,因此,为了持有一个Account,你需要支付一定的SOL币给这个账户,Solana区块链没过一段时间,都会扣除一定费用,一旦费用不足,这个Account所包含的所有数据都会被清除。lamports这个属性就代表着当前的Account还剩余的SOL数量。

b. rent_epoch

这个属性和lamports相关,表示到什么时候lamports会不足

c.?owner

每个account都需要保存它的owner账户,owner必须是一个program(其实也是个Account,下面会讲到),只有owner可以修改这个Account的数据

d.?executable

是否可执行,只有Program Account才是可执行的,Data Account不可执行

e.?data

这个Account存储的内容,可以是一段代码,也可以是用户的个人数据。

在Solana中,Account分为两种:Program Account和Data Account。Program Account主要负责逻辑的处理,它不负责存储最终结果,而Data Account只存储最终结果,无法执行逻辑。

2、Program Account

Program Account也叫程序账户,所有部署在Solana上的程序,本质上都是一个Account,只是这个Account的executable属性是true,data属性存储了这个程序的代码。

Program Account也分为两种,一种是Native?Program Account,一种是Custom?Program Account。Native?Program Account就是Solana官方开发的,内嵌在区块链中的程序,比如BPF Upgradeable Loader程序,这个程序是一切Custom?Program Account的owner,它的作用是部署一个Custom?Program到Solana链,我们可以在Solana explorer上看到这个程序的信息:

这个?Native?Program Account的地址是BPFLoaderUpgradeab1e11111111111111111111111,是一个官方写死的地址,它的executable属性为true。

接下来我们看看Custom?Program Account,以Serum Dex Program v3为例:

?这个Custom?Program Account的地址9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin

这是一个用户自己生成的地址,它的Executable是true,而且有upgrade 权限,可以实时更新代码。它的data属性保存了一个地址DTxcpNApaMLNfYgwQ99PmpCm8rjS7o1q2YdfzYsrYohB,这个地址实际上是个Data Account,用来存放实际的代码。

3、Data Account

Data Account是用来存放数据的,它的executable是false,它的owner是一个Program Account的地址,它的data会存放业务逻辑执行完成后的结果。下面以Serum Dex Program v3 Data

为例:

这个Data Account的地址是39L6JVBeszmpZtW8u9SdohagfQCaatZYDoEAqTkJmdZP,它的executable是false,它的owner(Assigned Program Id)指向了?Serum Dex Program v3的程序,目前分配了3228bytes的空间用来存储数据。

下面这张图可以用来概述Data Account和Program Account之间的关系:

?

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:36:25  更:2022-07-21 21:36:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 21:19:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码