再聊一下門羅幣Monero (XMR) 之前因為研究需要到Monero的技術文件網頁(*)讀了Cryptonote版的白皮書 ( https://bytecoin.org/old/whitepaper.pdf ) (*: https://www.getmonero.org/resources/research-lab/ ) 看了隱匿性地址、金額遮罩、環簽名、RingCT,到這裡都看得懂。後來Monero出了防彈協定(Bulletproof)就看不懂了。 XMR基本上也是一個TXO (Transaction output)系統 (一般都會講BTC是UTXO系統,為什麼XMR沒有U呢,這個等會再講) 它的交易特性是,對沒有參與交易的人(包含礦工)來說: 不知道誰收到錢 不知道誰送出錢 不知道發送了多少錢,但保證送出的錢和收到的錢是等量的。 不知道哪個交易輸出被花掉了,但保證同一條鏈上(*)一筆錢不會被花費兩次以上。 (*:也就是不考慮reorg和uncle block) ( 最後一項就是為什麼我現在都說XMR是TXO系統,因為分不出來哪個TXO是unspent(未花費的)。 ) 概念上來說,一個典型的BTC交易例子看起來會像這樣子: { 花費 一個甲持有的$100硬幣 + 一個甲持有的$60硬幣;產生 一個乙持有的$120硬幣 + 一個丙持有的$40硬幣。 } 如果加了隱匿性地址,外部看起來會變成這樣子: { 花費 一個%R!*Fs持有的$100硬幣 + 一個V^cfF1持有的$60硬幣;產生 一個X*a2%c持有的$120硬幣 + 一個A!gj0E持有的$40硬幣。 } 再加上金額遮罩會變成: { 花費 一個%R!*Fs持有的$(@!:>)硬幣 + 一個V^cfF1持有的$(!>_@)硬幣;產生 一個X*a2%c持有的$(@'*~)硬幣 + 一個A!gj0E持有的$(!|<*)硬幣。 } 再加上環簽名會變成: { 由 [ 一個*HBh2a持有的$(<]!*)硬幣 + 一個Gvb@8j持有的$(%!~')硬幣; 一個%R!*Fs持有的$(@!:>)硬幣 + 一個V^cfF1持有的$(!>_@)硬幣; 一個3F&pz6持有的$(:*^[)硬幣 + 一個P1L*sX持有的$(>~'%)硬幣; ... 一個Ea8@k7持有的$(~^'&)硬幣 + 一個z9O%3n持有的$("<&!)硬幣; ] 之中花費一組;產生 一個X*a2%c持有的$(@'*~)硬幣 + 一個A!gj0E持有的$(!|<*)硬幣。 } (RingCT是把環簽名和金額遮罩做整合) 最後就變成了前面提到的 不知道誰收到錢 不知道誰送出錢 不知道發送了多少錢 不知道哪個交易輸出被花掉了 但是不會有錢憑空跑出來,可以用數學證明。
Log in to join in Reading is open to everyone. Replying needs an account.
7 comments
推整理簡介! 在這個情況下,節點、伺服器端程式似乎具有很大的話語權。 懂得人大概沒問題,不懂的人就要霧裡看花吧。 相對之下比特幣多少算是老嫗能解吧 XD 跟現金比起來,XMR 似乎又比現金更現金了。 現金支付還是會漏透一些個人資訊,XMR 則幾乎 traceless,接受度門檻可能太高了,對個體或政府來說都是。
就 It just works. BTC雖然概念上相對簡單,實作起來絕大多數的人還是要相信錢包,因為包含編碼、通訊等等方面,有能力從底到頂完整掌握所有錢包所需技術的人少之又少。
可是節點方面扣掉沒升級 SegWit 的成分,要驗證 UTXO 是很簡單的。 錢包如果只是要做最簡單的收發動作而不顧慮其他其實也不算太複雜我覺得。不過你是對的,使用者很多時候還是想要一鍵搞定。 但一個只有相對少數人能夠理解驗證的系統跟一個相對多數人都能理解的系統比起來,後者在推行上可能還是有較大的優勢。
節點成本是下一篇的梗 XD
好的 期待~~
推說明,覺得好理解了點XD
讓我有看懂的感覺!!