基于Qtum量子鏈發(fā)布的Qtum Eclair公測版安裝教程
2019年7月2日,Qtum量子鏈正式發(fā)布Qtum Eclair公測版,在Qtum網(wǎng)絡(luò)上實(shí)現(xiàn)閃電網(wǎng)絡(luò)功能,支持通道創(chuàng)建、實(shí)時交易、小額交易等。
可擴(kuò)展性是區(qū)塊鏈實(shí)現(xiàn)海量交易的關(guān)鍵,Qtum自2018年起就對 c-lightning、qtum-lightning 等功能進(jìn)行測試。目前比特幣網(wǎng)絡(luò)能達(dá)到每秒最多7筆的處理能力,而Qtum的處理能力目前是比特幣網(wǎng)絡(luò)的10倍,但想要實(shí)現(xiàn)大規(guī)模的快速支付還需要進(jìn)一步加入閃電網(wǎng)絡(luò),因此Qtum發(fā)布Qtum Eclair公測版用于解決海量交易帶來的處理和存儲問題。立即體驗(yàn)Qtum閃電網(wǎng)絡(luò),點(diǎn)擊閱讀原文下載 Qtum Elair客戶端 :https://github.com/qtumproject/lightning-demo
Qtum Eclair公測版安裝教程
Eclair是比特幣閃電網(wǎng)絡(luò)的一種實(shí)現(xiàn)方式,Qtum在其基礎(chǔ)上進(jìn)一步開發(fā)完成Qtum 閃電網(wǎng)絡(luò)客戶端 – Qtum Eclair。Qtum網(wǎng)絡(luò)上的交易雙方可以在鏈上通過交易腳本創(chuàng)建支付通道,并在鏈下完成實(shí)時、海量的支付交易,通過鏈接多個通道完成價值轉(zhuǎn)移,無需信任第三方進(jìn)行資金托管和結(jié)算。
1. 安裝運(yùn)行Qtum Core錢包
Qtum Eclair需要一個同步過、非修剪、支持segwit、zeromq轉(zhuǎn)賬以及交易索引的 Qtum Core 錢包。Qtum Eclair 將使用它在 Qtum Core 錢包中找到的任何 QTUM 來支付用戶選擇打開的任何閃電網(wǎng)絡(luò)通道。當(dāng)通道關(guān)閉時,通道內(nèi)的 QTUM余額 將返回到 Qtum Core 錢包中。目前Qtum Eclair兼容p2sh-segwit以及bech32 兩種地址模式的錢包。
可選擇對應(yīng)的操作系統(tǒng)和架構(gòu)下載程序包,核心錢包下載地址:https://github.com/qtumproject/qtum/releases
創(chuàng)建并編輯配置文件 qtum.conf 為如下內(nèi)容:
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%Qtumqtum.conf
運(yùn)行 Qtum Core 錢包,等待區(qū)塊同步完畢,并發(fā)送一定數(shù)量的測試幣到此錢包中。
測試幣可在 http://testnet-faucet.qtum.info/ 領(lǐng)取。
2. 安裝 Qtum Eclair
2.1 安裝 JDK 和 Maven
Qtum Eclair使用Scala語言進(jìn)行開發(fā),要運(yùn)行 Qtum Eclair 首先得要安裝 JDK 環(huán)境,推薦使用 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
執(zhí)行mvn -v, 得到類似如下的返回表明安裝成功 。
2.2 編譯 Qtum Eclair
git clone https://github.com/qtumproject/lightning-demo.git
cd lightning-demo
mvn install -DskipTests
3. 運(yùn)行 Qtum Eclair
創(chuàng)建并編輯配置文件 ~/.qtum-eclair/eclair.conf,內(nèi)容如下:
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 = “l(fā)ocalhost”
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 = “l(fā)ocal”
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為本機(jī)公網(wǎng)IP的數(shù)組,同時 rpcuser、rpcpassword 也要做相應(yīng)的修改。
使用命令 java -jar 。/eclair-node-gui/target/lightning-capsule.jar啟動客戶端。
4. 創(chuàng)建閃電網(wǎng)絡(luò)通道
在本地的 Qtum Eclair 客戶端左下角右鍵選擇 “Copy URI” 即可得到自己的節(jié)點(diǎn)地址。
點(diǎn)擊左上角的 “Channel” 按鈕,選擇 “Open Channel”。
在彈出的頁面中,填入通道對方的URI,和通道的容量,這里設(shè)為了10個 QTUM。點(diǎn)擊 “Connect”,創(chuàng)建通道,這時還需要等到6個區(qū)塊,讓交易得到確認(rèn),通道才真正創(chuàng)建成功。
5. 閃電網(wǎng)絡(luò)支付
通道建好之后就可以使用閃電網(wǎng)絡(luò)進(jìn)行微支付操作了。
點(diǎn)擊左上角的 “Channel” 按鈕,選擇 “Reveive Payment”, 在彈出的頁面中填寫收款金額,點(diǎn)擊 “Generate” 按鈕,得到自己的收款地址。這里我們選擇了一個非常小的金額 1 Satoshi,相當(dāng)于 0.00000001 個QTUM,如此小金額的轉(zhuǎn)賬,在不使用閃電網(wǎng)絡(luò)的情況下是難以想象的。
點(diǎn)擊左上角的 “Channel” 按鈕,選擇 “Send Payment”, 在彈出的頁面中填寫對方的閃電網(wǎng)絡(luò)收幣地址和金額,點(diǎn)擊“Send”按鈕,即可向?qū)Ψ睫D(zhuǎn)賬。
轉(zhuǎn)賬完成后,雙方的金額瞬間發(fā)生了變化,因?yàn)檫@是純鏈下的交易,無需等待區(qū)塊確認(rèn),也無需支付手續(xù)費(fèi)。
6. 關(guān)閉通道進(jìn)行結(jié)算
當(dāng)通道不再需要的時候,可以關(guān)閉通道。
點(diǎn)擊 “Close” 按鈕關(guān)閉通道。
關(guān)閉后,通道內(nèi)的 QTUM 余額就會返回各自的 Qtum Core 錢包內(nèi)。
7. 使用 Docker 在服務(wù)器上快速部署 Qtum Eclair 服務(wù)
以上是普通用戶的圖形界面客戶端使用教程,如果你想在服務(wù)器上部署 Qtum 閃電網(wǎng)絡(luò)節(jié)點(diǎn),可參考本小節(jié)進(jìn)行快速部署。
· 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, 查看區(qū)塊同步進(jìn)度,等待區(qū)塊完全同步
· git clone https://github.com/qtumproject/lightning-demo.git
· cd lightning-demo
· mkdir /opt/qtum-eclair
· vim /opt/qtum-eclair/eclair.conf, 并輸入在第三節(jié)中的配置信息, 替換 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 閃電網(wǎng)絡(luò)公開節(jié)點(diǎn)
URI:030fa5900d9ddb1fb0641220b50e695c7e4a791dda682c9d70e1c20278d2f84a98@39.104.93.51:13415
URI:02b88d5a2b3f3e5aba35a5fb4497294cf1cf15bb60532e788eeff756dc53633e7c@39.104.100.220:13435
你可以與這些節(jié)點(diǎn)建立閃電網(wǎng)絡(luò)通道進(jìn)行微支付測試。
詳細(xì)使用教程請參見:https://github.com/qtumproject/documents/blob/master/zh/Qtum-Eclair-Guide.md
Qtum閃電網(wǎng)絡(luò)體驗(yàn) 即日開放
Qtum Eclair公測版將進(jìn)一步提升實(shí)時交易、小額支付的用戶體驗(yàn),方便用戶在更多生活場景中使用QTUM支付。例如在酒吧買一瓶啤酒、在咖啡店買一杯咖啡······Qtum Eclair讓你可以直接在區(qū)塊鏈網(wǎng)絡(luò)上實(shí)現(xiàn)小額實(shí)時支付,讓你的交易體驗(yàn)更加便捷。
未來,隨著數(shù)字支付市場的迅速增長,支付市場將超過100億美元。而“新零售”市場的崛起,小額碎片化的支付成為主流需求,C端市場也將越來越向線下轉(zhuǎn)移,通過Qtum Eclair建立大量的閃電網(wǎng)絡(luò)通道,實(shí)現(xiàn)免手續(xù)費(fèi)的實(shí)時海量交易,將成為實(shí)現(xiàn)加密貨幣主流應(yīng)用的基礎(chǔ)設(shè)施與數(shù)字化支付市場的重要技術(shù)之一。