1. 代币基础与环境准备

1. 课程导论

1.1 什么是代币?

代币(Token)是区块链上的可编程数字资产

你可能习惯了传统银行或 Web2 应用中的余额记录:

"Alice 的账户余额:100 元"

这只是中心化数据库里的一行数字。而代币具有本质的不同:

  • 透明性:所有交易记录公开可查,任何人都可以验证。
  • 可编程性:可以通过代码(智能合约)定义复杂的转移规则(如:必须持有 NFT 才能转账、每次转账扣 5% 税)。
  • 自托管:用户完全控制自己的资产(拥有私钥即拥有资产),无需依赖支付宝或银行。
  • 可组合性:代币可以被借贷协议、交易所、游戏等不同应用无缝集成。

代币可以代表多种形式的价值:货币、股权、投票权、会员资格、收藏品,甚至是现实世界资产(如房地产)的数字化凭证。


1.2 代币的分类

技术特性角度,代币主要分为两类:

同质化代币(Fungible Token)

每一枚代币都是等价且可互换的。

  • 特性:如果你借给朋友 100 USDC,他还你任意 100 USDC 即可,不需要是"原来那 100 张钞票"。
  • 精度:通常可以分割(如 0.000001 SOL)。
  • 例子:稳定币(USDC)、治理代币(UNI)、原生代币(SOL)。

非同质化代币(Non-Fungible Token, NFT)

每一枚代币都是独一无二的,不可互换。

  • 特性:就像《蒙娜丽莎》真迹,你不能用另一幅画等价交换。
  • 精度:通常不可分割(Decimals = 0)。
  • 例子:数字艺术品、游戏道具、ENS 域名、房产证。

功能角度,代币还可以细分为:

类型描述示例
实用型获得特定服务或功能的凭证Filecoin(存储服务)
治理型参与协议决策的投票权JUP, UNI
证券型代表公司股权或收益权STO 代币
稳定币价值锚定法币或其他资产USDC, PYUSD

1.3 学习目标

完成本课程后,你将能够:

  1. 理解架构:掌握 Solana 代币账户模型与其他区块链(如以太坊)的核心差异。
  2. CLI 实战:熟练使用命令行工具创建、铸造、转移代币。
  3. SDK 编程:使用 JavaScript/TypeScript SDK 编写脚本控制代币逻辑。
  4. Token-2022:理解并应用 Token Extensions 的高级功能(如转账钩子、元数据指针)。
  5. 元数据管理:为你的代币添加精美的头像、名称和描述。
  6. Anchor 集成:在智能合约中安全地集成代币操作(CPI 调用)。
  7. 安全意识:识别常见风险(如貔貅盘逻辑)并应用最佳防御实践。

1.4 开发环境准备

在开始写代码之前,我们需要准备好武器库。

安装 Solana CLI

这是与 Solana 网络交互的瑞士军刀。

bash
# MacOS & Linux sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)" # 验证安装 solana --version

安装 Node.js

我们将使用 TypeScript 编写客户端脚本。推荐安装 v18 或更高版本。

(可选) 安装 Anchor

如果你计划学习第 8 章的合约开发,建议提前安装 Anchor 框架。

bash
cargo install --git https://github.com/coral-xyz/anchor avm --force avm install latest avm use latest

配置开发网络 (Devnet)

我们将在 Devnet 上进行所有实验,这里的 SOL 是免费的(没有金钱价值)。

bash
# 1. 切换到开发网 solana config set --url devnet # 2. 创建新钱包 (Keypair) # 这会在你的电脑上生成一个 id.json 文件,里面存着私钥 solana-keygen new # 3. 获取测试代币 (Airdrop) # 就像天上掉馅饼一样,免费领取 2 SOL 用于支付 Gas 费 solana airdrop 2

准备好了吗?让我们进入下一章,亲手铸造你的第一个代币!

JSPlayground
EDITOR ACTIVE
Initializing JS Environment...

环境配置检查器

Solana CLI Installed
Devnet Connection
Keypair Generated
Wallet Balance
0.00 SOL
dev@local:~$
Click 'Run Check' to start diagnostic.