相信大家的 Solana 錢包在經歷一段時間後可能都會堆積一些奇奇怪怪的幣,可能來自垃圾項目的空投宣傳,也可能是 Scam 的詐騙項目想要透過免費的 NFT 來吸引人等等,如果只是擺著,除了礙眼之外倒也無妨,但如果你能從中獲得一些 SOL 呢?是不是就變得有趣多了,今天就來教大家如何應付錢包裡的垃圾代幣,還能從中賺取 SOL!
Solana 上的 Token Account 機制
要談到如何從這些莫名冒出來的代幣中獲利,就必須先談到 Solana 生態的 Token Account 機制。最完整的說明在 Solana 的官方文檔中能夠找到,但其實以白話理解,只有幾個重點:
- 在 Solana 的代幣都需要有 Token Account ,而它具有 Rent,也就是租金的機制,因為每個 Token Account 都會佔據記憶體
- 一個 Token Account 如果持有高於一定門檻的 SOL,就能夠享有兩年內免租金的優惠
- 這就是為什麼當你把一個幣傳給從維持有過該幣的人時,你會需要付一次性的 0.002 SOL,來為他開啟這個幣的 Token Account
舉個例子,假設你發了一個 Solana 上的代幣,姑且叫他 ABC Coin,你會發現當你要把這個幣第一次傳送給你的朋友時,會需要支付一次傳輸費用 0.000005 SOL 以外的 0.002 SOL。這個 0.002 SOL,就是用來開啟接收方存放 ABC Coin 的 Token Account 的費用。
聰明的你可能也會想到,NFT 不就是總量唯一的代幣嗎?沒錯,所以在 mint Solana 上的 NFT 時,你會發現除了 mint price 本身,還需要支付大約 0.012 左右的費用,其中就包含了幫購買者 create token account 的步驟。
那我到底如何從中獲利呢?
上面講的東西覺得太冗沒關係,只要了解一個重點:作為第一次接收到新的代幣的人來說,事實上是發送方幫你支付了創造 Token Account 的費用,也就是 0.002 SOL,而我們已經知道這個費用是用來維持一個 Token Account 保持運作所需,且享有兩年免租金優惠的門檻,那麼重點來了,只要將帳戶關閉,其實你是可以將這 0.0002 SOL 贖回的!也就是貨真價實的從發送方那裡白白嚕到了 0.002 SOL,真金白銀。
以下我介紹兩種方法,無論使用哪一種,都需要先把該 Token Account 清空,也就是說如果 Token Account 中還持有代幣的話,需要將其燒毀。以下我們來看看怎麼燒毀代幣吧!
燒毀代幣 Burn Token on Solana
首先你需要先安裝 spl-token-cli,安裝流程很簡單,請參考官方說明即可,記得要裝 Rust。以下都以 windows 作業系統作為範例,Mac OS 也一樣能行。
你會需要用 solana config set 指令設定主網的 URL 及你的 keypair 檔案,指令如下:
$ solana config set --url mainnet-beta
$ solana config set --keypair your-keypair.json
設定完畢後,可以再輸入 solana config get
,應該可以看到類似下圖的畫面:
接著輸入 spl-token accounts
,就會出現你設定的 keypair 錢包中,目前所擁有的 Token Accounts:
假設我今天想要燒毀的目標是 4evENxfLeUDk24nrqzMp4gkR3kPxCMeQuCeftjgd66BD
,我可以看到我目前有 33,333 顆該代幣,你也到 solscan 等檢視器確認這個地址確實是你想要燒毀的。
接著你需要找到你的 Token Account,以 phantom 錢包為例,只要點該代幣,再點「在 Solscan 上查看」就能找到如下圖的畫面了。我們需要複製的是第一個紅框處 6tpf 開頭的地址,這個地址表示的是你持有該代幣所使用的 Token Account Address。
回到 cmd,輸入 spl-token burn <剛剛複製的地址> <要燒毀的數量>
,按下 enter,就能看到如下畫面:
怕麻煩的人不用緊張,寫完這篇文章後有群友提醒我才知道 Solflare 錢包 中就有內建燒毀代幣的功能,直接把私鑰匯入 Solflare 存取你的帳戶,就可以透過友善的介面來燒毀代幣了。
完成燒毀後,你就成功把 Token Account 清光了,接下來我們有兩種方法可以嚕到你的 SOL。
方法一:Solana Fee-Redeemer
Solana Fee-Redeemer 是國外一個我很喜歡的 Live Coder Solandy 製作的網頁工具,只要連接錢包就能夠看到你有多少能夠贖回的 SOL,並且一鍵就能完成贖回,對一次想要處理大量空帳號的人來說非常方便。介面很簡單,使用上應該沒什麼問題,只要確認 Token Account 已經清空,就能順利拿到錢錢。
這個線上小工具是開源的,程式的原始碼可以在這裡找到。安全性基本上沒問題,但如果你真的很謹慎,建議你使用第二種方法,在自己的電腦上操作,反正 spl-token-cli 也都裝好了。
方法二:使用命令列的操作關閉 Token Account
既然剛剛我們都已經裝好 Rust、spl-token-cli,那其實將 Token Account 清空後要再關閉也是非常容易的事情。只要輸入 spl-token close <token address>
,以剛剛的 Boobs 為例就是 4evENxfLeUDk24nrqzMp4gkR3kPxCMeQuCeftjgd66BD
,輸入完畢按下 enter 等待交易完成,你的 0.0002 SOL 就到手囉!
學會了這招其實對 Solana 上的機制會更加了解,而且好處多多,例如你 mint 了一張 NFT 而之後已經轉賣、轉送給別人了的話,也可以用這個方式來將 Token Account 關閉,雖然單一帳號能贖回的錢不多,但總也是不無小補,拿來支付傳輸的氣費足足可以支付 400 次了。
時隔四年多 求版主能再更新一次
更新27了~麻煩><
是指下載的網頁嗎?
嗨嗨,你的名字也太可愛XD 可以試試看最…
已更新,感謝!