diff --git "a/mover/Funnyyanne/co-learn-2411/images/\345\217\202\345\212\240\347\254\254\344\270\211\345\221\250\347\233\264\346\222\255.png" "b/mover/Funnyyanne/co-learn-2411/images/\345\217\202\345\212\240\347\254\254\344\270\211\345\221\250.png" similarity index 100% rename from "mover/Funnyyanne/co-learn-2411/images/\345\217\202\345\212\240\347\254\254\344\270\211\345\221\250\347\233\264\346\222\255.png" rename to "mover/Funnyyanne/co-learn-2411/images/\345\217\202\345\212\240\347\254\254\344\270\211\345\221\250.png" diff --git "a/mover/Funnyyanne/co-learn-2411/images/\347\254\254\344\270\211\345\221\250\350\257\276\347\250\213.png" "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\344\270\211\345\221\250\350\257\276\347\250\213.png" new file mode 100644 index 000000000..011e3e565 Binary files /dev/null and "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\344\270\211\345\221\250\350\257\276\347\250\213.png" differ diff --git "a/mover/Funnyyanne/co-learn-2411/images/\347\254\254\344\272\224\347\257\207\347\254\224\350\256\260\345\210\206\344\272\253.png" "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\344\272\224\347\257\207\347\254\224\350\256\260\345\210\206\344\272\253.png" new file mode 100644 index 000000000..bede976ce Binary files /dev/null and "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\344\272\224\347\257\207\347\254\224\350\256\260\345\210\206\344\272\253.png" differ diff --git "a/mover/Funnyyanne/co-learn-2411/images/\347\254\254\345\233\233\345\221\250\347\233\264\346\222\255\347\255\224\347\226\221.png" "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\345\233\233\345\221\250\347\233\264\346\222\255\347\255\224\347\226\221.png" new file mode 100644 index 000000000..a5866adf3 Binary files /dev/null and "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\345\233\233\345\221\250\347\233\264\346\222\255\347\255\224\347\226\221.png" differ diff --git "a/mover/Funnyyanne/co-learn-2411/images/\347\254\254\345\233\233\345\221\250\350\257\276\347\250\213.png" "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\345\233\233\345\221\250\350\257\276\347\250\213.png" new file mode 100644 index 000000000..ba33f85b9 Binary files /dev/null and "b/mover/Funnyyanne/co-learn-2411/images/\347\254\254\345\233\233\345\221\250\350\257\276\347\250\213.png" differ diff --git "a/mover/Funnyyanne/co-learn-2411/project/Sui \345\214\272\345\235\227\351\223\276_\345\217\257\346\211\251\345\261\225\344\270\224\345\256\211\345\205\250\347\232\204 Web3 Layer 1 \350\247\243\345\206\263\346\226\271\346\241\210.md" "b/mover/Funnyyanne/co-learn-2411/project/Sui \345\214\272\345\235\227\351\223\276_\345\217\257\346\211\251\345\261\225\344\270\224\345\256\211\345\205\250\347\232\204 Web3 Layer 1 \350\247\243\345\206\263\346\226\271\346\241\210.md" new file mode 100644 index 000000000..fe15bb49d --- /dev/null +++ "b/mover/Funnyyanne/co-learn-2411/project/Sui \345\214\272\345\235\227\351\223\276_\345\217\257\346\211\251\345\261\225\344\270\224\345\256\211\345\205\250\347\232\204 Web3 Layer 1 \350\247\243\345\206\263\346\226\271\346\241\210.md" @@ -0,0 +1,33 @@ +# Sui 区块链:可扩展且安全的 Web3 Layer 1 解决方案 + +Sui 区块链是一种 Layer1 解决方案,已成为区块链技术领域的游戏规则改变者。 + +其创新方法解决了臭名昭著的[区块链三难困境](https://kanalabs.medium.com/bridge-aggregation-the-cross-chain-interoperability-trilemma-its-solution-846fb1ebbf9c)——同时实现去中心化、可扩展性和安全性。Sui 区块链旨在正面解决现有区块链的局限性。Sui 由 Meta 前高管团队领导的 Mysten Labs 开发,旨在弥合去中心化梦想与现实世界可扩展性需求之间的差距。它的灵感来自其日本同名的“sui”,意思是水,象征着流动性和适应性,这是 Sui 设计理念的标志。 + +Sui 的三大支柱 + +- **Move 语言和以对象为中心的方法:**Sui 创新的核心在于其编程语言 Move。与传统的智能合约语言不同,Move 专注于可编程对象,实现快速、安全的资产转移。对象可以是可变的或不可变的,从而增强了从 NFT 到 DeFi 的各种应用程序的灵活性。 +- **并行交易执行:**Sui 的并行交易处理速度达到每秒 120,000 笔交易,确保简单交易几乎即时确定。这是通过水平扩展实现的,从而避免了当今同行中常见的全球共识瓶颈,使其与其他区块链区分开来。 +- **DPoS 共识机制:**Sui 的委托权益证明 (DPoS) 共识带来了一个转折。虽然 DPoS 并不是什么新鲜事物,但 Sui 通过在效率和去中心化之间取得平衡来让它焕发新意。每个时期都会选择验证者,这样既能确保网络安全,又能加快共识和执行速度。 + +**推动生态系统的代币经济学** + +原生 SUI 代币位于 Sui 生态系统的核心,具有多种重要功能: + +- **质押和验证:**持有者可以质押 SUI 参与 DPoS 共识,获得奖励,并为网络安全做出贡献。 +- **Gas 费用和交易:**SUI 为交易和智能合约执行提供动力,确保区块链的平稳运行。 +- **统辖:**代币持有者行使治理权力,影响协议升级和网络决策。 + +**繁荣的生态系统和用例** + +Sui 的推出在区块链领域引发了一连串的活动,从而创建了一个多元化的生态系统。它拥有满足各种去中心化环境(如 DeFi、GameFi、NFT、SocialFi 等)的dApp。 + +当涉及到实际应用时,Sui 极有可能彻底改变任何涉及支付和代币转移的领域,例如 DeFi、游戏、零售支付和实体 POS。这是由于它的水平可扩展性,没有上限,这意味着它可以满足任何需求密集型环境/dApp。 + +**未来** + +Sui 的征程才刚刚开始,其雄心勃勃的愿景仍在继续。有了坚实的基础,该团队设想扩大其生态系统,吸引开发者,并开创重塑区块链格局的新颖解决方案。 + +随着 Sui 继续蓄势待发,其对去中心化、可扩展性和速度的整体方法使其成为区块链领域的强大竞争者。凭借创新技术、充满活力的生态系统和强大的社区,Sui 已准备好掀起波澜并重新定义区块链技术的未来。 + +在不断发展的加密货币世界中,Sui 是一个值得关注的名字,是追求更加去中心化、可扩展和高效的区块链生态系统的转型和进步的象征。 \ No newline at end of file diff --git a/mover/Funnyyanne/co-learn-2411/readme.md b/mover/Funnyyanne/co-learn-2411/readme.md index 61cd320f1..1270098f1 100644 --- a/mover/Funnyyanne/co-learn-2411/readme.md +++ b/mover/Funnyyanne/co-learn-2411/readme.md @@ -12,15 +12,15 @@ - [✅] 第一周:![学习记录截图](./images/第一周课程完成.png) - [✅] 第二周:![学习记录截图](./images/第二周视频完成.png) -- [] 第三周:![学习记录截图](./images/你的图片地址) -- [] 第四周:![学习记录截图](./images/你的图片地址) +- [✅] 第三周:![学习记录截图](./images/第三周课程.png) +- [✅] 第四周:![学习记录截图](./images/第四周课程.png) ## 参加直播答疑 - [✅] 第一周:![学习记录截图](./images/参加第一周直播.png) - [✅] 第二周:![学习记录截图](./images/参加第二周周一直播.png) -- [✅] 第三周:![学习记录截图](./images/参加第三周直播.png) -- [] 第四周:![学习记录截图](./images/你的图片地址) +- [✅] 第三周:![学习记录截图](./images/参加第三周.png) +- [✅] 第四周:![学习记录截图](./images/第四周直播答疑.png) ## 群里分享学习笔记 @@ -28,6 +28,7 @@ - [✅] 第二篇笔记:[Sui Move 学习:Task 5 Swap](https://learnblockchain.cn/article/9877) 截图在images - [✅] 第三篇笔记:[学习记录截图](./images/task6笔记截图.png) - [✅] 第四篇笔记:[笔记群内分享](./images/笔记群内分享.png) +- [✅] 第五篇笔记:[笔记群内分享](./images/第五篇笔记分享.png) ## 对外输出学习笔记 @@ -35,6 +36,7 @@ - [✅] 第二篇笔记【学习笔记链接】[Sui Move 学习:Task 5 Swap](https://learnblockchain.cn/article/9877) - [✅] 第三篇笔记【学习笔记链接】[Sui Move 学习: Navi Protocol 与 PTB (Task6:PTB、Navi 交互)](https://learnblockchain.cn/article/9947) - [✅] 第四篇笔记【学习笔记链接】[Sui Move 学习:sui 命令总结](https://learnblockchain.cn/article/9951) +- [✅] 第五篇笔记【学习笔记链接】[Sui 区块链_可扩展且安全的Web3 Layer 1 解决方案](https://learnblockchain.cn/article/10052) ## 在HOH社区公众号发布自己的技术文章 diff --git a/mover/LeonDev1024/co-learn-2411/readme.md b/mover/LeonDev1024/co-learn-2411/readme.md index 3ff2a0cfb..c056129e0 100644 --- a/mover/LeonDev1024/co-learn-2411/readme.md +++ b/mover/LeonDev1024/co-learn-2411/readme.md @@ -33,8 +33,8 @@ - [x] 第一篇笔记【https://learnblockchain.cn/article/9899】 - [x] 第二篇笔记【https://learnblockchain.cn/article/9968】 -- [] 第三篇笔记【学习笔记链接】 -- [] 第四篇笔记【学习笔记链接】 +- [x] 第三篇笔记【https://learnblockchain.cn/article/10025】 +- [x] 第四篇笔记【https://learnblockchain.cn/article/10039】 ## 在HOH社区公众号发布自己的技术文章 diff --git "a/mover/aimotee/notes/\357\274\210\345\233\233\357\274\211Let's Move\345\205\261\345\255\246\357\274\214\346\265\205\345\210\206\346\236\220\344\270\200\344\270\213coin\345\272\223.md" "b/mover/aimotee/notes/\357\274\210\345\233\233\357\274\211Let's Move\345\205\261\345\255\246\357\274\214\346\265\205\345\210\206\346\236\220\344\270\200\344\270\213coin\345\272\223.md" new file mode 100644 index 000000000..04b380484 --- /dev/null +++ "b/mover/aimotee/notes/\357\274\210\345\233\233\357\274\211Let's Move\345\205\261\345\255\246\357\274\214\346\265\205\345\210\206\346\236\220\344\270\200\344\270\213coin\345\272\223.md" @@ -0,0 +1 @@ +登链社区 iD:aimotee 文章链接:https://learnblockchain.cn/article/10060 diff --git a/mover/al17Er/readme.md b/mover/al17Er/readme.md index 9a493ff5c..fbadf9450 100644 --- a/mover/al17Er/readme.md +++ b/mover/al17Er/readme.md @@ -33,7 +33,7 @@ - [x] call swap hash: GPz4v3Hi6PUdWoXsV2eLJVdZ7TtqXw1YXtw8rwMrzbUd ## 06 SDK PTB -- [] save hash : +- [x] save hash : 9Wur5q7i3CYcrByB6rf5GwHspDVbG6EerUFHyD3R9JyS ## 07 move ctf check in: - [x] Digest: 6BAJ2YTsZceFz3iMfbWFyKkLkRj27s7XixmgGwa3dPup diff --git a/mover/al17Er/task6/code/README.md b/mover/al17Er/task6/code/README.md new file mode 100755 index 000000000..d0889dcae --- /dev/null +++ b/mover/al17Er/task6/code/README.md @@ -0,0 +1,35 @@ +# Sui dApp Starter Template + +This dApp was created using `@mysten/create-dapp` that sets up a basic React +Client dApp using the following tools: + +- [React](https://react.dev/) as the UI framework +- [TypeScript](https://www.typescriptlang.org/) for type checking +- [Vite](https://vitejs.dev/) for build tooling +- [Radix UI](https://www.radix-ui.com/) for pre-built UI components +- [ESLint](https://eslint.org/) +- [`@mysten/dapp-kit`](https://sdk.mystenlabs.com/dapp-kit) for connecting to + wallets and loading data +- [pnpm](https://pnpm.io/) for package management + +## Starting your dApp + +To install dependencies you can run + +```bash +pnpm install +``` + +To start your dApp in development mode run + +```bash +pnpm dev +``` + +## Building + +To build your app for deployment you can run + +```bash +pnpm build +``` diff --git a/mover/al17Er/task6/code/index.html b/mover/al17Er/task6/code/index.html new file mode 100755 index 000000000..c5e95c15c --- /dev/null +++ b/mover/al17Er/task6/code/index.html @@ -0,0 +1,59 @@ + + +
+ + + +My Coin
的学习并部署主网Faucet Coin
的学习并部署主网My Coin
和 Faucet Coin
合约发布 package id
My Coin
给地址 0x7b8e0864967427679b4e129f79dc332a885c6087ec9e187b53451a9006ee15f2
Faucet Coin
需要至少用两个地址mintpublic_transfer 独享 mint权限 public_share_object 共享 mint权限
Faucet Coin
就是任意人都可以mint的CoinMy Coin
只能指定地址mintpublic struct KRYPTON_COIN has drop {}
定义了一个名为 KRYPTON_COIN
的公共结构体,并声明了该结构体具有 drop
属性fun init(witness: KRYPTON_COIN, ctx: &mut TxContext) {
let (treasury_cap, metadata) = coin::create_currency(
witness,
9, // 精度(小数位数)
b"krypton", // 代币符号
b"KRYPTON_COIN", // 代币名称
b"Krypton Coin", // 代币描述
option::some<Url>(url::new_unsafe_from_bytes(b"https://avatars.githubusercontent.com/u/154910746?v=4")), // URL 图像链接
ctx
);
witness
: 传入的 KRYPTON_COIN
结构体实例,用作创建代币时的证明。coin::create_currency(...)
:使用 create_currency
函数创建一个新的代币:create_currency
是 Sui Move 模块中的一个内置函数,通常是由 TreasuryCap
和 CoinMetadata
两个对象来管理的create_currency
函数:fun create_currency<T>(
witness: T, // 创建代币的证明,通常是一个对象
decimals: u8, // 代币的精度,决定小数点后保留多少位
symbol: vector<u8>, // 代币符号,例如 "BTC"、"USD"
name: vector<u8>, // 代币的名称
description: vector<u8>, // 代币的描述
icon_url: Option<Url>, // 可选的代币图标 URL
ctx: &mut TxContext // 当前的交易上下文
): (TreasuryCap<T>, CoinMetadata) // 返回铸币权限对象和代币元数据对象
//冻结metadata对象,阻止后续修改
transfer::public_freeze_object(metadata);
//将铸币权限转至sender
transfer::public_transfer(treasury_cap, tx_context::sender(ctx))
mint
函数:铸造代币public entry fun mint(
treasury_cap: &mut TreasuryCap<KRYPTON_COIN>,//传入的铸币权限对象
amount: u64,//数量
recipient: address,//接收者地址
ctx: &mut TxContext
) {
coin::mint_and_transfer(treasury_cap, amount, recipient, ctx);
}
public entry fun mint(...)
:这是一个公开的入口函数,允许外部调用以铸造新的代币并将其转移给指定地址。coin::mint_and_transfer(treasury_cap, amount, recipient, ctx)
: 调用 mint_and_transfer
函数来铸造代币并将其转移给 recipient
。这会根据 treasury_cap
中的权限铸造 amount
数量的代币,并直接转移给指定地址。KRYPTON_COIN
:定义了一个名为 KRYPTON_COIN
的代币类型,具有 drop
属性,表示这是一个资源类型,且可以自动清理。init
:初始化函数,用于创建一个新的代币,并将铸币权限转移给交易发送者。还设置了代币的精度、名称、符号和图标等信息。mint
:铸造代币并将其转移给指定地址。需要提供铸币权限、数量和接收地址。module my_coin::krypton_coin {
use sui::coin::{Self, Coin, TreasuryCap};
use sui::url::{Self, Url};
public struct KRYPTON_COIN has drop {}
fun init(witness: KRYPTON_COIN,ctx: &mut TxContext) {
let (treasury_cap, metadata) = coin::create_currency(
witness,
9,
b"krypton",
b"KRYPTON_COIN",
b"Krypton Coin",
option::some<Url>(url::new_unsafe_from_bytes(b"https://avatars.githubusercontent.com/u/154910746?v=4")),
ctx
);
//冻结metadata对象,阻止后续修改
transfer::public_freeze_object(metadata);
//将铸币权限转至sender
transfer::public_transfer(treasury_cap,tx_context::sender(ctx))
}
public entry fun mint(
treasury_cap: &mut TreasuryCap<KRYPTON_COIN>,
amount: u64,
recipient: address,
ctx: &mut TxContext
) {
coin::mint_and_transfer(treasury_cap, amount, recipient, ctx);
}
}
module faucet_coin::krypton_faucet_coin {
use sui::coin::{Self, Coin, TreasuryCap};
use sui::url::{Self, Url};
// 定义代币结构体
public struct KRYPTON_FAUCET_COIN has drop {}
// 初始化函数:创建代币并共享铸币权限
fun init(witness:KRYPTON_FAUCET_COIN,ctx: &mut TxContext) {
let (treasury_cap, metadata) = coin::create_currency<KRYPTON_FAUCET_COIN>(
witness,
9, // 精度
b"krypton faucet coin",
b"KRYPTON_FAUCET_COIN",
b"Krypton Faucet Coin",
option::some<Url>(url::new_unsafe_from_bytes(b"https://avatars.githubusercontent.com/u/154910746?v=4")), // 代币的头像URL
ctx
);
// 冻结metadata对象,阻止后续修改
transfer::public_freeze_object(metadata);
// 共享铸币权限
transfer::public_share_object(treasury_cap);
}
// 铸币功能
public entry fun mint(
treasury_cap: &mut TreasuryCap<KRYPTON_FAUCET_COIN>,
amount: u64,
recipient: address,
ctx: &mut TxContext
) {
coin::mint_and_transfer(treasury_cap, amount, recipient, ctx);
}
}
'sui client publish'
将程序上链后调用函数
根据hash在suivison中查找id
sui client call --package <package id>
--module <module id>
--function <fun id>
--args <TreasuryCap> <amount> <receipient address>
--gas-budget 100000000
登链社区是一个 Web3 开发者社区,通过构建高质量技术内容平台和线下空间,助力开发者成为更好的 Web3 Builder。