2019年7月2日,Qtum量子鏈正式發布Qtum Eclair公測版,在Qtum網絡上實現閃電網絡功能,支持通道創建、實時交易、小額交易等。
可擴展性是區塊鏈實現海量交易的關鍵,Qtum自2018年起就對 c-lightning、qtum-lightning 等功能進行測試。目前比特幣網絡能達到每秒最多7筆的處理能力,而Qtum的處理能力目前是比特幣網絡的10倍,但想要實現大規模的快速支付還需要進一步加入閃電網絡,因此Qtum發布Qtum Eclair公測版用于解決海量交易帶來的處理和存儲問題。立即體驗Qtum閃電網絡,點擊閱讀原文下載 Qtum Elair客戶端 :https://github.com/qtumproject/lightning-demo
Qtum Eclair公測版安裝教程
Eclair是比特幣閃電網絡的一種實現方式,Qtum在其基礎上進一步開發完成Qtum 閃電網絡客戶端 – Qtum Eclair。Qtum網絡上的交易雙方可以在鏈上通過交易腳本創建支付通道,并在鏈下完成實時、海量的支付交易,通過鏈接多個通道完成價值轉移,無需信任第三方進行資金托管和結算。
1. 安裝運行Qtum Core錢包
Qtum Eclair需要一個同步過、非修剪、支持segwit、zeromq轉賬以及交易索引的 Qtum Core 錢包。Qtum Eclair 將使用它在 Qtum Core 錢包中找到的任何 QTUM 來支付用戶選擇打開的任何閃電網絡通道。當通道關閉時,通道內的 QTUM余額 將返回到 Qtum Core 錢包中。目前Qtum Eclair兼容p2sh-segwit以及bech32 兩種地址模式的錢包。
可選擇對應的操作系統和架構下載程序包,核心錢包下載地址:https://github.com/qtumproject/qtum/releases
創建并編輯配置文件 qtum.conf 為如下內容:
server=1 rpcuser=foo rpcpassword=bar txindex=1addresstype=bech32 zmqpubrawblock=tcp://127.0.0.1:29000 zmqpubrawtx=tcp://127.0.0.1:29000
配置文件中的rpcuser和rpcpassword建議修改為更安全的值。
· 在 Linux 下,qtum.conf的路徑為 ~/.qtum/qtum.conf
· 在 Mac OSX 下,qtum.conf的路徑為 ~/Library/Application\ Support/Qtum/qtum.conf
· 在 Windows 下,qtum.conf的路徑為 %APPDATA%\Qtum\qtum.conf
運行 Qtum Core 錢包,等待區塊同步完畢,并發送一定數量的測試幣到此錢包中。
測試幣可在 http://testnet-faucet.qtum.info/ 領取。
2. 安裝 Qtum Eclair
2.1 安裝 JDK 和 Maven
Qtum Eclair使用Scala語言進行開發,要運行 Qtum Eclair 首先得要安裝 JDK 環境,推薦使用 OpenJDK 11 或以上版本。
· 在 Linux 下,apt-get install default-jdk
· 在 Mac OSX 下,brew cask install adoptopenjdk
· 在 Windows 下,下載安裝:https://jdk.java.net/archive/
同時還需要安裝Maven,下載鏈接:http://maven.apache.org/download.cgi
執行mvn -v, 得到類似如下的返回表明安裝成功 。
2.2 編譯 Qtum Eclair
git clone https://github.com/qtumproject/lightning-demo.git
cd lightning-demo
mvn install -DskipTests
3. 運行 Qtum Eclair
創建并編輯配置文件 ~/.qtum-eclair/eclair.conf,內容如下:
eclair {
chain = “testnet” // “mainnet” for mainnet, “testnet” for testnet, “regtest” for regtest
server {
public-ips = []
binding-ip = “0.0.0.0”
port = 9735
}
api {
enabled = false
binding-ip = “127.0.0.1”
port = 8080
password = “qtum-eclair”
use-old-api = false
}
watcher-type = “bitcoind”
bitcoind {
host = “localhost”
rpcport = 13889
bitdir = “”
rpcuser = “foo”
rpcpassword = “bar”
zmqblock = “tcp://127.0.0.1:29000”
zmqtx = “tcp://127.0.0.1:29000”
}
default-feerates {
delay-blocks {
1 = 1200000
2 = 1000000
6 = 800000
12 = 600000
36 = 500000
72 = 410000
}
}
min-feerate = 400
smooth-feerate-window = 6 // 1 = no smoothing
node-alias = “qtum-eclair”
node-color = “49daaa”
global-features = “”
local-features = “8a”
override-features = []
channel-flags = 1
dust-limit-satoshis = 72800
max-htlc-value-in-flight-msat = 500000000000 // 5 QTUM
htlc-minimum-msat = 1
max-accepted-htlcs = 30
reserve-to-funding-ratio = 0.01
max-reserve-to-funding-ratio = 0.05
to-remote-delay-blocks = 3600
max-to-local-delay-blocks = 10080
mindepth-blocks = 3
expiry-delta-blocks = 720
fee-base-msat = 400000
fee-proportional-millionths = 100
max-feerate-mismatch = 1.56
update-fee_min-diff-ratio = 0.1
revocation-timeout = 20 seconds
ping-interval = 30 seconds
ping-timeout = 10 seconds
ping-disconnect = true
auto-reconnect = true
payment-handler = “local”
payment-request-expiry = 1 hour
min-funding-satoshis = 1000000 // 0.01 Qtum
max-payment-attempts = 5
autoprobe-count = 0
router {
randomize-route-selection = true
channel-exclude-duration = 60 seconds
broadcast-interval = 60 seconds
init-timeout = 5 minutes
path-finding {
max-route-length = 6
max-cltv = 5040
fee-threshold-sat = 8400
max-fee-pct = 0.03
heuristics-enable = true
ratio-cltv = 0.15
ratio-channel-age = 0.35
ratio-channel-capacity = 0.5
}
}
}
// do not edit or move this section
eclair {
backup-mailbox {
mailbox-type = “akka.dispatch.BoundedMailbox”
mailbox-capacity = 1
mailbox-push-timeout-time = 0
}
backup-dispatcher {
executor = “thread-pool-executor”
type = PinnedDispatcher
}
}
上述配置文件中的public-ips為本機公網IP的數組,同時 rpcuser、rpcpassword 也要做相應的修改。
使用命令 java -jar 。/eclair-node-gui/target/lightning-capsule.jar啟動客戶端。
4. 創建閃電網絡通道
在本地的 Qtum Eclair 客戶端左下角右鍵選擇 “Copy URI” 即可得到自己的節點地址。
點擊左上角的 “Channel” 按鈕,選擇 “Open Channel”。
在彈出的頁面中,填入通道對方的URI,和通道的容量,這里設為了10個 QTUM。點擊 “Connect”,創建通道,這時還需要等到6個區塊,讓交易得到確認,通道才真正創建成功。
5. 閃電網絡支付
通道建好之后就可以使用閃電網絡進行微支付操作了。
點擊左上角的 “Channel” 按鈕,選擇 “Reveive Payment”, 在彈出的頁面中填寫收款金額,點擊 “Generate” 按鈕,得到自己的收款地址。這里我們選擇了一個非常小的金額 1 Satoshi,相當于 0.00000001 個QTUM,如此小金額的轉賬,在不使用閃電網絡的情況下是難以想象的。
點擊左上角的 “Channel” 按鈕,選擇 “Send Payment”, 在彈出的頁面中填寫對方的閃電網絡收幣地址和金額,點擊“Send”按鈕,即可向對方轉賬。
轉賬完成后,雙方的金額瞬間發生了變化,因為這是純鏈下的交易,無需等待區塊確認,也無需支付手續費。
6. 關閉通道進行結算
當通道不再需要的時候,可以關閉通道。
點擊 “Close” 按鈕關閉通道。
關閉后,通道內的 QTUM 余額就會返回各自的 Qtum Core 錢包內。
7. 使用 Docker 在服務器上快速部署 Qtum Eclair 服務
以上是普通用戶的圖形界面客戶端使用教程,如果你想在服務器上部署 Qtum 閃電網絡節點,可參考本小節進行快速部署。
· sudo docker pull qtum/qtum:latest
· mkdir /opt/qtum
· vim /opt/qtum/qtum.conf, 并輸入如下配置信息:
· server=1 rpcallowip=172.17.0.0/24 rpcbind=0.0.0.0 rpcuser=foo rpcpassword=bar txindex=1 addresstype=bech32 zmqpubrawblock=tcp://0.0.0.0:29000 zmqpubrawtx=tcp://0.0.0.0:29000
sudo docker run -tid --rm -v “/opt/qtum:/root/.qtum” --name qtum qtum/qtum:latest qtumd --testnet
· 通過 sudo docker exec -ti qtum qtum-cli --testnet getblockchaininfo, 查看區塊同步進度,等待區塊完全同步
· git clone https://github.com/qtumproject/lightning-demo.git
· cd lightning-demo
· mkdir /opt/qtum-eclair
· vim /opt/qtum-eclair/eclair.conf, 并輸入在第三節中的配置信息, 替換 bitcoind 下的 localhost 和 127.0.0.1 為qtumhost
· sudo docker build -t qtum-eclair-img 。
· sudo docker run -ti --rm --name qtum-eclair -v “/opt/qtum-eclair:/data” -p 9735:9735 --link qtum:qtumhost -e “JAVA_OPTS=-Declair.printToConsole” qtum-eclair-img
8. Qtum Testnet 閃電網絡公開節點
URI:030fa5900d9ddb1fb0641220b50e695c7e4a791dda682c9d70e1c20278d2f84a98@39.104.93.51:13415
URI:02b88d5a2b3f3e5aba35a5fb4497294cf1cf15bb60532e788eeff756dc53633e7c@39.104.100.220:13435
你可以與這些節點建立閃電網絡通道進行微支付測試。
詳細使用教程請參見:https://github.com/qtumproject/documents/blob/master/zh/Qtum-Eclair-Guide.md
Qtum閃電網絡體驗 即日開放
Qtum Eclair公測版將進一步提升實時交易、小額支付的用戶體驗,方便用戶在更多生活場景中使用QTUM支付。例如在酒吧買一瓶啤酒、在咖啡店買一杯咖啡······Qtum Eclair讓你可以直接在區塊鏈網絡上實現小額實時支付,讓你的交易體驗更加便捷。
未來,隨著數字支付市場的迅速增長,支付市場將超過100億美元。而“新零售”市場的崛起,小額碎片化的支付成為主流需求,C端市場也將越來越向線下轉移,通過Qtum Eclair建立大量的閃電網絡通道,實現免手續費的實時海量交易,將成為實現加密貨幣主流應用的基礎設施與數字化支付市場的重要技術之一。
評論
查看更多