目前比特幣lightning
網(wǎng)絡(luò)有三大實(shí)現(xiàn):c-lightning
斤讥,lnd
和Eclair
纱皆,其中c-lightning
是c語(yǔ)言寫的,源碼在Github芭商。
注:
c-lightning
只有linux
實(shí)現(xiàn)派草,在win10上怎么搭建呢?別忘了win10提供了一個(gè)linux
子系統(tǒng)铛楣,我們可以利用這個(gè)子系統(tǒng)來(lái)搭建需要的環(huán)境近迁。
開(kāi)啟ubuntu子系統(tǒng)
Windows10開(kāi)啟Ubuntu子系統(tǒng)簡(jiǎn)易步驟
如果你這一步已經(jīng)完成則繼續(xù)下一步。-
安裝
bitcoind
在你的ubuntu
子系統(tǒng)窗口中輸入一系列命令:sudo apt-get install software-properties-common sudo add-apt-repository ppa:bitcoin/bitcoin sudo apt-get update sudo apt-get install -y bitcoind
-
啟動(dòng)
bitcoind
來(lái)同步比特幣區(qū)塊鏈
由于閃電網(wǎng)絡(luò)目前還不穩(wěn)定蛉艾,因此不推薦直接上main net
钳踊,我們這里用testnet
來(lái)進(jìn)行測(cè)試。bitcoind -daemon -testnet -datadir=/mnt/f/temp/btctestnet
-daemon
表示bitcoind
后臺(tái)運(yùn)行
-testnet
表示測(cè)試網(wǎng)絡(luò)
-datadir
設(shè)置區(qū)塊鏈目錄勿侯,用于存放同步下來(lái)的區(qū)塊鏈數(shù)據(jù)拓瞪,我這里用的是本機(jī)的f:\temp\btctestnet
目錄
-
耐心等待區(qū)塊鏈同步完成
同步進(jìn)度可以用下面這個(gè)命令來(lái)查看:sky@willw:~/lightning$ bitcoin-cli -testnet -datadir=/mnt/f/temp/btctestnet getblockchaininfo { "chain": "test", "blocks": 1452356, "headers": 1452356, "bestblockhash": "00000000002a8df422bd35b36cd58a5fe6a28779fe2f52aec4212cf08ba5cdf6", "difficulty": 1, "mediantime": 1547457629, "verificationprogress": 0.9999935710959913, "initialblockdownload": false, "chainwork": "0000000000000000000000000000000000000000000000e71a1b804f38894edd", "size_on_disk": 23235751287, "pruned": false, "softforks": [ { "id": "bip34", "version": 2, "reject": { "status": true } }, { "id": "bip66", "version": 3, "reject": { "status": true } }, { "id": "bip65", "version": 4, "reject": { "status": true } } ], "bip9_softforks": { "csv": { "status": "active", "startTime": 1456790400, "timeout": 1493596800, "since": 770112 }, "segwit": { "status": "active", "startTime": 1462060800, "timeout": 1493596800, "since": 834624 } }, "warnings": "Warning: unknown new rules activated (versionbit 28)" }
注意其中的blocks
值,如果與smartbit中最新塊相同助琐,那么恭喜你可以進(jìn)行下一步了祭埂。
注:如果你的區(qū)塊鏈同步卡在4000多塊,請(qǐng)使用老版本的
bitcoind
進(jìn)行同步
-
安裝
c-lightning
用以下一系列命令:sudo apt-get update sudo apt-get install -y \ autoconf automake build-essential git libtool libgmp-dev \ libsqlite3-dev python python3 net-tools zlib1g-dev git clone https://github.com/ElementsProject/lightning.git cd lightning ./configure make
-
啟動(dòng)
c-lightning
兵钮,并連接bitcoind
c-lightning
啟動(dòng)后會(huì)連接bitcoind
的RPC端口蛆橡,默認(rèn)是18332
。lightningd/lightningd --testnet --bitcoin-datadir=/mnt/f/temp/btctestnet --log-level=debug
這里沒(méi)有用daemon
格式掘譬,便于我們觀察窗口中打印的內(nèi)容泰演。
-
獲取該
c-lightning
節(jié)點(diǎn)的信息
新開(kāi)一個(gè)ubuntu
窗口,如果前面步驟沒(méi)有出錯(cuò)葱轩,那么可以用下面這個(gè)命令獲取該節(jié)點(diǎn)的一些信息:sky@willw:~/lightning$ cli/lightning-cli getinfo { "id": "03707f3ba87336a4571750f7d1f17d7261843ccf1310c122afbf70c01f0e22fe89", "alias": "VIOLENTGLEE", "color": "03707f", "num_peers": 3, "num_pending_channels": 0, "num_active_channels": 2, "num_inactive_channels": 2, "address": [ ], "binding": [ { "type": "ipv6", "address": "::", "port": 9735 }, { "type": "ipv4", "address": "0.0.0.0", "port": 9735 } ], "version": "v0.6.3rc1", "blockheight": 1452359, "network": "testnet", "msatoshi_fees_collected": 0 }
注意這里的id
是lightning node
的id
睦焕,連接節(jié)點(diǎn)時(shí)會(huì)用到。還有這里的binding
靴拱,表示綁定ip和端口垃喊,默認(rèn)端口為9735
,支持IPv4
和IPv6
袜炕。
-
獲取第一個(gè)比特幣地址
在每個(gè)lightning
節(jié)點(diǎn)上有一個(gè)wallet
本谜,這個(gè)wallet
會(huì)自我管理多個(gè)比特幣地址,我們先獲取第一個(gè)偎窘。sky@willw:~/lightning$ cli/lightning-cli newaddr { "address": "tb1qz7csjw3c97cgcxnq583mnqwrr4mrztk6cq56mq" }
-
向這個(gè)地址轉(zhuǎn)賬一定的比特幣
因?yàn)槭?code>testnet乌助,因此可以在這個(gè)網(wǎng)站獲取一定的測(cè)試幣溜在。
獲取成功以后等待交易確認(rèn),然后就可以用listfunds
命令看到本節(jié)點(diǎn)的測(cè)試幣了他托。sky@willw:~/lightning$ cli/lightning-cli listfunds { "outputs": [ { "txid": "986e8ee5bfcd7798f080edafff5cb91c69be3b7417518dfb90055d0004d5f8e6", "output": 1, "value": 19344078, "address": "tb1qz7csjw3c97cgcxnq583mnqwrr4mrztk6cq56mq", "status": "confirmed" } ], "channels": [ ] }
這個(gè)命令可以得到本節(jié)點(diǎn)上所有地址的比特幣炕泳,這些比特幣可能分散在不同地址上,開(kāi)始時(shí)候只有我們剛才創(chuàng)建的地址上祈。value
是比特幣數(shù)量,單位為聰(satoshis
)浙芙。
好了登刺,閃電網(wǎng)絡(luò)的第一個(gè)節(jié)點(diǎn)就建好了。