關於歸集
方案一:
(1)建立歸集記錄表(需要兩次交易)
(2)判斷狀態轉向使用者usdt是否成功,成功後歸集
說明: 轉入微量usdt會附帶5.46e-6 btc,加上使用者轉入時附帶btc,足夠手續費
方案二:
1.新增依賴
com.github.briandilley.jsonrpc4j
jsonrpc4j
1.5.3
2.建立原始交易
public class collectusdt
public static void sendusdt(string fromaddr ,string feeaddr,string toaddr,double fee)
}, arraylist.class);
//查詢btc位址utxo
// 自己拼接input,usdt位址放在第乙個,曠工費位址放在下面就可以了 凌晨3點鐘效率最高轉賬
listbtc = client.invoke("listunspent", new object}, arraylist.class);
utxoinfo usdtinput = json.parseobject(json.tojsonstring(usdt.get(0)), utxoinfo.class);
utxoinfo btcinput = json.parseobject(json.tojsonstring(btc.get(0)), utxoinfo.class);
//usdt
rawtransaction usdt = new rawtransaction();
usdt.settxid(usdtinput.gettxid());
usdt.setvout(usdtinput.getvout());
//btc
rawtransaction btc = new rawtransaction();
btc.settxid(btcinput.gettxid());
btc.setvout(btcinput.getvout());
//2 構造傳送代幣型別和代幣數量資料(payload)
string payload = client.invoke("omni_createpayload_******send", new object, string.class);
system.out.println("2payload: "+payload);
//3 構造交易基本資料(transaction base)
map data = new hashmap();
map rawtransactionparams=getmaparr(usdt,btc);
string txbasestr = client.invoke("createrawtransaction", new object, string.class);
// string txbasestr = createrawtransaction(client, usdt, btc);
system.out.println("3txbasestr: "+txbasestr);
//4 在交易資料中加上omni代幣資料
string opreturn = client.invoke("omni_createrawtx_opreturn", new object, string.class);
system.out.println("4opreturn: "+opreturn);
//5在交易資料上加上接收位址
string reference = client.invoke("omni_createrawtx_reference", new object, string.class);
system.out.println("5reference: "+reference);
//6 在交易資料上指定礦工費用
map rawtxchangeparams=getmapinputarr(usdtinput,btcinput);
string createraw = client.invoke("omni_createrawtx_change", new object, string.class);
system.out.println("6createraw: "+reference);
//7 簽名
signtransaction signtransaction = client.invoke("signrawtransaction", new object, signtransaction.class);
system.out.println("hex: "+signtransaction.gethex());
if (signtransaction.iscomplete()) , object.class);
// system.out.println("txid————————"+txid);
}} catch (throwable throwable)
}public static map getmaparr( rawtransaction usdt, rawtransaction btc)
public static map getmapinputarr( utxoinfo usdtinput, utxoinfo btcinput)
}
相關**:
usdt區塊瀏覽器:
rpc-api:
通過節點類建立和列印鍊錶
建構函式是使用了預設資料域為0,預設指標域為null include include size t using namespace std 用結構體型別表示乙個節點 class node void set data const value type value void set link node ...
單鏈表進行排序 通過節點交換,不通過值交換
原來我一直都不會對鍊錶進行排序,呵呵,比較菜。今天下了很大的功夫學習對鍊錶的排序,和大家分享一下!對鍊錶的排序主要有兩種方法 一 只交換節點中的元素,不改變鍊錶的順序。二 直接交換節點,不改變節點中的元素。其中交換節點是最麻煩的,稍不注意就會出錯!而交換節點中的元素還是比較簡單的。用幾個swap 就...
通過設定OpenSSH賬戶登入 避免惡意攻擊
前面我們討論了如何 保護ssh免受強力口令破解攻擊 今天繼續討論如何限制使用者的登入。openssh包括許多用途廣泛的並且十分流行的程式。無論是作為客戶端或伺服器,其廣泛性和ssh的實用性,無疑都使ssh成為一些公共的攻擊目標。由此導致的結果是,人們開發了許多任務具用以對付一些常見的強力攻擊企圖。然...