Solana批量轉賬教程:提高代幣持有地址和生態用戶空投代幣

前言

Solana區塊鏈因其高吞吐量和低交易費用成為批量操作(如空投)的理想選擇。本教程將介紹幾種在Solana上進行批量轉賬的方法,幫助您高效地向多個地址空投代幣。

solana 賬戶模型

在Solana中有三類賬戶:

  • 數據賬戶,用來存儲數據

  • 程序賬戶,用來存儲可執行程序

  • 原生賬戶,指Solana上的原生程序,例如"System","Stake",以及"Vote"。

數據賬戶又分為兩類:

  • 系統所有賬戶

  • 程序派生賬戶(PDA)

我們通常使用的錢包地址屬于數據帳戶中的系統所有帳戶,我們可以通過自己私鑰簽名,系統驗證簽名是否正確,簽名正確就可以訪問賬戶,比如轉賬,調用合約。

solana賬戶租金

solana經濟模型中,建立代幣賬戶需要給向鏈支付一定的租金,用戶也可以關閉自己地址下的某個代幣賬戶來回收租金,回收時需要注意代幣資產為 0,不然會損失資產。

當一個solana地址在接受某個代幣時,地址下面必須有創建好的 代幣賬戶,用來存儲代幣信息、余額等資料。如果接收方沒有,發送發可以為接收方建立一個代幣賬戶。

Solana 上的租金存儲費用為每字節0.00000348 SOL,錢包數據大小為 586 字節,需要支付租金 0.002 SOL 左右。

方法一:使用Solana CLI工具

準備工作

1.安裝Solana CLI工具

sh?-c?"$(curl?-sSfL?https://release.solana.com/stable/install)"

2.配置錢包

solana?config?set?--url?https://api.mainnet-beta.solana.com
solana?config?set?--keypair?~/.config/solana/id.json

批量轉賬腳本

#!/bin/bash#?接收地址文件格式:每行一個地址和金額,用空格分隔
INPUT_FILE="recipients.txt"
FROM_KEYPAIR="~/.config/solana/id.json"
TOKEN_MINT="代幣的MINT地址"while?read?-r?line;?dorecipient=$(echo?$line?|?awk?'{print?$1}')amount=$(echo?$line?|?awk?'{print?$2}')spl-token?transfer?--fund-recipient?\--from?$FROM_KEYPAIR?\$TOKEN_MINT?$amount?$recipientsleep?1?#?避免速率限制
done?<?"$INPUT_FILE"

方法二:使用JavaScript SDK

安裝依賴

npm?install?@solana/web3.js?@solana/spl-token

批量轉賬代碼示例

