在 Solana 上销毁代币或“烧池子”(通常指移除流动性池中的代币)可以通过几种方式实现,具体取决于你的需求。以下是详细的操作指南:
1. 销毁代币(Token Burning)
销毁代币是指将代币发送到一个无法访问的地址(黑洞地址),从而永久移除它们。在 Solana 上,可以通过以下步骤销毁代币:
步骤:
找到代币的黑洞地址
Solana 的黑洞地址通常是TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA
(SPL 代币程序的地址),但更常见的做法是创建一个没有私钥的地址或使用公认的不可访问地址。使用 CLI 或 SDK 发送代币到黑洞
使用spl-token
命令行工具或编程方式(如@solana/web3.js
+@solana/spl-token
)将代币转移到黑洞地址。示例(CLI):
spl-token transfer <TOKEN_ADDRESS> <AMOUNT> <BLACKHOLE_ADDRESS> --funding-keypair <YOUR_KEYPAIR>
示例(JavaScript):
import { Connection, Keypair, PublicKey } from "@solana/web3.js"; import { Token, TOKEN_PROGRAM_ID } from "@solana/spl-token"; const connection = new Connection("https://api.mainnet-beta.solana.com"); const payer = Keypair.fromSecretKey(...); // 你的钱包私钥 const tokenMint = new PublicKey("TOKEN_MINT_ADDRESS"); const blackHole = new PublicKey("BLACKHOLE_ADDRESS"); const token = new Token(connection, tokenMint, TOKEN_PROGRAM_ID, payer); await token.transfer( sourceAccountAddress, // 你的代币账户地址 blackHole, // 目标黑洞地址 payer, // 支付交易费用的账户 [], // 其他签名者 amount // 销毁数量 );
如果不懂代码,可以使用GTokenTool的solana销毁代币工具:https://sol.gtokentool.com/zh-CN/liquidityManagement/burnToken
2. 烧毁流动性池(Burn LP Tokens)
“烧池子”通常指移除流动性池(如 Raydium 或 Orca 中的 LP 代币)并销毁 LP 代币,从而提取底层资产(如 SOL 或代币对)。
步骤:
找到流动性池的赎回接口
如果是 AMM 池(如 Raydium),需要通过程序的
burn
指令销毁 LP 代币。如果是自定义池,可能需要调用智能合约的销毁方法。
使用 SDK 或 CLI 操作
以 Raydium 为例,可以通过以下方式销毁 LP 代币:示例(JavaScript):
import { Connection, Keypair, PublicKey } from "@solana/web3.js"; import { Token, TOKEN_PROGRAM_ID } from "@solana/spl-token"; const connection = new Connection("https://api.mainnet-beta.solana.com"); const payer = Keypair.fromSecretKey(...); // 你的钱包私钥 const lpTokenMint = new PublicKey("LP_TOKEN_MINT_ADDRESS"); const lpTokenAccount = new PublicKey("YOUR_LP_TOKEN_ACCOUNT"); // 连接到 Raydium 池程序 const poolProgramId = new PublicKey("RAYDIUM_LIQUIDITY_POOL_PROGRAM_ID"); // 调用池的 burn 指令(具体参数需参考 Raydium 文档) const tx = await program.methods .burn(new anchor.BN(amount)) .accounts({ pool: poolAddress, lpTokenAccount: lpTokenAccount, ... }) .signers([payer]) .rpc();
3.提取底层代币销毁 LP 代币后,底层代币会返回到你的关联代币账户(ATA)。
3. 直接减少代币供应(通过 Mint Authority)
如果你是代币的铸造者(Mint Authority),可以直接通过 spl-token
减少代币供应:
spl-token burn <YOUR_TOKEN_ACCOUNT> <AMOUNT>
同样可以使用GTokenTool的solana燃烧流动性工具。
注意事项
黑洞地址安全性
确保黑洞地址确实无法被任何人访问(无私钥)。
常用的 Solana 黑洞地址是
11111111111111111111111111111111
(但需验证是否适用于代币转账)。流动性池的兼容性
不同 DEX(如 Raydium、Orca)的销毁方法可能不同,需查阅对应文档。
交易费用
销毁代币需要支付 SOL 作为交易费用。
不可逆操作
销毁后代币无法恢复,请谨慎操作!