跳到主要内容

28 篇博文 含有标签「Sui」

与 Sui 区块链和 Move 编程语言相关的内容

查看所有标签

深入区块链编程:Sui Move

· 阅读需 4 分钟
Dora Noda
Software Engineer

区块链技术已成为数字世界的主导力量,提供了超越加密货币的革命性解决方案。专注于区块链的编程语言正在为自己开辟独特的空间。在这些语言中,Move 因其稳健性和固有的安全特性而占据了重要位置。今天,我们将介绍一套创新教程——“Sui Move”,它采用“通过示例学习”的方式,帮助开发者掌握 Move 编程语言。

深入区块链编程:Sui Move

理解 Move:编程语言

在深入教程之前,先简要回顾一下 Move 是什么。Move 由 Facebook 子公司 Diem Association(前身为 Libra)创建,是一种静态类型、面向资源的编程语言。其设计围绕安全性与可靠性展开,使其成为区块链和加密项目开发的理想语言。Sui Move 是 Move 编程语言的一个变体。

在 Move 中,资源(Resources)是其核心构造,区别于其他区块链编程语言。这类特殊类型既不能被复制也不能被销毁,只能在存储位置之间移动。该特性实现了对数字资产的精确控制,显著降低了双重支付等常见安全风险。

Sui Move:通过示例学习的教程

“Sui Move” 位于 https://blockeden.xyz/docs/sui/sui-move/intro/,是一套完整的、基于示例的教程,旨在教会开发者使用 Move 编程语言进行编码。

“Sui Move” 的理念是:动手实践能够加速理解与熟练程度。教程被拆分为若干小章节,每章聚焦 Move 的特定方面。这样,学习者不仅能掌握语言的技术细节,还能了解其实际落地场景。

“Sui Move” 的教学方式与众不同。它不以大量理论压垮学习者,而是为每个概念提供丰富的示例。学习者可以直接与这些示例交互,形成动态的学习环境,鼓励深入探索与理解。

该教程面向不同经验层级的学习者设计。无论你是希望进军区块链开发的资深程序员,还是刚踏入编程的大门的新手,“Sui Move” 都能帮助你高效掌握并运用相关概念。

你将学到的内容

“Sui Move” 涵盖了 Move 编程语言的核心主题,主要包括:

  • 理解 Move 的语法与结构
  • 深入探讨 Move 独特的面向资源模型
  • 使用 Move 的函数与方法进行数据操作
  • 创建并使用模块(Modules)和脚本(Scripts)
  • 处理异常并确保程序安全
  • 学习如何创建自定义代币和 NFT

为什么选择 Sui Move?

“Sui Move” 不仅是一套教程,更是一段结构化的学习旅程。它提供:

  1. 真实案例:每个概念都配有实际案例,展示如何高效使用。
  2. 全面覆盖:从基础语法到高级构造,提供完整的 Move 知识体系。
  3. 循序渐进:模块化设计帮助逐步构建理解,降低学习曲线,使复杂概念易于掌握。
  4. 灵活适配:满足从初学者到经验丰富的开发者的多样需求。

区块链技术正塑造众多行业的未来,掌握像 Move 这样的语言将为开发者打开全新机遇。借助 “Sui Move”,你将拥有一份可靠的学习资源,引领你顺利完成学习之旅。现在就开始吧,动手编码,探索 Move 与区块链技术为你带来的无限可能。

立即访问 https://blockeden.xyz/docs/sui/sui-move/intro/ 开始学习。

Sui 主网发布:BlockEden.xyz 扩展 API 套件以涵盖下一代区块链平台

· 阅读需 3 分钟
Dora Noda
Software Engineer

我们非常激动地宣布,备受期待的区块链平台 Sui 已成功启动主网。作为 BlockEden.xyz,我们致力于为客户提供区块链行业中最具创新性和前沿的解决方案。因此,我们很高兴将 Sui 纳入我们强大的 API 套件,为开发者提供更丰富的工具,以打造突破性的应用。