const?{?Connection,?Keypair,?PublicKey?}?=?require('@solana/web3.js');
const?{?Token,?TOKEN_PROGRAM_ID?}?=?require('@solana/spl-token');const?connection?=?new?Connection('https://api.mainnet-beta.solana.com');
const?fromWallet?=?Keypair.fromSecretKey(Uint8Array.from(/*?你的私鑰?*/));
const?tokenMint?=?new?PublicKey('代幣MINT地址');async?function?bulkTransfer()?{const?token?=?new?Token(connection,?tokenMint,?TOKEN_PROGRAM_ID,?fromWallet);const?fromTokenAccount?=?await?token.getOrCreateAssociatedAccountInfo(fromWallet.publicKey);const?recipients?=?[{?address:?'地址1',?amount:?100?},{?address:?'地址2',?amount:?200?},//?更多地址...];for?(const?recipient?of?recipients)?{try?{const?toPublicKey?=?new?PublicKey(recipient.address);const?toTokenAccount?=?await?token.getOrCreateAssociatedAccountInfo(toPublicKey);const?transactionId?=?await?token.transfer(fromTokenAccount.address,toTokenAccount.address,fromWallet,[],recipient.amount);console.log(`Transferred?${recipient.amount}?to?${recipient.address}:?${transactionId}`);await?new?Promise(resolve?=>?setTimeout(resolve,?500));?//?延遲避免速率限制}?catch?(error)?{console.error(`Error?transferring?to?${recipient.address}:`,?error);}}
}bulkTransfer();

方法三:使用第三方工具

GTokenTool批量轉賬空投工具?- 具有自動去重功能,市面上最好用的批量轉賬/空投工具。

下面詳細的介紹如何無編程的使用工具來進行批量轉賬,SlerfTools 是全網最便宜、快速、便捷的 Solana一鍵工具箱,支持發幣、創建 openbook 市場 ID、創建Raydium流動性、移除流動性、批量交易等。

1、首先打開?GTokenTool批量轉賬頁面:

2、鏈接錢包后,填入代幣地址和收款地址列表,收款地址列表也可以通過上傳文件來完成。

3、點擊發送交易后,轉賬成功:

需要注意的是,GTokenTool 為了節省上鏈費用和加快上鏈速度,每一批轉賬都是匯總在一筆交易里面。由于 Solana 為了加快節點之間數據傳輸速度,每一筆交易都限制在 1232 個字節內,其大小限制在 ipv6 一個MTU傳輸單元內。因此每一批轉賬數量需要有所限制。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/80668.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/80668.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/80668.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于LSTM與SHAP可解釋性分析的神經網絡回歸預測模型【MATLAB】

基于LSTM與SHAP可解釋性分析的神經網絡回歸預測模型【MATLAB】 一、引言 在數據驅動的智能時代&#xff0c;時間序列預測已成為許多領域&#xff08;如金融、氣象、工業監測等&#xff09;中的關鍵任務。長短期記憶網絡&#xff08;LSTM&#xff09;因其在捕捉時間序列長期依…

手機網頁提示ip被拉黑名單什么意思?怎么辦

?當您使用手機瀏覽網頁時&#xff0c;突然看到“您的IP地址已被列入黑名單”的提示&#xff0c;是否感到困惑和不安&#xff1f;這種情況在現代網絡生活中并不罕見&#xff0c;但確實會給用戶帶來諸多不便。本文將詳細解釋IP被拉黑的含義、常見原因&#xff0c;并提供一系列實…

Java消息隊列性能優化實踐:從理論到實戰

Java消息隊列性能優化實踐&#xff1a;從理論到實戰 1. 引言 在現代分布式系統架構中&#xff0c;消息隊列&#xff08;Message Queue&#xff0c;MQ&#xff09;已經成為不可或缺的中間件組件。它不僅能夠實現系統間的解耦&#xff0c;還能提供異步通信、流量削峰等重要功能…

BUUCTF——Cookie is so stable

BUUCTF——Cookie is so stable 進入靶場 頁面有點熟悉 跟之前做過的靶場有點像 先簡單看一看靶場信息 有幾個功能點 flag.php 隨便輸了個admin 根據題目提示 應該與cookie有關 抓包看看 構造payload Cookie: PHPSESSIDef0623af2c1a6d2012d57f3529427d52; user{{7*7}}有…

json格式不合法情況下,如何盡量保證數據可用性

背景 在工作流程中&#xff0c;并非所有數據都如人所愿&#xff0c;即使json版本也會由于csv、tsv、excel、text等不同文件格式轉化、獲取數據源不完整等問題&#xff0c;造成我們要處理的json文件存在不合法。 嘗試方案 除了人為修正外&#xff0c;有效的方法是使用json“修…

Python基礎總結(十)之函數

Python函數 函數是Python中也是非常重要的,函數是帶名字的代碼塊,用于完成具體的工作。要執行函數定義的特定任務,可調用該函數。 一、函數的定義 函數的定義要使用def關鍵字,def后面緊跟函數名,縮進的為函數的代碼塊。 def test():print("Hello,World")上述…

懶人美食幫SpringBoot訂餐系統開發實現

概述 快速構建一個訂餐系統&#xff0c;今天&#xff0c;我們將通過”懶人美食幫”這個基于SpringBoot的訂餐系統項目&#xff0c;為大家詳細解析從用戶登錄到多角色權限管理的完整實現方案。本教程特別適合想要學習企業級應用開發的初學者。 主要內容 1. 用戶系統設計與實現…

AI(學習筆記第三課) 使用langchain進行AI開發(2)

文章目錄 AI(學習筆記第三課) 使用langchain進行AI開發(2)學習內容:1. 返回結構化數據(structured_output pydantic)1.1 使用背景1.2 返回結構化數據示例代碼(pydantic)1.3 執行測試代碼2 返回結構化數據(json)2.1 示例代碼2.2 執行結果3 給提供一些例子(few shot pr…

unity 使用藍牙通訊(PC版,非安卓)

BlueTooth in pc with unity 最近接到的需求是在unity里面開發藍牙功能,其實一開始我并不慌,因為據我所知,unity有豐富的插件可以使用,但是問題隨之而來 1.unity里面無法直接與藍牙通訊(后來找到了開啟runtime一類的東西,但是我找了半天也沒找到在哪里可以打開) 2.引入dll通過d…

MySQL中的意向鎖 + next-key鎖 + 間隙鎖

引言 在數據庫并發控制中&#xff0c;鎖機制是保障數據一致性和隔離性的核心手段。MySQL中意向鎖、間隙鎖以及next-key鎖等復雜鎖類型&#xff0c;旨在協調表級鎖與行級鎖之間的關系&#xff0c;防止數據的臟讀、不可重復讀和幻讀現象&#xff0c;尤其是在可重復讀隔離級別下發…

機器學習 數據集

數據集 1. scikit-learn工具介紹1.1 scikit-learn安裝1.2 Scikit-learn包含的內容 2 數據集2.1 sklearn玩具數據集介紹2.2 sklearn現實世界數據集介紹2.3 sklearn加載玩具數據集示例1&#xff1a;鳶尾花數據示例2&#xff1a;分析糖尿病數據集 2.4 sklearn獲取現實世界數據集示…

Linux-c語言串口程序

c語言串口程序 // C library headers #include <stdio.h> #include <string.h>// Linux headers #include <fcntl.h> // Contains file controls like O_RDWR #include <errno.h> // Error integer and strerror() function #include <termios.h&g…

TCP IP

TCP/IP 通信協議&#xff0c;不是單一協議&#xff0c;是一組協議的集合 TCP IP UDP 1.建立鏈接 三次握手 第一步&#xff1a;客戶端發送一個FIN報文&#xff0c;SEQX,等待服務器回應 第二步&#xff1a;服務器端受到&#xff0c;發送ackx1,seqy, 等待客戶端回應 第三步&am…

用uniapp在微信小程序實現畫板(電子簽名)功能,使用canvas實現功能

效果&#xff1a; 功能&#xff1a;實現重簽 退出 保存 等功能 解決的問題: 電子簽名畫布抖動問題解 注意&#xff1a; 保存的時候上傳到自己的服務器地址&#xff0c;后端返回圖片地址 代碼&#xff1a; <template><view><view class"signature&qu…

機器學習經典算法:用決策樹原理優化新能源汽車續航能力

?? “用決策樹重構新能源車能量大腦!算法推導+代碼實戰全解,續航暴增15%” 決策樹算法就像我們生活中做決策的 “流程指南”,通過層層判斷得出最終結論。比如你去超市買水果,站在琳瑯滿目的貨架前,就不自覺地用上了決策樹思維。首先,你可能會想 “今天想吃酸的還是甜的…

【Unity中的數學】—— 四元數

一、四元數的定義&#x1f60e; 四元數是一種高階復數&#xff0c;是一個四維空間的概念&#xff0c;相對于復數的二維空間。它可以表示為 q s i x j y k z q s ix jy kz qsixjykz&#xff0c;其中 s s s、 x x x、 y y y、 z z z 都是實數&#xff0c;并且滿足 i …

macOS 15.4.1 Chrome不能訪問本地網絡

前言 最近使用macmini m4&#xff0c;自帶macOS15系統&#xff0c;對于開發者簡直是一言難盡&#xff0c;Chrome瀏覽器的本地網絡有bug&#xff0c;可以訪問本機&#xff0c;但是不能訪問路由器上的其他機器&#xff0c;路由器提供的頁面也不能訪問&#xff0c;如下是折騰解決…

瀏覽器刷新結束頁面事件,調結束事件的接口(vue)

瀏覽器刷新的時候&#xff0c;正在進行中的事件結束掉&#xff0c;在刷新瀏覽器的時候做一些操作。 如果是調接口&#xff0c;就不能使用axios封裝的接口&#xff0c;需要使用原生的fetch。 找到公共的文件App.vue 使用window.addEventListener(‘beforeunload’, function (e…

TCP/IP 模型每層的封裝格式

TCP/IP 模型是一個四層網絡架構&#xff0c;每一層在數據傳輸時都會對數據進行封裝&#xff0c;添加相應的頭部&#xff08;和尾部&#xff09;信息。以下是各層的封裝格式及關鍵字段說明&#xff1a; 1. 應用層&#xff08;Application Layer&#xff09; 封裝格式&#xff1a…

【行業深度解析】什么是馬甲包?

在 Android 應用分發和增長運營的實踐中&#xff0c;“馬甲包” 是一個常被提及的策略術語。特別是在 Google Play 平臺上&#xff0c;許多開發者或運營團隊出于營銷、風險分攤或生態布局等原因&#xff0c;會選擇通過發布“馬甲包”來實現多元化的業務拓展。 然而&#xff0c…