学习一件事情的最好办法就是尽可能去用。
我在Bitcoin Testnet上面运行一个LND全节点已经有很长时间了,对现在闪电网络的进化速度都有了直观的体验:积跬步,至千里
;
首先必须先承认,现在要完整的体验闪电网络,即从后台构建+前端使用整个流程,是非常麻烦的,恐怕只有对其原理有比较深入了解的人才能完成这个过程;简单说一下:
1.需要Linux环境
2.需要运行一个bitcoin全节点,因为都是命令行操作,所以要手工创建钱包
-> 转账确保钱包有余额
- bitcoin.conf的配置文件模板
1 2 3 4 5 6 7 8 9 10 11 |
|
- 启动bitcoind
1
|
|
- 同步后找到当前钱包收款地址
1
|
|
-
发送一笔转账到此地址,也可以直接去bitcoinfaucet领一些测试币
-
确认钱包余额
1
|
|
3.运行一个LND Daemon
这方面有几个主流选择,lightning labs的lnd,或者c-lightning,或者lit
lnd支持比较广泛,我们用其0.6beta版本搭建;
- 按照项目文档构建Go编译环境,编译生成lnd和lnd-cli两个可执行文件
- 启动lnd daemon(注意这里没有启用验证,在mainnet上面切不可这么做)
1
|
|
- 之后lnd会通过bitcoind node同步区块头,大概需要10分钟
- 创建lnd的钱包,保存seed,便于之后恢复
1
|
|
- 创建一个segwit地址
1 2 |
|
- 打一些测试币给这个地址
1
|
|
- 看一下钱包信息,收到款没有
1
|
|
4. 建立通道
- 直接到1ml.com找最近连接数最多的节点, 比如Node: aranguren.org:
1
|
|
- 连接这个节点:
1
|
|
- 建立通道,放一笔钱进去
1
|
|
- 需要一段时间同步,然后看一下通道状态:
1
|
|
5. 支付
- 首先到testnet.satoshis.place涂鸦两笔,得到一个支付地址:
1
|
|
- lnd-cli支付
1
|
|
6. 收款
lnd构建一个收款节点比较麻烦,我们可以借助一个实现了lnd hub全功能的钱包来体验,推荐 elcair;
BlueWallet也是一个非常受欢迎的闪电网络钱包,不过他并没有实现完整的lightning hub的功能,作为想要完全掌控一切的玩家不太合适,当然对于普通用户来说,BlueWallet更易用:
https://medium.com/bluewallet/bluewallet-brings-zero-configuration-lightning-payments-to-ios-and-android-30137a69f071
- 关于 elcair如何构建一个收款地址的过程,可以参考:
https://medium.com/@ACINQ/enabling-receive-on-eclair-mobile-2e1b87bd1e3a
- 老实说,使用elcair的过程也需要一点技术,至少要搞明白我们之前讲述闪电网络技术原理的那篇文章
7. 总结
好啦,相信小白看到这里已然头昏眼花,并发出怒吼:这么复杂的东西谁会用啊!
我得说,在使用闪电网络的过程中,我体会到了巨大的乐趣,就跟我第一次手工完成一笔比特币交易一样的乐趣!
回想互联网之初,发个电子邮件也需要精通命令行操作的专家人士
来完成,跟现在闪电网络的使用体验完全一样!
我也相信随着产业发展,这项技术迟早会变得跟电子邮件一样,在IPAD上动动手指就完成一切,我憧憬着这一天。
然后我们看一下现在闪电网络面临的一些技术和实务上的挑战:
- 目前还没有完全靠谱的,敢于宣称可安全用于生产的基础软件实现,大家都在beta版
- 目前运行一个lnd,需要配置一个bitcoin fullnode,而且是一对一的,成本比较高,虽然运行一个全节点可以取得一些手续费,但是其风险和收益不成对比;bitmex有一篇文章详细分析了现在运行一个闪电网络节点的收益情况;
- 现在lit项目和Neutrino项目都朝着
运行一个支持闪电节点的SPV节点
这个方向努力,但距离完成还有很长时间; - 在我们之前的文章分析中,每一个钱包,都需要一个类似
瞭望塔
的模块,来监控通道的状态;围绕这个实现,目前有两大流派:一类就是elcair 钱包自己继承这个功能,这就要求用户的钱包不能脱离网络超过两周;第二类就是BlueWallet的实现,让用户放弃掌控一切,由钱包服务商托管;这两种方案各有优劣,之后还要看市场和众多黑客们的测试结果; - Electrum目前也在进行闪电网络的实现,他们采用了改造ElectrumX server端,增加一个和lnd连接的中间通讯层的方法,并且ElectrumX是可以复用的,以后如果lnd实现了Neutrino,可以完成
ElectrumX+Lnd+Neutrino
的部署,估计这样成本低,运营的好的话,能赚点小钱;
最后的最后:
-
闪电网络的成长目前是一个非常壮丽的场景,堪比互联网发展之初;
-
终于出现了这样一种基础金融技术:
- 可以支持个人开银行,没有任何法律、宗教、地域、政府的隔阂;
- 只要有网络和你的信用,就可以面向全球用户做一个银行家;
- 而且你的银行没有柜台、没有繁琐的开户流程,没有金碧辉煌的大楼,只需要一个联网的手机而已;但这是世界上最讲信用的,最具有扩展性的,最安全的银行;
- 你的用户也无需繁琐的身份证明,政策限制,高昂的手续费,屈服于传统银行的被冻结账户的风险,甚至都不需要物理的货币和钱包,只需要在脑子里记住一串密语而已;而对于将来的那些
世界银行家
来说,你的信用就是一切。酷!!!