Sui 主网发布:BlockEden.xyz 扩展 API 套件以涵盖下一代

为什么 Sui 很重要

Sui 是下一代区块链平台,旨在解决现有方案在可扩展性、互操作性和能源效率方面的挑战。它融合了多种区块链技术的最佳特性,为开发者提供更高效、更灵活的去中心化应用(dApp)和智能合约构建平台。Sui 的关键特点包括:

  1. 可扩展性:Sui 采用独特的共识算法,能够处理 297k 交易每秒,从而确保高吞吐量和极低延迟。这使其成为构建需要快速安全交易的 dApp 的理想选择。
  2. 能源效率:Sui 的共识算法同样解决了传统工作量证明(PoW)机制的能源消耗问题。通过采用更环保的方式,Sui 为区块链行业的绿色可持续发展贡献力量。

对 BlockEden.xyz 用户的意义

随着 Sui 加入我们的 API 套件,开发者可以期待:

  1. 访问 Sui 区块链:我们的 API 将帮助开发者轻松与 Sui 区块链交互,支持在该革命性平台上部署智能合约、创建代币以及开发 dApp。
  2. 持续支持:BlockEden.xyz 将继续提供卓越的客户支持,为你在项目中实现 Sui 技术提供指导与帮助。
  3. 在 BlockEden.xyz 进行质押并获取奖励:通过在 BlockEden.xyz 质押代币,你可以参与 Sui 生态系统,并因贡献平台的增长与安全而获得奖励。

使用 BlockEden.xyz 的 Sui RPC 密钥快速入门

如果你已准备好使用 BlockEden.xyz 的 API 套件在 Sui 区块链上开发,请按照以下简单步骤获取 Sui RPC 密钥并启动项目:

步骤 1:获取连接字符串 前往我们的 API 市场 https://blockeden.xyz/api-marketplace 获取连接字符串。该字符串将使你能够通过我们的 API 访问 Sui 区块链并开始开发去中心化应用。

步骤 2:开发你的第一个 Sui DApp 参考我们完整的指南 https://blockeden.xyz/docs/sui/sui-typescript-sdk/,按照步骤设置开发环境、使用 Sui TypeScript SDK,并在 Sui 区块链上创建功能完整的 DApp。

按照以上步骤,你即可充分利用 Sui 区块链和 BlockEden.xyz 的 API 套件,开发创新且颠覆性的去中心化应用。如需任何帮助,我们的专属支持团队随时待命,为你提供全程指导。

结论

BlockEden.xyz 为迎接 Sui 加入我们日益壮大的区块链技术家族感到自豪。将 Sui 纳入 API 套件后,我们进一步拓宽了开发者在区块链领域创造突破性解决方案的可能性。我们始终致力于为用户提供最创新、最可靠的工具,赋能项目并推动去中心化技术的未来。

297k TPS!Sui 网络的惊人性能更新:吞吐量与最终确定时间概览

· 阅读需 3 分钟
Dora Noda
Software Engineer

Sui 基金会最近进行了一系列测试,以确定 Sui 网络在不同工作负载下的当前峰值吞吐量和最终确定时间。自宣布一年后,Sui 网络在性能上取得了显著进展,成为未来有前景的去中心化协议。

关键发现

  • 由 100 个全球分布的验证人组成的 Sui 网络,在不同工作负载下实现了 10,871 TPS 至 297,000 TPS 的峰值吞吐量。
  • Sui 的最终确定时间约为 480 毫秒,提供了快速的交易确认。

性能评估

为了衡量 Sui 协议的性能,基金会使用了一个在硬件配置、验证人数、地理分布和投票权分布方面与主网高度相似的全球分布式环境。测试使用了 100 个验证人、24 核 AMD 硬件、256GB 内存和 25Gbps 网卡。

使用可编程交易块(PTB)测量吞吐量

Sui 的核心开发者原语 PTB 允许构建复杂且可组合的交易序列。PTB 中的链式交易可以原子化执行或回滚,提升了效率和表达能力。每个 PTB 最多支持 1024 笔交易,使 Sui 能够处理大规模工作负载并降低用户的交易费用。

