本文主要介绍了MoveCTF有关的概念,通过check_in挑战我们了解了如何通过验证和生成哈希,成功获取新的标志,并通过智能合约与区块链互动。
基本规则:在Go语言中,内部模块的可见性规则是通过标识符的首字母大小写来控制的。具体规则如下:首字母大写的标识符:如果一个标识符(如变量、常量、函数、类型、结构体字段等)的首字母是大写的,那么它被认为是导出的(exported)
GoModules的基本概念GoModules是Go语言在版本1.11中引入的一个依赖管理工具,用于管理项目的依赖关系。
目录高级特性Rust的安全性高级trait高级类型高级函数和闭包宏高级特性Rust的安全性内存安全Rust通过所有权、借用和生命周期机制确保内存安全。所有权每个值都有一个所有者,当所有者离开作用域时,该值会被自动释放。fnmain(){le
Move as ETH L2
作为一名开发者,在开源的世界里贡献自己的力量一直是我所向往的。最近,我迎来了两个令我无比喜悦的开源贡献成果,今天就想和大家分享一下这段充满乐趣与挑战的经历。一、Sui仓库的贡献Sui是一个非常令人兴奋的项目,我一直都想在这个项目上做出一些贡献。然而,为Sui仓库贡献代码的过程并不是一帆风顺的
sui-move基础:所有权SuiMove的所有权系统是其核心设计之一,用于确保资源的安全管理和防止误用。通过静态检查所有权转移和资源生命周期,SuiMove提供了内置的编程保障,帮助开发者构建安全高效的智能合约。这篇文章应该被算在sui-move基础里面,为什么要补这样的文章呢?——
sui-move进阶:时间与纪元在Sui框架中,时间是智能合约中常用的元素,用于管理操作期(纪元)和获取精确的时间戳。Sui提供了两种主要的时间机制:纪元(Epoch)和时间(Time),它们在质押、验证人集合管理和其他操作中起着重要作用。纪元(Epoch)什么是纪元?纪元表示
sui-move进阶:vec_map0x2::vec_map模块提供了一种基于向量实现的键值映射数据结构(VecMap)。它支持常见的映射操作,数据以插入顺序存储,而非按键排序。然而,它的操作复杂度为O(N),其设计主要是为小型映射提供编程便利。它作为一个基于向量(vector)的映射结构
sui-move进阶:vector0x1::vector是SuiMove中提供的动态数组模块,用于管理可变大小的容器。向量支持任意类型的存储,具有灵活的增删查改功能,底层实现采用原生操作以确保高效性。如果是学过Rust的朋友,应该对Vector不陌生,但Move的vector仍然与Rus
sui-move进阶:dynamic_field上一节我们说到,table模块的实现用到了dynamic_field,而我将在这一节针对该库进行进一步的讲解。0x2::dynamic_field模块为Sui对象提供了动态字段功能。这允许开发者在对象构造后动态地添加字段,而不是仅依赖静态声明
模块简介animal_crossing::wild_NFT是一个SuiMove模块,旨在创建、管理和操作与濒危动物相关的NFT系统。通过引入wild_coin和SUI,模块结合金融激励机制实现了NFT的铸造、购买、遗弃及空投等功能。主要结构体及功能2.1主要结构
今天我们来全新设计一个代币系统,实现功能如下:一、模块功能概述该模块实现了一个叫WILD_COIN的代币系统,支持以下功能:创建和管理代币的发行和流通(init,mint_wild,increase_unfrozen_supply,decrease_unfrozen_supply
sui-move进阶:tableSuiMove中的0x2::table模块提供了一种类似映射(Map)的集合,用于存储键值对。与传统集合不同,Table的键和值并不直接存储在Table结构体中,而是通过Sui的对象系统进行管理。这使得Table成为一个句柄,用于操作存储在对象
背景简介GraphQL是由Facebook(现Meta)于2012年开发并在2015年开源的一种数据查询语言。与传统的RESTAPI相比,GraphQL提供了一种更加灵活高效的方式来请求和操作数据。通过其强类型系统和声明式查询语法,开发者可以在一次请求中精准获取所需的数据,避
最近在构思HOH水分子社区MOVE共学的最后一个defi项目,考虑的因为是慈善项目,gas费应该减免,所以查阅了一些资料,Sui网络的赞助交易(SponsoredTransactions)正好可以满足需求,现将学习笔记总结如下:一、基本原理介绍Sui网络的赞助交易(SponsoredTr
本文介绍HOH水分子社区Move共学营的task6学习笔记。1.使用脚手架快速创建SuidApp项目Sui生态为开发者提供了一个名为@mysten/create-dapp的脚手架工具,帮助我们快速初始化一个功能完善的dApp项目。以下是使用脚手架的简单步骤:1.1安装和创建项目运行以下
sui-move进阶:生命周期对于许多语言的初学者而言,很可能缺乏生命周期的概念,例如通过C语言入门编程的朋友们。但在例如Move和Rust这样的注重安全的编程语言中,生命周期是一个非常重要的概念,甚至许多时候编译器会要求你注意变量的生命周期。在SuiMove编程中,生命周期用于描述变量和
sui-move进阶:引用在Move中,引用(References)是一种高效且安全的资源访问方式。引用有两种类型:不可变引用和可变引用。Move的类型系统通过强制执行所有权规则,防止引用错误,并确保资源的安全使用。引用类型在Move中,引用分为可变引用(mutablerefere
sui-move进阶:设计模式——见证者与一次性见证者在上一个教程中,我们提到了witness,并说它:使用了一次性见证者的设计模式。在本教程中,我们将对其作进一步的讨论。而在介绍一次性见证者之前,我们需要先介绍一下设计模式——见证者。什么是见证者模式介绍见证者模式的核心是利用特定的值
扫一扫 - 使用登链小程序
41 篇文章,410 学分
75 篇文章,297 学分
30 篇文章,260 学分
158 篇文章,165 学分
11 篇文章,164 学分