中移链链账户、合约与资源关系介绍

news2024/12/24 12:14:27

中移链链账户是在中移链区块链上注册的用户标识,每个账户可以持有一定数量的资源。CPU资源是账户用于执行智能合约的计算能力配额,决定了账户可以使用的CPU计算时间。NET资源是账户的带宽配额,用于处理事务的传输和网络通信。RAM资源用于存储智能合约执行过程中状态库数据。这些资源、链账户和智能合约构成了整个中移链的生态环境。

01

创建链账户

在中移链中,通过椭圆曲线加密算法生成公私钥对,这是一种非对称加密算法,它使用两个不同的密钥(公钥和私钥)进行加密和解密。所以在创建账户前,首先要生成账户的公私钥对。公私钥对用于身份验证和交易签名,以便执行智能合约。在EOS中,一个账户可以拥有多个公钥,而每个公钥都可以授权给不同的操作或合约执行权限。与之相对应的是私钥,它是保密的,并且只有持有者才能访问。私钥负责对交易进行签名和身份验证,确保只有私钥的持有者才能执行特定操作。因此,私钥必须妥善保管,以防止未经授权的人员访问你的账户并进行非法操作。

确认公私钥对并妥善保存后,在BSN开放联盟链后台中找到链账户管理,点击左上角的创建链账户。

链类型选择中移链。中移链默认账户名称为12位(允许字符a~z、1~5)。

在ActiveKey中输入生成的公钥,并点击确认创建,即可完成创建。(注:公私钥也可以点击在线生成按钮下载保存)

创建完成后,可以在链账户管理中看到创建的链账户。

02

链账户的主要资源

在中移链中,链账户主要包含CPU、RAM和NET三种资源。CPU资源是用于执行智能合约的计算能力,RAM资源用于存储智能合约和其它数据,NET资源则是用于处理网络通信。每个中移链账户需要购买这些资源才能够在区块链上执行智能合约。

中移链查询接口网关地址/api/[项目id]/rpc/getAccount可以获取账户的信息如下:

{  
   "account_name": "testaccount1",  
    "head_block_num": 307847,  # 区块高度
    "privileged": false,  # 是否为超级账户
    "created": "2021-12-28T02:08:41.500",  # 账户创建时间  
    "core_liquid_balance": "5.3960 SYS",  # 可用余额  
    "ram_quota": 401417, # RAM总量 byte : 是实际买的RAM + 赠送的 ram_gift_bytes (1400)  
    "net_weight": 200000, # 网络带宽资源权重  
    "cpu_weight": 200000, # cpu资源权重  
    "net_limit": {  
      "used": 70142,      # 已用net  
      "available": 36168601, # 可用余额net 单位byte  
      "max": 36238743,  # 总net 值 单位byte  
      "current_used": 21807  
    },  
    "cpu_limit": { # 账户cpu使用信息  
      "used": 6239,  
      "available": 13817727,  
      "max": 13823966,  
      "current_used": 1940  
    },  
    "ram_usage": 383920,  # RAM已用 byte   
    "permissions": [{  # 权限相关信息
        "perm_name": "active",  
        "parent": "owner",  
        "required_auth": {  
          "threshold": 1,  
          "keys": [{  
              "key": "EOS6***********",  
              "weight": 1  
            }  
          ],  
          "accounts": [],  
          "waits": []  
        }  
      },{  
          *******
    ],  
    "total_resources": { # 总资源
      "owner": "testaccount1",  
     "net_weight": "20.0000 SYS",  
      "cpu_weight": "20.0000 SYS",  
      "ram_bytes": 400017 # 实际购买的RAM 大小  
    },  
    "self_delegated_bandwidth": null, # 为自己抵押的资源
    "refund_request": null,  # 正在赎回的资源
     "voter_info": null, # 投票的信息
 }  

从接口返回信息可以看到,每个链账户都可以获得一定的CPU、NET和RAM资源。用户可以在中移链开放联盟链中通过分配资源功能购买资源。

03

链账户、合约与资源关系介绍

链账户和智能合约是中移链区块链平台的两个核心概念,它们共同构建了中移链生态系统的基石。

智能合约是在中移链区块链上执行的自动化合约。它是一段由代码编写的程序,包含了特定条件和规则。在中移链网络中,用户可以使用C++和JavaScript来编写智能合约,最终会编译为 WebAssembly(Wasm)的二进制文件格式进行执行。编写完合约后,用户需要通过链账户来将智能合约部署到链上且一个链账户只能部署一个合约,这个链账户将成为合约的唯一标识,并作为存储合约的代码和数据的标识。在部署智能合约时,需要使用链账户的私钥进行数字签名和身份验证以及将合约的二进制文件和相关的部署参数发送到区块链网络上。

RAM、CPU和NET是中移链中不可或缺的三个资源,它们为智能合约提供了必要的支持和保障,同时也为链账户提供了足够的容量和计算能力,从而推动整个生态系统的发展和扩张。

中移链账户需要使用RAM来存储合约执行过程中各种类型的数据和状态库,例如:

(1)账户数据记录,如账户的余额、交易记录、授权信息、公钥和权限等;

(2)合约状态信息,如存储数据的键值对、智能合约的状态和配置信息;

每个中移链账户需要购买足够的RAM来支持其合约执行的需要,否则将无法写入新的数据(但可以通过删除智能合约中状态数据库中的数据从而清理出可用空间)。CPU资源用于执行智能合约,而带宽资源NET则用于将交易和数据传输到链上。CPU资源的消耗取决于合约执行的复杂性和执行时间,而NET资源的消耗取决于合约执行事务的大小。链上越活跃的交易越多,CPU和NET就越容易被消耗。CPU、NET资源是抵押型的,如果一个账户的CPU资源或NET资源配额不足,该账户的合约执行速度将受到限制,无法执行新的合约以及发送事务,直到资源被线性释放或重新增加。通过BSN开放联盟链的控制台可以方便看到当前资源的消耗情况。

04

参考资料

[1]BSN开放联盟链:

https://opb.bsnbase.com/main/index

[2]官方EOSIO账号和权限介绍:

https://developers.eos.io/welcome/latest/protocol-guides/accounts_and_permissions

[3]官方EOSIO交易介绍:

https://developers.eos.io/welcome/latest/protocol-guides/transactions_protocol

[4]官方EOSIO智能合约介绍:

https://developers.eos.io/welcome/latest/smart-contract-guides/index

[5]官方EOSIO资源模块介绍:

https://developers.eos.io/welcome/latest/resources/index

电脑访问DDC网络门户

ddc.bsnbase.com

-END-

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

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

相关文章

【SSO】单点登录方案

一、单点登录问题 由于Http请求是无状态的请求,服务器无法确认登录信息。当用户登录时,将用户信息存储到Session中,Session将认证的用户信息以Cookie方式返回给客户端。每次用户请求不同的业务系统,都会携带Cookie去请求。保证了…

CloudCompare

零、安装 软件包直接安装 帮助文档:http://www.cloudcompare.org/doc 官网:http://www.danielgm.net/cc/ 一、操作:分割、删除点 1、打开文件File–>Open 支持的格式: 2、旋转和移动点云 鼠标左键可以旋转、右键可以移动 定轴…

Yolov8改进---注意力机制:ICASSP2023 EMA基于跨空间学习的高效多尺度注意力、效果优于ECA、CBAM、CA | 小目标涨点明显

1.EMA介绍 论文:https://arxiv.org/abs/2305.13563v1 录用:ICASSP2023 通过通道降维来建模跨通道关系可能会给提取深度视觉表示带来副作用。本文提出了一种新的高效的多尺度注意力(EMA)模块。以保留每个通道上的信息和降低计算开销为目标,将部分通道重塑为批量维度,并将…

【Linux】ubuntu20.04上使用xrdp控制输入密码之后一直停顿不动,进不去桌面环境

一、问题背景 如下图所示,每次登录桌面一段时间,就会因为自动锁定机制而锁定账户。 重新去激活账户时,输入正确的密码,回车确定,之后就停留在上面那个界面了。 二、 解决方案 2.1 重启xrdp服务 这个方法&#xff…

支付宝沙箱支付详细教程(IDEA版)—2023最新版

😇作者介绍:一个有梦想、有理想、有目标的,且渴望能够学有所成的追梦人。 🎆学习格言:不读书的人,思想就会停止。——狄德罗 ⛪️个人主页:进入博主主页 🗼专栏系列:无 &#x1f33c…

leetcode数据库题第七弹

leetcode数据库题第七弹 1581. 进店却未进行过交易的顾客1587. 银行账户概要 II1633. 各赛事的用户注册率1661. 每台机器的进程平均运行时间1667. 修复表中的名字1683. 无效的推文1693. 每天的领导和合伙人1729. 求关注者的数量1731. 每位经理的下属员工数量1741. 查找每个员工…

软件性能测试流程指南

1 编写目的 规范Performance Tesing性能测试过程中的活动,明确测试活动流程和过程中各组织、角色的职责;使性能测试工作有章可循,控制测试活动按照计划有效的进行,用于指导性能测试项目的实施,从流程和规范性上保证测…

详细讲解~接口测试实践

目录 前言: 接口测试 为什么介绍接口测试? 模块接口测试 web接口测试 前言: 接口测试是软件测试中的重要环节,它涉及对系统的API(Application Programming Int…

中间件解析漏洞

服务器解析漏洞算是历史比较悠久了,但如今依然广泛存在。在此记录汇总一些常见服务器(WEB server)的解析漏洞,比如IIS6.0、IIS7.5、apache、nginx等 2|0 二、IIS5.x-6.x解析漏洞(针对asa/asp/cer) 2|11、打…

仿造 elementUI 实现一个下拉选择器

前言: 近期在项目中遇到了一个设计需求,在 UI 给我提供的原图中有一个和 element UI 选择器功能基本一致的样式,但是由于我们是有自己的主体颜色和一些细节上的样式设计的,无法直接复用 element 组件库。所以需要自己动手实现一个…

Linux3.权限

1.外壳程序(shell):通常情况下用户不直接与操作系统进行交互,而是通过外壳程序,在windows下叫做图形化界面,在Linux下叫做指令。 centos7使用的外壳程序是bash。 作用 :a.是用户和操作系统交互的中间软件层。b可以在一定程度起到保护操作系统…

HackTheBox - 学院【CPTS】复习3 - XSS、文件包含、文件上传、命令注入

XSS 登录表单 document.write(<h3>Please login to continue</h3><form actionhttp://OUR_IP><input type"username" name"username" placeholder"Username"><input type"password" name"password&…

动态规划:积木画

积木画 问题描述 小明最近迷上了积木画, 有这么两种类型的积木, 分别为 I I I 型&#xff08;大小为 2 个单位面积) 和 L L L 型 (大小为 3 个单位面积): 同时, 小明有一块面积大小为 2 N 2 \times N 2N 的画布, 画布由 2 N 2 \times N 2N 个 1 1 1 \times 1 11 区域…

如何解读 Java 的继承和多态特性?

&#x1f482; 个人网站:【海拥】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 目录 前言继承类的继承继承的…

Gartner宣布,亚马逊云科技全球数据库市场份额超四分之一

对比常规的基础设施上云和应用上云,企业对于数据上云一直保持最为慎重的态度。不过也不是一成不变的,Gartner前不久公布的一组数据显示,在2022年全球数据库管理系统的市场份额排名中,作为纯云厂商的亚马逊云科技,超越了老牌传统数据库厂商甲骨文和微软,首次位居第一。 降低企业…

Qt信号和信号槽(二)

目录 信号槽使用拓展 示例1&#xff08;一个信号可以对应多个槽函数&#xff09;&#xff08;在上篇文章的代码中进行修改&#xff09;&#xff1a; 示例2(用信号连接信号)&#xff1a; 信号槽的连接方式 示例&#xff1a; Lambda表达式 语法格式 定义和调用 信号槽使用拓…

【金融量化】如何筛选基金?

基金的评价与筛选 1 筛选步骤 1.1 股票型基金 &#xff08;1&#xff09;构建备选池 优先考虑股票配置较为稳定的基金&#xff0c;这样才能预估基金未来一段时间的表现&#xff0c;及其对基准股票指数的跟踪情况。因此&#xff0c;首先应该剔除那些仓位变化较大、本身在进行…

[刷题] 删除有序数组中的重复项

系列文章目录 删除有序数组中的重复项 文章目录 系列文章目录在这里插入图片描述 前言1、题目1.2、判题标准1.3、示例 2、解题2.1、双指针正向查找2.1、逆序删除 3、总结 前言 数据结构在程序世界里非常重要&#xff0c;尤其大厂面试是必考项目&#xff0c;今天随机到[删除有…

“三步走”构建全链路数据能力,助力企业全面唤醒数据价值

01 企业数字化转型加速前进&#xff0c;数据价值唤醒仍面临多重挑战 数字经济蓬勃发展时代&#xff0c;数据已成为关键生产要素。随着国家政策对数据要素价值释放的方向引领&#xff0c;数据赋能企业经营决策、业务模式创新的需求不断强化&#xff0c;以及新兴技术工具的有效支…

[LeetCode 1401]圆和矩形是否有重叠

题目描述 给你一个以 (radius, xCenter, yCenter) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2) &#xff0c;其中 (x1, y1) 是矩形左下角的坐标&#xff0c;而 (x2, y2) 是右上角的坐标。 如果圆和矩形有重叠的部分&#xff0c;请你返回 true &#xff0c;否则返回 f…