吞吐量测量的挑战

每秒交易数(TPS)是衡量区块链协议容量的常用指标。然而,仅统计每秒执行的 PTB 数量并不能准确反映 Sui 的计算能力。随着平均 PTB 大小的增加,Sui 的吞吐量会提升,但 PTB/秒 指标保持不变。因此,基金会选择以每秒执行的 PTB 中单笔交易数量作为更一致、实用的度量标准。

最终确定时间

区块链中的最终确定指交易被视为不可撤销、不可修改或回滚的时刻。此次性能更新中的最终确定时间衡量的是交易本身及其影响在交易生命周期中达到最终确定并可用于后续交易的时点。Sui 的最终确定时间约为 480 毫秒,第 95 百分位延迟约为 550 毫秒。

未来优化与可扩展性

Sui 协议在性能上取得了显著进展,但仍有许多优化和可扩展性的空间。近期,Sui 基金会计划完善以下方面:

  • 基准工具的可扩展性和覆盖范围
  • 横向扩展以支持跨多台机器的验证人内部扩展
  • 对单个验证人性能不足的弹性恢复

随着 Sui 协议的演进和性能提升,Sui 基金会将继续向社区分享更新,以获取反馈和建议。凭借其惊人的吞吐量和快速的最终确定时间,Sui 网络有望在去中心化系统领域产生重大影响。

介绍 SUIA:SUI 网络上的首个 POAP 应用

· 阅读需 3 分钟
Dora Noda
Software Engineer

注意:本文讨论的是 SUIA 在 Sui devnet 上的情况。主网的操作可能有所不同。

SUI 网络是由前 Meta 工程师开发的高性能公链。它使用 Move 编程语言构建,优先考虑安全性、可扩展性和可升级性。

什么是 POAP?

POAP(出席证明协议)是一种分发加密徽章以记录和纪念特定事件的机制。POAP 代币可以作为用户出席活动的凭证,也可以作为收藏品,类似于演唱会门票或纪念徽章。

活动组织者通常使用 POAP 向参与者分发代币,参与者随后可以收集独特的 POAP 代币(NFT 徽章),以纪念自己参加了该活动。

介绍 SUIA:SUI 网络上的首个 POAP 应用

Suia.io 是 SUI 区块链上的首个 POAP 应用,当前已在 SUI 的 devnet 上上线。未来,Suia 将拥有多种用途,如活动票务、贡献奖励和游戏,为 web3 品牌与用户之间提供全新的沉浸式、游戏化交互方式。

SUIA 的特性有哪些?

任何人都可以在 Suia 上创建 POAP 活动,所有的创建和分发都在 SUI 区块链上透明进行。用户拥有自己的 Suia 资产,SUI 区块链的独特架构和并行性能使 Suia 能够组合并创造更多的玩法可能,支持大规模用户参与、低延迟和低费用,促进与 web2 应用市场的对接。

如何使用 SUIA?

  1. 访问 Suia 官网 https://suia.io/,点击 “connect wallet” 连接钱包,当前支持 Sui 钱包和 Suiet 钱包。
  2. 连接钱包后,点击 “create Suia” 体验在 SUI 区块链上创建 POAP NFT 分发活动。按照提示上传 NFT 的类型、名称、描述、数量,如有需要还可设置白名单限制。点击 “create” 完成创建,该过程在 devnet 环境下仅需少量 SUI 代币。
  3. 创建活动后,它会出现在首页,其他用户即可发现并领取你的 POAP。

结论

Suia 由 Mynft 团队开发(该团队是 Flow 区块链上首个 vote‑to‑earn web3 平台的创始者),拥有成熟的市场和开发经验,以及坚实的社区基础。在 SUI 区块链上开发 Suia 能够发挥团队在 NFT 领域的专长,同时填补 POAP 应用的空白。

凭借完善的产品、清晰的路线图、强大的项目合作和社区运营能力,Suia 在首日测试即吸引了超过 6,000 名参与者。随着 SUI 主网的上线,SUI World DAO 将持续关注 Suia 的后续合作与用户增长。

