🎉 #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 聯合推廣任務上線!
本次活動總獎池:1,250 枚 ES
任務目標:推廣 Eclipse($ES)Launchpool 和 Alpha 第11期 $ES 專場
📄 詳情參考:
Launchpool 公告:https://www.gate.com/zh/announcements/article/46134
Alpha 第11期公告:https://www.gate.com/zh/announcements/article/46137
🧩【任務內容】
請圍繞 Launchpool 和 Alpha 第11期 活動進行內容創作,並曬出參與截圖。
📸【參與方式】
1️⃣ 帶上Tag #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 發帖
2️⃣ 曬出以下任一截圖:
Launchpool 質押截圖(BTC / ETH / ES)
Alpha 交易頁面截圖(交易 ES)
3️⃣ 發布圖文內容,可參考以下方向(≥60字):
簡介 ES/Eclipse 項目亮點、代幣機制等基本信息
分享你對 ES 項目的觀點、前景判斷、挖礦體驗等
分析 Launchpool 挖礦 或 Alpha 積分玩法的策略和收益對比
🎁【獎勵說明】
評選內容質量最優的 10 位 Launchpool/Gate
Solana Token:探索基於NFT的身分認證系統實現
探索使用 Solana Token 作爲身分認證工具
NFT(非同質化代幣)作爲一種獨特的數字資產,非常適合用作身分認證工具。本文將通過一個簡單示例,探討使用 NFT 作爲註冊憑證的可行性。
工具介紹
SPL Token
Solana 提供了 Token Program 作爲通用實現,它是 Solana Program Library(SPL)的一部分。SPL 包含了多個常用程序實現,如 Token、Swap 和 Memo 等,並提供完善的客戶端庫和 CLI 工具,大大方便了開發者的工作。
Solana Playground
Solana Playground 提供了一個在線編寫和部署 Solana 合約的環境,默認包含一些常用工具,如 SPL Token。我們可以通過 spl-token-cli 方便地創建和管理 Token。
創建認證 Token
我們將創建一個 NFT Token,用戶鑄造該 Token 即視爲在系統中完成註冊。
創建 Token
使用 spl-token 創建一個新的不可分割 Token:
spl-token create-token --decimals 0
這將輸出 Token 的 Mint Address,作爲我們創建的 Token 的唯一標識符。
創建 Token Account
爲剛才創建的 Token 創建一個 Token Account:
spl-token create-account <token_mint_address>
鑄造 Token
嘗試爲 Token Account 鑄造一個 Token 單位:
spl-token mint <token_mint_address> 1
由於我們設置了 decimals 爲 0,所以實際鑄造的數量始終是整數。
爲用戶錢包鑄造 Token
要爲用戶錢包地址鑄造 Token,需要先爲該地址創建 Token Account,然後使用該 Account 鑄造 Token。
創建 Token Account:
spl-token create-account <token_mint_address> --owner <wallet_address>
查詢 Token Account
通過 RPC 接口查詢錢包地址是否鑄造過我們的 NFT:
curl <rpc_provider_url> -X POST -H "Content-Type: application/json" -d '{ "jsonrpc": "2.0", "id": 1, "method": "getTokenAccountsByOwner", "params": [ "<wallet_address>", { "mint": "<token_mint_address>" }, { "encoding": "jsonParsed" } ] }'
實現登入系統
使用 Next.js 和 Ant Design Web3 創建一個簡單的登入系統:
登入流程:
註冊流程:
總結
我們通過創建 NFT 並將其作爲用戶註冊憑證,實現了一個基於 Solana 的身分認證系統。當用戶首次連接錢包時,系統會自動創建 Token Account 並鑄造 Token 作爲註冊憑證。之後,用戶可以使用同一錢包地址登入網站。這種方法爲 Web3 應用提供了一種新的身分驗證方式,充分利用了區塊鏈技術的特性。