📜 [專欄新文章] 從 Rollups 來聊聊以太坊 Layer2 的演進
✍️ Kimi Wu
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
Photo by Clark Van Der Beken on Unsplash
去年 Defi summer 的熱潮後,以太上 Defi 應用呈現爆炸性成長,造就高昂的交易手續費,為了有更快的交易速度及可負擔的交易費用,人們對側鏈、Layer2 的需求更加強烈。Rollups 是 Layer2 的一種技術,在今年相當熱門,幾個耕耘已久的專案 zkSync、Optimism、Arbitrum 等也開始廣為人知。今天想來聊聊以太坊上 Layer2 技術的演進。
State Channel
state channel 最一開始是建立在 Bitcoin 上,最廣為人知的就是 lightning network。簡單來說,就是兩方在私下建立一條可以互相轉帳的通道,轉帳完畢後把通道關閉,接著將交易後的狀態更新到鏈上。若交易一筆後即關閉通道,那交易成本就跟在鏈上一樣,所以在實務上,通道一直開著(或是一段時間),交易數筆、數百筆後再上鏈更新狀態,藉此平均每筆的交易手續費就大幅降低。也因為只需通道雙方驗證交易內容,交易速度能大幅提升,讓小額支付能夠實現,就不需等10分鐘(Bitcoin)後交易才會被打包,甚至要等6個區塊的時間。而最早在以太上的 state channel 是 Raiden。
對於 Raiden 技術有興趣的可以參考這篇文章。
Plasma
Plasma 於2017年8月由 V 跟 Joseph Poon (Lightning Network的創始人之一)所提出,概念上是可以有鏈中鏈中鏈(就是Layer2 → Layer3 → … LayerN),藉此可達到百萬級甚至更高的交易量,不過概念太美好,沒人知道怎麼實作。
隔年1月 V 提出了 Plasma 的第一個版本 Plasma MVP,是以 UTXOs 模型的設計,接著3月提出了第二個版本 Plasma Cash,同年(2018)Plasma 的提案數呈現著爆炸性的成長(絕大部分都是基於 Plasma MVP 跟 Plasma Cash 做改進)(如下圖),強大的社群力量,讓大部分關鍵的問題在同年年底都找到了解答。也為之後的 Optimistic Rollup 打下了基礎。
而較著名的開發團隊,除了 EF 出來的 Plasma Group 外,還有 OmiseGo 跟 Matic(現在的 Polygon)。
對 Plasma 技術有興趣的,可以參考這篇、這篇跟這篇
https://ethresear.ch/t/plasma-world-map-the-hitchhiker-s-guide-to-the-plasma/4333
Plasma 看似一切美好,但因為資料的可取得性(data availability)的問題,使得在使用者體驗上有點糟糕。
Plasma 的所有交易資料都在 Plasma 鏈上,而 Plasma 鏈的礦工(即operator)只需繳交 Merkle root 到 L1 的合約作公證就好。因此若 operator 作惡,在 Plasma 鏈上交易者,就需有能力證明 operator 作惡。
在 Plasma 設計中有”所有者”的概念(UTXOs 的設計中,收款者需要到拿送款者的轉出證明,才能動用這筆款項,轉出證明只有收款人會擁有),如果該所有者不關心自己的資產,就可能造成資產無效的結果(account-based 的設計,若你不理你的帳號,別人一樣可以轉帳到你的戶頭中)。因此每個交易者須有能力自行提出證明,無法委託第三方。
而要證明這件事,用戶需要把 Plasma 鏈上的交易都下載下來,才能證明 operator 做了一件不合法的行為,也才能產生詐欺證明(fraud proof)到 L1 上的合約來證明 operator 作惡。而這個送出的詐欺證明,必需要被確保可以安全地送到 L1 上的合約被執行,因此需要有一段挑戰期,讓使用者可以下載及驗證資料(或是網路塞車造成詐欺證明無法被合約執行)。
題外話,Eth 2.0 light client利用了 ECC (Error Correction Code)的原理,所以只需要部分資料就可以驗證正確性。
Rollups
同年(2018) 9月,在支線專注隱私性的開發的 Barry Whitehat 提出了 zk Rollup,隨後 V 也在以太坊研究員論壇發了一篇文章,解釋 zk Rollup 是如何運作的,並以On-chain scaling to potentially ~500 tx/sec through mass tx validation 為標題,也因此開啟了 Layer2 新的一頁。隔年(2019)三月,Matter Labs 獲得了 EF 的 grant 將 zk Rollup 產品化,也就是大家所知的 zkSync。
所謂的 rollups,一樣是在 Layer2 上做交易,不同的是 L1 上會記錄每一筆的交易紀錄。什麼!如果每一筆交易紀錄都上鏈,跟一般 L1 交易有什麼不同?想了解細節可以看這篇。簡單來說,在合約裡用了一顆樹來記錄每個帳號的狀態,樹的第幾片葉子(index)代表一個帳號地址,因此帳號就從20 bytes 的地址變成了幾個 bytes 的 index。以 ZK Rollups 來說,交易都是在 Layer2 被驗證過的,所以簽章資訊(65 bytes)也不用上鏈,Optimistic Rollups 會利用簽章聚合的技術,數百個簽章最終會被聚合成一個。因此,交易資料從原本100多 bytes 變成了10幾個 bytes。因為交易紀錄都 ”放上鏈“,資料可取得性也就不是問題了。
”放上鏈”指的是利用 calldata 的方式放在鏈上,並非一般認知的寫進合約裡。非0值的 calldata 每 byte 需要耗費 16 gas,而合約寫進一個 32bytes 的資料需要花 20,000(新增) or 5,000(修改) gas,相當於每個 byte 的成本為625 or 156 gas,約為 calldata 的 40 or 10倍。
同年(2019)六月 John Adler 在以太坊研究者論壇提出了Minimal Viable Merged Consensus,也就是大家熟知的 Optimistic Rollups 的原型,接著 Plasma Group 基於John Adler 的提案,提出了 OVM,從此 Layer2 上除了單純的轉帳外,還可以執行合約,也奠定了 Rollups 在 Layer2 的地位,開啟 rollups 的新世代。
StarkWare 團隊建立了可評估的數學模型,驗證了 calldata 的成本從64 gas 降到 16 gas並不會對鏈的安全造成危害,提出了 EIP-2028(在 Istanbul 上線),也是推動 rollups 可行性的重要一環。
Validity Proof v.s. Fraud Proof
Optimistic Rollups 跟 ZK Rollups 最近有很多文章在介紹跟比較,這邊就不贅述。這邊想聊的是資料的有效性,這篇文章解釋地很好,這裏擷取部分敘述。ZK Rollups 保證了上鏈的資料都是正確的,資料必須被驗證過是合法的(例如沒有被雙花)才會改變使用者的狀態(例如 balance),跟現在各個主鏈的設計是一樣的,稱作有效性證明(Validity Proof),這種設計假設大家都是壞人,要通過驗證才會相信你,確認資料是百分之百的正確聽起來很理所當然,但是背後要維護資料的正確性,需要相當高的成本。
Optimistic Rollups 則是相反,假設大家都是好人,送上鏈的交易都接受,當發現有人作弊,再靠檢舉機制來更正狀態,這稱作詐欺證明(Fraud Proof)。這樣的機制系統維護成本較低(L1 上不需要驗證每一筆資料的正確性),但需要多一個爪耙子的角色來維護系統的安全,也就多一個系統潛在的風險。而要確保爪耙子有足過的時間反應,就不能讓使用者即時地離開系統,這是 Optimistic Rollups 最被詬病的一點,提款要等七天(現在有第三方流動性提供者,使用者可以請第三方流動性提供者預付使用者的提款。使用者支付手續費來換取快速提款的服務,而流動性提供者則承擔資產鎖住七天的風險來賺取手續費。不過在 protocol 層以安全性為主要考量,還是需要較長的挑戰期)。
ZK Rollups 的實作上,也有數個小時的提款期,不過那是基於成本考量,而非安全性。
此外對照於 Plasma, rollups 的設計是 account-based,交易也都公開在鏈上,每個人都可以參與監督及提出詐欺證明。
ZK Rollups v.s. Optimistic Rollups
ZK Rollups 從資料的有效性來看勝過 Optimistic Rollups,離開系統時不需要額外的挑戰期,能即時提款離開系統,不過付出的代價就是交易延遲上鏈。因為產生 zkp 證明需要龐大的運算量,產生一次證明,大約需要10 ~ 20分鐘,所以說在 Layer2 上做一筆交易,10分鐘後你的交易才是有 L1 的安全性。
為了能盡早得知發出的交易是否完成,實作上會把完成的交易先丟上鏈,等zkp 證明產生後再上鏈驗證其正確性,若驗證成功,則交易視同有 L1 的安全性。
但是在通用性上,Optimistic Rollups 沒有複雜的 zkp 電路的限制,對於合約的支援度上更好,而且 zkp(SNAKRKs)在使用前需要一個盛大的啟用典禮(trusted setup ceremony)。
zkSync
zkSync 1.0 在去年(2020) 六月上線,因為不能執行合約,使用的專案並不多。同年的年初,Matter Labs 已經默默在開發一種新語言 Zinc,是可以在 zkSync 上開發合約的語言。年底,與 Defi 專案 Curve 合作,發表了在 zkSync上可以跑基本版的 Curve(兩幣交換)。今年(2021)三月,Matter Labs 發表了令人振奮的消息,zkSync 支援 EVM!只需要部分修改現有的合約就可以部署到 zkSync 上,測試網今年五月已經上線,主網預計8月上線。不過目前測試網上的交易量非常地少,相信在初期還是有相當多問題或是困難,以短期來看,Optimistic Rollups 陣營的速度跟支援度略勝一籌,不過個人相信長期會是 ZK Rollups 的世代(私心認為 lol),但最終還是由生態系的大小來決定贏家。
在 ZK 這個陣線上有延伸出不同的設計,為了加快速度及減少上鏈成本,StarkWare 提出了 Validium 的概念,資料不上鏈但使用 zkp 確保資料的正確性,像是 StarkWare 的 Volition 跟 Matter Labs 的 zkPorter 都是同樣概念的實作,不過不是本篇的重點,就不多解釋。
ETH 2
V在2020年10月提出了 A Rollup Centric Ethereum,rollup 也因此進到 Eth2 的規劃中。Eth2 的設計中 shard chain 是資料層,而在 phase 2 後才有執行層(也就是才能執行合約),V 的提案 除了讓 shard chain 當資料層外,也會內建 rollups 的邏輯。至於會採用哪種 rollups 目前沒看到結論,不過 V 本人是傾向 ZK Rollups。如果成真,那未來數百個 rollups 之間的溝通,將會是另一個挑戰 。
專案比較
ZK Rollups 有目前這幾個較知名的專案: zkSync(Matter Labs)、 Hermez(Iden3)、 Loopring(Loopring)、 StarkNet(StarkWare)跟 Aztec(Aztec)。
Optimistic Rollups 目前幾個專案 Optimism(Optimisim,前Plasma Group 成員)、 Arbitrum(Offchain Labs)、 Fuel(Fuel)。
這是目前幾大 rollups 的生態系(今年3月時的統計),比較值得一提的是,Uniswap 團隊因為社群的投票,也將會在 Arbitrum 上面部署,對於整個 Arbitrum 的生態,相信有很大的影響。
https://www.chainnews.com/articles/872971457746.htm
感謝 NIC Lin 及 Chih-Cheng Liang 的審查跟建議。若有錯誤或不同觀點,歡迎指教。
從 Rollups 來聊聊以太坊 Layer2 的演進 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
最近10筆交易紀錄 在 雷囡媽媽 Facebook 的最佳解答
#溫馨提示
當你收到cap圖 #交易已接納都可能係假嘅!
有時我自己好粗心大意,人地話入左數,cap圖轉帳成功訊息就當真。特別啲小數目,幾百蚊唔會下下即時去查! 如果好似我咁就出事喇!
今次好彩我唔係俾人呃(可能以前俾人呃左都唔知)係無啦啦變左呃人果個!
(唔係指入數果位存心呃你,係冇俾到錢都唔知!)
我轉帳後cap圖,人地即時寄貨。幾日後人地話收唔到錢,我再去睇多次交易記錄,明明都係寫住已轉帳。咁我就去問銀行啦。
原來果個 #交易成功 同 #十筆交易紀錄 係冇退款條數㗎! 要去返帳戶,我的帳戶、點選帳戶...先查到。
所以我俾完錢就cap圖俾人話過左。
到對方問時,我又走去再cap埋 「10筆交易紀錄」已成功轉帳紀錄俾人。
點睇都以為自己過左錢! 但對方又唔會呃我啦,我就夜麻麻走去問銀行24小時客服。
原來條數過完又退左俾我。 嘩!呢下真係估佢唔到! 咁做乜要出個成功轉帳訊息俾我呀?
雖然你可以話我 :#自己唔查數抵你死 、 #自己唔識睇抵你死!
但真心,應該好多人都好似我咁,真係會相信人地果個即時付款成功嘅訊息。
而且果個銀行嘅 #最近十筆交易紀錄 都顯示成功轉帳㗎!
所以如果你係賣家,你收到訊息後即時交易。
到走左或寄左貨後,到時真係冇仇報。
😤所以我唔明,如果唔成功帳,點解仲要出個成功轉帳呢?
🏦咁銀行解釋:係成功轉帳左,但對方銀行拒絕左! 又退返俾你。
(😡咁就唔叫成功啦!)
😤咁我又問佢,點解連app嘅 #最近10筆交易紀錄 都冇退帳條數呢?
我如果要存心欺騙,用埋果個交易紀錄俾人,真係冇得唔信㗎woo!
🏦銀行回覆:
#最近10筆交易紀錄 係 #扣帳記錄 所以冇退款紀錄?。
😤嘩! 咁就唔叫交易紀錄啦!
打少2個字意思差好遠woo!
所以在此提提大家收左錢,或過左數都要睇清楚,唔好只睇到個 #交易已被接納 就算喇!
⚠️在此一提,大家熟識銀行運作嘅,會覺得我好低能,但呢個post唔係俾專業人士睇。亦都唔係要指責任何人。不喜勿插,純個人經歷分享⚠️
只係作為真實用家,一個唔識野嘅師奶,自己蠢左犯左錯,想提提身體嘅朋友仔,唔好學我咁蠢姐。
其實好多人都會好似我咁, 做野做到一頭煙、或者個小朋我扭緊計、或者煮緊飯....
甚至乎係網店, 多數出入,寄貨未必係查到數果個...
十萬個理由,小數目真係未必即時去查。 所以提提大家,唔好信晒果個 #付款成功cap圖。
在此同今次嘅商戶道歉🙇🏼♀️ ,條數咁亂唔好意思,我都唔想嘅🙏🏻sorry 🙏🏻
做人講個信字,但銀行嘅字就唔好盡信喇!
#提提身邊嘅朋友
#特別做網上買賣嘅朋友
#唔好掉以輕心
#我認係我唔識野 #我知係我自己蠢
#只希望提醒身邊朋友網上交易真係要小心
#我無啦啦做左騙子都唔知😭
最近10筆交易紀錄 在 Sway房市觀測站 Facebook 的最讚貼文
<內有全文>這是一個輪迴:你信了別人的鬼話、買了一堆看起來漂亮的、只能認賠出售。周而復始年復一年,每年都有新的戲碼上演。前一波一大堆興富發賠錢,這一波買進的,又有誰準備賠錢呢?
我來猜一下:桃園中路、桃園A7、新竹各種小三房、台中北屯、台南九份子(對,我並不看好)、高雄橋頭(超不看好)。
這些都是新興地點,也都各自發展出奇怪的炒房集團跟社團,每個人都意志堅定的在各種媒體上護盤護價,可是,這種買法與意念,跟每一波的投資買盤一樣,都在開發初階段就猛衝,只是這回來不及養,是直接想套殺的那種,而上一波不是套在養,就是直接斷尾殺出。
投資客是笨蛋?不是,他們只是比較敢慘賠殺出,因為這裡跌倒了就跌倒吧,總勝過死拿著不降價而套慘慘的那種。
新莊頭前與副都心的賠價故事,大家都看多了,也漸漸的無感中,隨隨便便都要賠個一千萬(夭壽),可是還是願意賠,因為你再硬ㄠ下去,就只會賠得更多,而這些賠售房其實是很難住的。
有多難住?
就雙人床很難換床單的超卡臥室、冰箱只能放在客廳且離廚房遙遠的怪奇、打開窗戶就看到隔壁鄰居內褲上的線頭、深呼吸就是各種毒空氣、出門會頻頻撞到超大貨運卡車。
以上是有人的狀態,更多的是,喊破喉嚨也沒人聽見的鬼城,當然也是熊貓uber不會送的地點。
你很容易被騙嗎?你以為你買的是低價的起漲點?
還是你買的根本就是很恐怖的房子?
下為新聞:
近年吹起飯店宅投資風,2013年推出的「台北晶麒」,主打低總價收租套房,當時吸引不少人投資,但單統計今年10戶成交紀錄,就出現了9戶賠售。房仲業者甚至直言,沒有賠售的那一戶,說不定是因為花高價裝修,在實價上無法顯露,才出現1戶沒有賠售的狀況,根本是萬華賠售之王。
據實價揭露,「台北晶麒」2019年1~6月共成交10戶,其中9戶通通賠售,賠售金額為4~210萬元不等,最近一筆5月成交紀錄的6樓戶,在今年1月以總價1250萬元購入,持有僅4個月就又以1220萬元售出,賠售30萬元整。
而其中唯一獲利了結的另筆6樓戶交易,則是在2016年11月購入、總價1058萬元,在今年1月再以1140萬元售出,持有近3年賺82萬元,但業者就說了,即使這筆交易看似賺錢,實際上部分成本卻無法從實價揭露,說不定單扣除裝修費用還是賠錢的。
「台北晶麒」基地位於萬華「麒麟大飯店」舊址的康定路上,2013年推出主打飯店式精品住宅,全棟26樓高SC建築、共687戶,規劃16~55坪、1~4房住宅、套房產品,預售開價單坪79~90萬元、總價1100萬起,當時鎖定首購、新婚族群的第一間房為消費客群。
但實際上2013年處於房市多頭時期,許多人仍當作投資產品購入,2014年就因政府祭出豪宅、房地合一稅,房市反轉直下進入盤整,2015年交屋的前一年,591售屋網站出現60餘件拋售資訊,包括「賠本求售」、「自售斷頭」等字樣,但同年仍有投資客勇往直前,傳出大戶狂掃300戶消息。
彙整實價,2016年至今共有728筆交易紀錄,2016年5月第一波交屋單價為60.98~87.52萬元,其中87.52萬元的20樓戶創下該棟樓最高歷史單價;對照今年10筆交易紀錄,卻僅剩54.1~70.6萬元單價,整體價格打了整整85折左右。
屋比趨勢研究中心總監陳傑鳴表示,近年西門町商圈崛起,人潮大量湧入、商機不斷,而萬華區許多房價表現其實相當抗跌,而「台北晶麒」表現相當特殊,賣10間賠9間,堪稱該區房市的「賠售之王」,除了2014年房市反轉、投資客不再進場外,在地買盤當地有流鶯、遊民等治安問題,進場意願不高。
從該案實價歷史揭露數據來看,一手屋主取得單價成本約為7字頭,在2014年跌到5、6字頭後,即使近2年房市復甦仍上漲無力,近半年每坪成交單價約為63.2萬,與當時建商每坪開價75萬相比,仍有16%差距;陳傑鳴分析,該社區大部分屋主都在房價高點時購入,目前普遍仍呈現「套牢」狀態,觀察屋主應對套牢的策略,不是賠錢出脫就是採取以租待變的方式進行處理。
住商不動產企研室經理徐佳馨指出,彙整實價揭露租金部分,該社區成屋至今共有68筆紀錄,每坪單價落在909~2145元不等,拆算其投報率約落在2.2%~3%不等,以目前市區投報行情勘屬正常,而其單價差別出自於樓層、面河與否,其中西側面康定路及北側面康定路101巷的20~26樓皆有河景,單價就會較高。
不過近年西區復甦、西門町商圈觀光人潮大量回流,傳聞該社區有部分屋主改經營「日租套房」大賺觀光財,徐佳馨提醒,日租套房投報率雖高於一般月租套房,但在管理上成本相對較高,加上有適法性問題,建議屋主還是尋求合法管道經營才是上策。
「台北晶麒」前身「麒麟大飯店」在1979年風光開幕,為台灣6、70年代港人、星馬旅遊來台最常入住飯店,經營多年後因服務到位,也成為日人來台最愛口袋名單之一。
2003年遭SARS襲擊,被迫歇業4個月多,挺過全球聞之色變的傳染病干擾,營業30年後卻不敵飯店老舊、旅遊業不景氣,被迫歇業120名員工再不捨也遭一一遣散,2009年2月11日正式歇業走入歷史,2011年由興富發以52.15億元,買下其1051坪基地,用以改建飯店式住宅。(陳韋帆/台北報導)
最近10筆交易紀錄 在 #最近10筆交易紀錄 - Explore | Facebook 的推薦與評價
當你收到cap圖#交易已接納都可能係假嘅! 有時我自己好粗心大意,人地話入左數,cap圖轉帳成功訊息就當真。特別啲小數目,幾百蚊唔會下下即時去查! 如果好似我咁就出事喇 ... ... <看更多>