革新可扩展性:Sui 区块链在 Web 3 中实现大规模采用的路径

· 阅读需 2 分钟
Dora Noda
Software Engineer

Sui 区块链是一个有前景的 Layer-1(L1)项目,采用了一套独特的技术创新和代币经济模型,以提供可扩展且高效的平台。本文将探讨 Sui 的核心创新,并评估其作为 Web 3.0 应用大规模采用解决方案的潜力。

关键创新

  • Sui Move:针对并行执行进行优化的 Move 语言定制版,实现了无摩擦的大规模资产创建,并提供更流畅的编程体验。
  • 单写入交易(Single-Writer Transactions):一种无需共识即可处理简单交易的新方法,使用拜占庭一致广播(Byzantine Consistent Broadcast)来保证安全性和效率。
  • Narwhal‑Tusk 共识引擎:采用有向无环图(DAG)数据结构的前沿共识机制,实现高吞吐量和低延迟。
  • 独特的代币经济模型:Sui 的代币模型通过设立存储基金来解决网络存储费用问题,从而在区块链整个生命周期内保持相对恒定的 gas 价格。此设计激励验证者,并确保有充足的存储空间可用。

评估

Sui 区块链凭借其创新的可扩展性解决方案脱颖而出,尤其是对单写入交易的无限上限。这使其非常适合高度依赖单写入交易的应用场景,如社交媒体应用和大规模 NFT 分发。

Sui 的可扩展性方案释放了低内在价值但高社会价值的 NFT 潜力,例如链上优惠券、去中心化身份(DID)以及信用卡等。此外,Sui Move 的语言特性还能在区块链上结构化存储对象,提供区块链的安全性和永久性保障。

结论

Sui 区块链为能够处理 Web 2.0 级别可扩展性的 L1 区块链提供了可行的蓝图。它象征着 Web 3.0 日益成熟以及实现十亿用户规模的潜力。无论其长期成功与否,Sui 对区块链技术的创新已是一项重要成就。

为什么 Sui 区块链是快速高效处理交易的有前景平台

· 阅读需 3 分钟
Dora Noda
Software Engineer

在区块链世界中,速度和效率是任何平台成功的关键。Sui 区块链应运而生,它承诺提供低延迟的交易处理和智能合约执行。

Sui 与 BlockEden.xyz

Sui 区块链的独特之处在于它能够区分不同类型的对象所有权。与其他区块链平台上所有合约和对象都以可变共享方式存在不同,Sui 允许对象由地址拥有,并且可以是可变拥有、不可变拥有或可变共享。这一特性被用于智能合约的并行执行和资产管理。

Sui 使用去中心化的无许可智能合约平台,偏向于低延迟的资产管理。它采用 Move 编程语言将资产定义为可以被地址拥有的对象。平台由一组无许可的权威机构维护,这些机构的角色类似于其他区块链系统中的验证者或矿工。

为了实现低延迟,Sui 将交易处理分为两个阶段:1)在对象粒度上获取分布式锁;2)执行交易并提交其效果。

第一阶段通过可靠的广播原语完成,无需在权威机构内部进行全局同步,从而通过分片实现可扩展性。对于涉及共享对象的交易,需要使用共识协议进行排序。

Sui 大幅削减了需要全局锁的瓶颈和同步点,使得随着资源增加能够实现准线性扩展。平台还支持智能合约的并行执行,多个核心或物理机器上的 Move 虚拟机读取带版本的输入对象,执行后将生成的对象写回存储。

对对象和交易的存储一致性要求非常宽松,允许每个权威机构内部使用可扩展的分布式键值存储。Sui 在权威机构之间使用拜占庭一致广播协议来保证资产常规操作的安全性,相比拜占庭一致性协议实现了更低的延迟和更好的可扩展性。

