项目概况
代币是数字经济的基石。了解代币是什么以及如何使用代币对于充分发挥区块链的力量至关重要。在这篇文章中,我们将向您展示如何操作。
在本教程中,我们将指导您完成使用 Solana 命令行界面 (CLI) 铸造自定义 Solana 代币的过程。您将学习在 Solana 上铸造自定义代币的三个主要步骤:创建代币、创建代币帐户以及铸造代币供应。在本教程结束时,您将掌握创建自己的 Solana 代币并开始尝试使用 Solana 区块链的知识和技能。
除了 CLI 体验之外,我们还将为您提供三种快速轻松地铸造自定义 Solana 代币的替代方法。这将为您提供多种选择,具体取决于您的偏好和要求。
有关通过 JavaScript 或 TS 设置进行自定义铸造的更多信息,请参阅此处的 Solana 文档:https://spl.solana.com/token
先决条件
首先,我们需要在工作站上安装一些程序来开始铸造代币。您可以在工作站上打开终端应用程序来运行这些命令。如果您已经拥有这些命令,则可以跳过此步骤。
1.安装Rust:
代码
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
2.安装 Solana CLI:
代码
cargo install solana-cli
安装完成后,您可以通过运行以下命令来验证是否已安装 Solana CLI:
代码
solana --version
它应该返回与下面类似的结果:
代码
solana-cli 1.15.2 (src:dea65f48; feat:1211687720, client:SolanaLabs)
笔记:
根据安装时间的不同,返回结果可能会有所不同。如果您在安装过程中遇到错误,请重新尝试下载,应该可以解决问题。
设置完成后我们就可以继续了!
设置环境
首先,我们要用 3 样东西来设置我们的环境。
我们正在使用的默认网络(Mainnet 或 Devnet)。
我们用来铸造代币的默认钱包。
Devnet Solana资助此次测试。
1. 网络
在此步骤中,我们可以使用标准 Solana RPC。您可以从此处的Helius 开发者门户免费获取一个。
可用的两个是:
主网-https://rpc.helius.xyz/?api-key=<api_key>
开发网-https://rpc-devnet.helius.xyz/?api-key=<api_key>
笔记
请确保您在Devnet环境中进行测试,因为使用Mainnet将使用真实资金来铸造代币。
一旦我们有了 RPC,我们就可以使用以下命令将其设置到我们的环境中:
代码
solana config set --url https://api.devnet.solana.com
这会将 CLI 上的默认网络设置为Devnet以供测试。您应该在控制台中看到以下内容:
代码
Config File: /Users/user/.config/solana/cli/config.yml
RPC URL: https://api.devnet.solana.com
WebSocket URL: wss://api.devnet.solana.com/ (computed)
Keypair Path: ./RwUUVWjmSycerjAFep7v9d1R1sioF45cYAUpeJtcQbZ.json
Commitment: confirmed
一旦您看到此确认,我们就可以进入下一步。
2. 钱包
在此步骤中,我们可以设置用于测试的默认钱包。我们可以创建一个用于测试的新钱包并将其设置为Solana CLI 的默认钱包。
要创建新的钱包,请运行以下命令:
代码
复制
solana-keygen new -o ${HOME}/token-wallet.json
笔记:
您可以在此处将“token-wallet”替换为您文件的首选名称。
这将在你的主目录之外创建一个新的 wallet-name.json 文件。
您现在将在控制台中看到以下内容:
代码
Wrote new keypair to /Users/user/token-wallet.json
====================================================================================
pubkey: EbcgsUzSEgiZm61Ch66hKUWhoUg3DGvDaqwQBMLaBgTg
====================================================================================
Save this seed phrase and your BIP39 passphrase to recover your new keypair:
switch anchor code opera purpose easy squeeze enough steal pelican enroll switch
====================================================================================
警告:
请保存此种子短语,以便在需要时可以导入到受信任的钱包。
现在我们可以通过运行以下命令将此钱包设置为我们的默认地址:
代码
solana config set --keypair ${HOME}/token-wallet.json
您现在可以运行以下命令来确保公钥设置正确。
代码
solana address
在我们的案例中,它提供了:
代码
复制
EbcgsUzSEgiZm61Ch66hKUWhoUg3DGvDaqwQBMLaBgTg
现在我们已经设置了默认钱包,我们可以继续为测试请求资金。
3. 考试经费
在这里,我们将通过 Solana CLI 空投铸币所需的 devnet Solana。
我们可以在终端运行以下命令来获取所需的金额:
代码
solana airdrop 2
现在我们可以通过运行以下命令来检查钱包余额:
代码
solana balance
这应该在控制台中返回2 SOL 。
如果失败,请多尝试几次,因为请求可能最初就失败了。如果仍然不起作用,请再次尝试。
一旦您的 Devnet 钱包中有了 SOL,我们就可以继续创建我们的代币。
从 CLI 进行铸造的步骤
现在我们已经设置好了环境,我们可以开始铸造一些代币了!设置完成后,这是一个相当快速的设置。
以下是实现此目标所需的步骤:
创建令牌。
创建代币账户。
铸造代币。
以下是设置的视觉效果:
直观展示代币程序、代币和代币账户之间的关系。
直观展示代币程序、代币和代币账户之间的关系。
让我们详细分析一下:
代币程序用于创建、传输和铸造额外的代币。
用户正在与代币程序交互以创建代币。此代币程序还用于铸造额外供应和转移代币。
一旦创建了令牌,就可以创建一个帐户来存储它们。
现在深入第一步,即创建令牌。
1. 创建Token
运行以下命令来创建令牌:
代码
spl-token create-token
笔记:
小数是代币的最小面额。例如,Solana 的代币设置为 9 个小数。其中最小面额称为lampor。您可以运行 spl-token create-token --decimals 0 来创建不可替代的代币。示例:WL 代币。
在我们的案例中,它提供了以下内容:
代码
Creating token Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto under program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA
Address: Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
Decimals: 9
Signature: 56pRzvMBxJQqti4Fh5wPsa5Hb7KzJaWzEFNcAFYPaH7vN7a2CBmM1wbYxTvNVZr9Cvupy25X2oHtrGhhEhww9ug5
2. 创建代币账户
现在我们可以创建账户来保存我们的代币供应。
我们可以在终端中运行以下命令来设置令牌的帐户Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto,并传入我们的令牌地址:
代码
spl-token create-account Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
这将创建一个帐户来存放Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto 令牌,并应产生以下结果:
代码
Creating account 7jZDrZqRkVzu5ADtKvNGsTyPcCpcMVkxorMRJvCaUAD
Signature: EkR353vt9ST3ktyRsCRtYFqVvARaUBmUpWLfgFtsojBRbW66dK1yaCpW1NtphCQTkcGqzVQZg4Ld2abZ3bhsjA3
我们现在有一个可以开始铸造的代币账户!
3. 铸造代币
现在,我们准备铸造并设置代币的供应量。既然我们在 Devnet 上进行此操作,那么我们为什么不通过铸造 100 万个代币来展示 Solana 的真正实力呢。
我们可以通过运行以下命令来执行此操作,并在spl-token mint命令后输入我们的令牌地址:
代码
复制
spl-token mint Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto 1000000
这将在我们的终端中产生以下内容:
代码
复制
Minting 1000000 tokens
Token: Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
Recipient: 7jZDrZqRkVzu5ADtKvNGsTyPcCpcMVkxorMRJvCaUAD
Signature: 4EjB9bDC18Cut66frGWVHAxVQ3YrddaUCQcFZZsXbKXLziCAUtdh5r41tVhvP7yH1dZ5TBUaFXHpm2upaNCw3sMe
我们现在可以运行以下命令来验证这些是否已被铸造:
代码
复制
spl-token supply Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
它将返回:
代码
复制
1000000
现在,我们已经使用 Solana CLI 在 Solana 上铸造了 100 万个代币。
笔记:
这里有其他方式来注册你的 Solana 代币,以及有关代币归属的其他信息。
结果
回顾一下,我们刚刚通过 Solana CLI spl-token工具铸造了 100 万个代币。这是通过 Solana CLI 上的 3 条命令完成的。
创建令牌。
创建代币账户。
铸造代币。
如果您想在铸造 1,000,000 个代币后检查 Solana 钱包的余额,请运行:
代码
复制
solana balance
如果你从最初的 2 SOL 下降开始,它将返回以下内容:
代码
复制
1.99647912 SOL
就是这样!
Solana 可以扩大代币供应量,并以极低的成本获得它。
如果您遵循这些步骤,您现在可以使用 Solana CLI spl-token工具有效地创建令牌。
铸造代币的可用工具
正如承诺的那样,这里有一些工具,您可以立即使用它们来创建带有元数据的代币,而且成本只是其中的一小部分。在每个示例中,我将使用 Monopoly Money 创建代币,并展示可用的后续掉落选项。
1.名狐联盟
此工具已存在约 6 个月,使用成本为 0.03 SOL。与其他区块链上几百万代币的成本相比,这个成本非常低。
以下是 FFF 的细分:
确保您已在此处检查 SPL 令牌。
设置值为 0 的小数将创建 WL 代币标准。
您可以在这里禁用未来的供应铸造,否则它将保持开放。
然后,您可以使用Foxy Share等工具以低成本分发您的代币,在此示例中,我制作了一个测试代币,并将使用代币部分发送到:
2.小队
Squads 是另一个只需花费少量成本就能轻松获得的前端,以下是登录小队帐户后创建令牌的步骤:
1.转到开发人员选项卡——>然后导航到令牌管理器。
2. 到达那里后,您可以选择添加令牌,然后选择创建令牌并输入令牌详细信息(稍后将添加供应)。
3.现在我们可以输入Token 的小数位,在本测试中我们使用 9:
4. 在 Squads 中批准并执行交易后,您将看到类似如下的设置:
5. 选择Mint 后,输入您要为此供应创建的金额。如下所示:
6.现在你应该可以在 Squads 中看到另一笔需要批准的交易。批准后,你将看到我们设置的代币供应量,如下所示:
现在您已经使用 Squads 创建了供应量为 100 万的代币!
然后,您可以在“TX Builder”部分设置自定义交易来转移代币,但我不会在这里谈及这一点,因为详细解释起来可能有点冗长。
此选项的铸造成本约为 - 0.00561672 SOL,与我们的Solana CLI选项相同。
3.Strata 协议
这是在 Solana 上铸造代币的另一种替代方法。
您可以先选择“创建新令牌”选项,然后点击下一步:
2. 选择“自我管理”作为管理选项:
3.现在您可以连接您的 Solana 钱包来为交易提供资金,并输入以下代币详细信息:
这项交易仅需花费 0.00458 SOL 即可完成 100 万个代币的交易,这仍然是 Solana 的一小部分价值,并且与竞争对手不相上下。如果您没有任何现有代币,这将尝试交换 SHDW 存储代币。
地层附加费:
Strata 主页上还有一些其他工具,使用起来也非常酷,例如:
代币管理器- 您可以增加供应/更新每个代币的铸造和冻结权限。
出售现有代币- 您可以为想要出售的代币设置价格或发现。
筹款——为某项事业筹集资金,并使用代币来代表他们的贡献。
结论
现在,您有几种在 Solana 上铸造代币的选项,这些选项在成本和所需代币数量上都是可扩展的。您可以真正扩展这些示例,并且将这些资产上链并准备分发的成本不会有太大差异。
所有提供的示例都指向了使用 Solana 的真正威力,并且可被那些技术不够精通的创作者使用。
日常用户可以通过只需 3 个步骤的简单 CLI 在 Solana 上铸造代币,或者以类似的低成本与具有附加功能以使交互更容易的其他竞争对手合作。