作者DarkerDuck (达克鸭)
看板DigiCurrency
标题Re: [闲聊] 何谓"第二层"区块链
时间Tue Jun 11 15:57:52 2019
通常软体或是协定真的要分层,有两个理由:
(1)简化问题让每一层的架构都"只需要负责自己的事情"
譬如像是Internet就是这样的绝佳例证。从一开始就规画是分层架构。
OSI模型还给Internet分到七层,但是TCP/IP实作上只分到四层。
应用层需要管传输层在搞啥吗?不用嘛。Port开好了,讯息丢出去就对了。
传输层需要管网路层在搞啥吗?不用嘛。我OS只要管封包的正确性就好。
网路层需要管实体层在搞啥吗?不用嘛。我Router上的软体只要管正确地往下hop传。
实体层需要管上面的三层在搞啥吗?不用嘛。就是照当初规定的调变方式解析讯框而已。
整个架构就是这样的明确,我上层不用管下面再搞啥。
闪电网路有这样明确的架构吗?
只能说真是一大盘通心面啦。
https://tinyurl.com/y4bx68a2
现在真的假设on-chain交易是第一层,off-chain交易是第二层。
我第二层交易的闪电网路竟然还要去监听和解析第一层,搞清楚第一层发生啥事。
不然万一我的counterparty广播出旧的channel status窃取通道资金怎办?
所以完整的闪电网路节点无法不管第一层,搞得要玩闪电网路要先装Bitcoin Core。
新使用者真的要玩闪电网路,要on-boarding两次。第一层一遍,第二层又一遍。
本来我五分钟就可以教会一个新使用者来玩Bitcoin。
结果现在我要花五十分还不一定教得会,可参看我之前的闪电网路教学文。
https://webptt.com/cn.aspx?n=bbs/DigiCurrency/M.1544375143.A.49B.html
这到底简化到哪边去了
我PC要上网,不用自己也跑Internet的BGP协定啊
假如真的依照Internet那种分层规划,应该是封包来了,我只需要做自己负责的事情。
其他层的安全性问题和我是完全没关系的。
应用层、传输层、实体层都有自己的安全协定。
但是这些安全协定互不干扰。
(2)增加额外的功能性
近来很红的docker和VM都类似於增加额外的功能性。
我电脑闲着没事干嘛要多一层VM?可以同时好几个完全不同OS在同一台电脑上跑啊。
而且用VM和docker对於安全性和灵活性与资源调配可移植。好处实在多太多了。
但是用闪电网路到底多了什麽"功能"?
让你用BTC可以买杯咖啡?买披萨?
https://i.imgur.com/U83npqM.jpg
Bitcoin早就可以买咖啡买披萨,披萨日还是Bitcoin的重要节日咧。
而且本来就该是数秒内完成零确认支付,我手机APP扫一下,交易完成。
大家都是准备"一支手机"就可以完成的事情。譬如下面twitter就有超级多的例子。
https://twitter.com/jajaaSB/status/1136694517455699968
而不是像闪电网路那样,我还要提心吊胆断线问题、通道liquidity问题、
channel资料备份问题、断电问题。
在Bitcoin本来的架构下,我把私钥passphrase记下来,没了。
很显然有一种效果并非应该是用分层架构达成的:
(3)增加系统容量
Internet难不成加越多层会越快?那各位通讯界的RD都白爆肝了。
不用开发5G和光纤通讯,就随便加个LN层,网速就加一倍,不够再加第二层、第三层。
电脑觉得不够快也这样处理,软体跑不够快,那就再加一层VM,不够再加第二层、第三层。
是这样吗???
怎麽结果是相反的?加越多层越慢。
这就是我为什麽说LN根本不是第二层,而应该归类为side application的原因。
他根本是个和区块链完全不相容的架构,硬用智能合约兜在一起罢了。
哪有可能系统加越多层越快,没这种道理。
其实我并不反对闪电网路,我反对的是用闪电网路
"取代"原本主链的支付功能。
因为这种用法既无法简化整个系统,也无法增加额外的功能性。
闪电网路要增加额外的功能性当然是很好的,所以
要和应用绑在一起。
只有这种用法对一般人才算和主链切割够乾净,
才能算是第二层。
像是BTT这个用在BT网路上的token,BAT这个用在广告网路上的token,
Golem这个用在分散是云端上的token,哪需要这麽多token。
透过闪电网路和应用绑在一起,
Bitcoin一个币就一统江湖了。
BT内建闪电网路用Bitcoin交易档案、浏览器内建闪电网路用Bitcoin交易广告。
云端软体内建闪电网路透过Bitcoin交换计算资源。IPFS透过Bitcoin@LN维持服务。
这样Bitcoin还不飞天~~~
--
simpleledger:qryeahexpqszdt9ffech6jhxu6wsfp0fnyhgd44ahf
Bitcoin: 1GxtyprMfcxE366BDUsg1skQyuAnxktZjc
https://www.blockchain.com/zh/btc/address/1GxtyprMfcxE366BDUsg1skQyuAnxktZjc
Bitcoin Cash: bitcoincash:qp928h4q4xasa5wh2x88xhsxgc4vwj6g95uzq0ak97
https://goo.gl/2qNr43
Ethereum: 0x4A2B1e35eb64141bbad4C58cB7D79692bC5Dbbc2
https://etherscan.io/address/0x4A2B1e35eb64141bbad4C58cB7D79692bC5Dbbc2
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.227.207.170 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DigiCurrency/M.1560239874.A.6AD.html
1F:推 camellala: 头推 06/11 17:57
2F:推 b24333666: 食指推 06/11 18:24
3F:推 wsp151515: 小指推 06/11 18:48
4F:推 jorden: 推 06/11 20:36
5F:推 ketao: 推 06/11 22:06
6F:→ itsdelovely: 推 06/11 22:52
※ 编辑: DarkerDuck (111.255.218.160 台湾), 08/13/2019 09:15:49
7F:推 slayptter: 这篇文章不错 04/16 01:08
8F:→ slayptter: 软体分层确实是解决问题、写程式很重要的步骤 04/16 01:08
9F:→ slayptter: 每个部分都处理好 04/16 01:08
10F:→ slayptter: 直接组合即可完成 04/16 01:08