总体而言,Sui 区块链的设计选择和优化使其成为需要快速高效处理交易的应用的有前景平台。其能够 1)区分不同类型的对象所有权,2)在对象粒度上获取分布式锁,3)并行执行智能合约的能力,是其区别于其他区块链平台的关键特性。随着 Sui 区块链的出现,快速高效的交易处理时代已经到来。

BlockEden.xyz 正在乘坐 Sui 测试网第 2 波

· 阅读需 3 分钟
Dora Noda
Software Engineer

2023 年 1 月 25 日,Sui 测试网的第二波正式上线,预计持续 2 到 3 周。作为此波的一部分,BlockEden.xyz 正在帮助数百个项目在安全且高性能的 Sui 网络上进行测试和构建。最新的这一波将为开发者和用户提供更多清晰度,帮助他们为 Sui 网络的全面部署做好准备。让我们仔细看看这次测试网波次为何如此重要。

什么是测试网第 2 波?

测试网第 2 波是 Sui 的第二阶段测试。Sui 是一个区块链平台,使开发者能够轻松创建带有智能合约的去中心化应用(dApp),并将其部署在公共区块链上,利用其内置工具保持应用的安全、快速和可靠。在此阶段,数百个项目现在可以使用 BlockEden.xyz 在安全且高性能的 Sui 网络上进行测试和构建。

测试网第 2 波拥有 39 个验证者,加上 2 个由 Mysten Labs 运营的验证者,分布在全球各地。网络的 epoch(纪元)时长约为 24 小时,基于 28800 个检查点,参考 gas 价格会随 epoch 而波动。网络仅在必要时进行更新,数据仅在需要恢复的场景下被清除。Mysten Labs 提供事故支持,包括随叫随到的支持和事故管理协议,并与选定的验证者进行必要的协调。

如何连接到 Sui 测试网?

该网络是无许可的。虽然任何人都可以参与测试网,但奖励仅发放给项目参与者。

针对终端用户或加密持有者:

  1. 可在此处下载 Sui Web 钱包
  2. 打开 Sui 钱包 → 设置(3 条线)→ 网络 → Sui 测试网
  3. 使用 Sui Discord #testnet-faucet 频道获取 Sui 测试网代币
  4. 在测试网,可访问 https://testnet.capy.art/ 体验 Capy NFT

由于测试网刚刚上线,DApp 的部署需要几天时间。

测试网的 SUI 币和质押奖励仅用于测试,且不具备任何货币价值。

针对开发者:

https://blockeden.xyz/keys 获取免费公共 API 密钥及其端点,并将其应用于你的 SDK 或 HTTP 客户端。如需专用密钥,请注册,免费提供。

Sui RPC 密钥

测试网第 2 波对开发者意味着什么?

对于正在或计划在 Sui 上构建的开发者而言,测试网第 2 波提供了更清晰的视角,了解其应用在完整部署到主链后会如何表现。他们可以利用此机会在正式上线前,洞悉应用在不同条件下的运行情况,从而在项目公开发布时减少意外。随着本轮测试期间提供的增强隐私等安全特性,以及 BlockEden.xyz 提供的高级分析能力,开发者拥有确保其应用在正式上链前平稳运行所需的一切。

Source Link: https://blockeden.xyz/blog/2023/01/30/riding-sui-testnet-wave-2/

Sui WebSocket now available at BlockEden.xyz

· 阅读需 3 分钟
Jack Sim
Web3 Builder

Note: This post was written during the Sui devnet phase and some details may be outdated.

We were among the first Sui Devnet JSON-RPC providers. Now we are excited to expand our API Service to WebSocket too. WebSocket would be useful to those dApps that need to take action on real-time on-chain events.

How to get started?

Step 1. Go to https://blockeden.xyz/dash/. Please sign up if you haven’t done so.

Step 2. Input your name for the API key, select Sui Devnet Websocket, and then click + Create key.

create sui ws key

Step 3. Grab your access URL by clicking Copy to copy it to the clipboard.

Step 4. Use the access URL in your project like the following. Remember to replace <access_key> with your own key.

How to use WebSocket?

To quickly play around WebSocket endpoint in the command line, you could use wscat. To download it, run the following command:

npm install -g wscat

Then, run the following command to connect to the WebSocket endpoint (remember replacing with your own API key):

wscat -c wss://sui-devnet.blockeden.xyz/kjz2sTknHkNE9aXQ6j1N

Now in the session, you could give the command. For example, you could say subscribing events that matchin some cerntain criteria:

Connected (press CTRL+C to quit)
> {"jsonrpc":"2.0", "id": 1, "method": "sui_subscribeEvent", "params": [{"All":[{"EventType":"MoveEvent"}, {"Package":"0x2"}, {"Module":"devnet_nft"}]}]}
< {"jsonrpc":"2.0","result":6240320950310564,"id":1}

And you would also observe events being streamed to your console:

< {"jsonrpc":"2.0","method":"sui_subscribeEvent","params":{"subscription":6240320950310564,"result":{"timestamp":1672211297607,"txDigest":"PDPBHEo5pmMeLK8Dc4226MZxUA2dkQK91W2ECHFgN1a","id":{"txSeq":1471806,"eventSeq":2},"event":{"moveEvent":{"packageId":"0x0000000000000000000000000000000000000002","transactionModule":"devnet_nft","sender":"0x35a09652085b5c4c178d9cfe234d8c1a6b89306b","type":"0x2::devnet_nft::MintNFTEvent","fields":{"creator":"0x35a09652085b5c4c178d9cfe234d8c1a6b89306b","name":"Example NFT","object_id":"0x7631724b6eb066b8514c6159f716a8826055ee5e"},"bcs":"djFyS26wZrhRTGFZ9xaogmBV7l41oJZSCFtcTBeNnP4jTYwaa4kwawtFeGFtcGxlIE5GVA=="}}}}}
< {"jsonrpc":"2.0","method":"sui_subscribeEvent","params":{"subscription":6240320950310564,"result":{"timestamp":1672211297614,"txDigest":"XcTtaU28vUsR18ZMRhE7XuMadeUfCj8kTZfHD1Xs8H7","id":{"txSeq":1471807,"eventSeq":2},"event":{"moveEvent":{"packageId":"0x0000000000000000000000000000000000000002","transactionModule":"devnet_nft","sender":"0xc9a7020d260599e06b63baae7504b2ead68a580a","type":"0x2::devnet_nft::MintNFTEvent","fields":{"creator":"0xc9a7020d260599e06b63baae7504b2ead68a580a","name":"Example NFT","object_id":"0xdc2961ac31f550fcae6ac050c4cc5c364f3736c3"},"bcs":"3ClhrDH1UPyuasBQxMxcNk83NsPJpwINJgWZ4Gtjuq51BLLq1opYCgtFeGFtcGxlIE5GVA=="}}}}}
< {"jsonrpc":"2.0","method":"sui_subscribeEvent","params":{"subscription":6240320950310564,"result":{"timestamp":1672211297617,"txDigest":"ZpnGea1XkkzfsBeSCnR37xKvkdCSgjcfp81owD6QS4i","id":{"txSeq":1471808,"eventSeq":2},"event":{"moveEvent":{"packageId":"0x0000000000000000000000000000000000000002","transactionModule":"devnet_nft","sender":"0x96e31283ad37fe2ebbdff635501c9feaa2bd8af7","type":"0x2::devnet_nft::MintNFTEvent","fields":{"creator":"0x96e31283ad37fe2ebbdff635501c9feaa2bd8af7","name":"Wizard Land","object_id":"0xe63f7ee979d23d4ab60b598529dc4136d33f07a8"},"bcs":"5j9+6XnSPUq2C1mFKdxBNtM/B6iW4xKDrTf+Lrvf9jVQHJ/qor2K9wtXaXphcmQgTGFuZA=="}}}}}
...

For more details of subscribing Sui events via WebSocket, please refer to the offical doc.

Misc

To prevent too many outstanding idle connections, we will drop any WebSocket connection that hasn't exchanged data in the past 5 minutes. Client will receive an error code: 1006.