看板 DigiCurrency 關於我們 聯絡資訊
https://github.com/ethereum/wiki/wiki/Design-Rationale#accounts-and-not-utxos Ethereum 的 Design Rationale 列舉了 UTXO 和 account 的優劣 並解釋為何 Ethereum 採用 account model 不過他下面這一句 if people really do care about privacy then mixers and coinjoin can be built via signed-data-packet protocols inside of contracts. 我沒有很懂耶 mixer 和 coinjoin 應該是指混幣沒錯吧 但混幣不是只有 UTXO model 的區塊鏈才有的觀念嗎? account model 要怎麼混幣 並且為何能夠增強隱私呢? 附個混幣解釋 字面意思就是 一群想要傳錢的人 都先把自己的錢交出來 全部混一混然後才發送到各自的目標地址 讓金流以及地址背後的持有者更難被追蹤 實際做法就是 一群想要傳錢的人湊在一起 人數可多可少 可以只有兩個人 也可以數不清的人 當然人越多隱私效果越好 這些人共同創建一個交易 然後各自把想要傳的錢貢獻到交易input 並且也開出各自的目標地址放到交易output 大家都做好各自的input/output之後交易就可以送出了 由於每個input都要用各自的私鑰來簽過整個交易 所以並不會有錢被偷的疑慮 混幣這種行為 打破了「一個交易裡的所有input屬於同一個人」的通則 使得地址更難被關聯起來 https://en.bitcoin.it/wiki/CoinJoin ========更新======== https://blog.ethereum.org/2016/01/15/privacy-on-the-blockchain/ 看到 Vitalik 寫的這篇 有講 Ethereum 上的 CoinJoin 協定怎麼做 大概弄懂了 總之差不多就是: 所有委託人的目標地址和要轉的金額都先寫進合約 但不記錄目標地址跟委託人的對應關係 確認無誤的委託人就會轉錢進去合約裡 發現錯誤的委託人就不會轉錢進去 錢到齊之後合約就把錢分配到目標地址 沒到齊就退款 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.232.231 ※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1529916033.A.45A.html
darkdixen: 寫個會mixer的智能合約 收工 06/25 16:58
foolstack: 搜尋Ethereum Mixer就能找到相關solidity 06/25 17:30
我覺得應該可以白話解釋耶 用不著直接去K源碼實作
qxxrbull: 還是好奇跟DASH的有什麼差別? 06/25 17:49
混幣是一種行為啦 不是某種幣
tcn1john: 全部交到一個帳號 然後分別轉帳給收錢那方這樣嗎? 06/25 18:28
我還沒看前幾樓說的合約源碼 但我猜那些合約應該就是實做成你說的這種方式 可是這種方式應該沒用 因為你請中介帳戶代替你轉帳到目標帳戶 終究要把你的目標帳戶告訴中介帳戶 如果中介帳戶是寫成合約的形式 那麼合約一定要記錄你指定的目標帳戶 使得大家都可以看到你指定了哪個目標帳戶 就失去意義了 如果中介帳戶是人在操作 那變成你把錢轉給中介帳戶 再私下告訴他目標地址委託他代轉(目標地址不上鏈) 但就要信任這個人不會拿了你的錢就閃人 無法免除對第三方的信任
tcn1john: Coinjoin應該有一樣的問題 誰來負責收集需求產生轉帳 06/25 18:46
比特幣用 coinjoin 的情況 是所有參與該次混幣的人們 都先把各自的input/output先列進混幣交易裡 等所有人都列完之後 才用各自的私鑰去簽這個交易 所以不會有騙錢的問題 或許這些參與者在當下可以看出哪些input/output是由同一個人寫上去的 但之後的人光看這個混幣交易根本看不出來 所以比特幣用 coinjoin 的確有達成更好的隱私 但以太坊的情況 則是要特地生一個交易來委託中介帳戶代轉多少錢給目標帳戶 之後的人光看這個交易就可以查到 你委託中介帳戶 轉多少錢 到哪個目標帳戶 所以就沒什麼意義
darkdixen: 白話解釋就是你可以用solidity寫出coinjoin功能 06/25 19:01
darkdixen: 是說在zksnark加入以太後也不用自己寫coinjoin就是惹 06/25 19:03
有了zksnark的話我就沒什麼疑問 但我不認為目前的以太坊合約可以實作出 不用信任第三方又達到隱私的coinjoin 我覺得是account model先天的限制 ========回覆更新======== 錯ㄌ 還真的可以
qxxrbull: 我的意思就是說跟DASH交給master node做混幣來達成匿蹤 06/25 19:24
qxxrbull: 交易的差別 06/25 19:24
拍謝誤會 那可能意思差不多吧 不過混幣這個動作按 Bitcoin Wiki 的解釋 應該是可以不需要第三方的吧? 為啥 DASH 需要有 master node
tcn1john: coinjoin是第三方產生轉帳資訊的不是嗎?以太寫個第三方 06/25 19:26
tcn1john: 負責又不能捲款的合約就能達到一樣效果,問題是有沒有辦 06/25 19:26
tcn1john: 法達到無人負責的coinjoin 06/25 19:26
看完 Bitcoin Wiki 解釋 CoinJoin 我的理解是不用第三方耶 只要所有參與者之間互通有無就夠了 每個參與者都先廣播自己要寫上的 input/output 等列表湊齊之後 每個參與者再廣播自己的簽名 這樣大家做出來的交易就一致 不會有問題 當然這是 UTXO model 才可以做到
tcn1john: 這樣參與者都知道對方的output了吧? 06/25 19:41
沒錯 但是只有參與者知道而已 哪些input/output是同一個人的 事後光看交易是看不出來的 鏈上看不出來就是沒有證據 ========回覆更新======== 剛看了一下 Bitcoin Wiki CoinJoin 那篇的 FAQ 把實作搞複雜一點 可以做到讓參與者也不清楚input/output是誰的
tcn1john: 以太的話,應該可以建立一個會退錢的智能合約,錢収滿 06/25 20:53
tcn1john: 轉入指定地址,鍊上也看不出來 06/25 20:53
tcn1john: faq提到透過第三方的coinjoin應該是實用性比較高的做法 06/25 20:56
你的指定地址 指的是委託人指定的目標地址嗎 合約有記錄目標地址的話 大家也都知道是委託人指定的吧
tcn1john: 所有人目標地址都放進合約這樣...到齊後一起轉 06/25 21:15
鏈上看的出委託人跟目標地址的對應關係 -> 大家都看的到 沒意義 鏈上看不出對應關係 -> 合約的操作者一定有辦法假造目標地址 必須相信他是好人 想來想去還是覺得兩條路都行不通吧 ========回覆更新======== 拍謝 好像還真的可以 所有委託人的目標地址和要轉的金額都先寫進合約 但不記錄目標地址跟委託人的對應關係 確認無誤的委託人就會轉錢進去合約裡 發現錯誤的委託人就不會轉錢進去 錢到齊之後合約就把錢分配到目標地址 沒到齊就退款 這方法應該也是不需要信任第三方
Ayukawayen: 以太智能合約混幣應該做得到,套無金額遮罩的XMR就差 06/25 21:47
Ayukawayen: 不多了,付款者們把資金切成多筆相同金額的輸出,每筆 06/25 21:47
Ayukawayen: 都用隱匿性地址當公鑰,收款者拿自己私鑰算隱匿性私鑰 06/25 21:47
Ayukawayen: ,用環簽名提款,其他人不會曉得環簽名用的是哪把私鑰 06/25 21:48
Ayukawayen: 無法將提款者和付款者連結,然後用金鑰映像防多重提款 06/25 21:48
所以這個是有用到 zero knowledge proof 或是 ring signature 之類的技術嗎 拍謝對這個不熟ˊˋ 如果是的話那我接受啦 但我好奇的是沒有這兩種技術的情況下做的到嗎 像比特幣就可以
darkdixen: https://github.com/barryWhiteHat/miximus 06/25 22:00
darkdixen: 已經上Rinkeby 大家可以回家惹 06/25 22:01
欸~不行降啊 我是想釐清盲點 直接丟code太硬了
Ayukawayen: 想了一下 環簽放的地方不同 所以或許不能說是套XMR吧 06/25 22:02
darkdixen: 就想成以太1.0能用智能合約模擬比特幣的混幣 在加入zk 06/25 22:15
darkdixen: 功能後也不用模擬惹 就直接走zk 大guy4john 06/25 22:15
Ayukawayen: XMR有用ring signature,要看XMR技術可以看這兩篇: 06/25 23:06
3Q
justben: 這樣手續費會變貴嗎? XDD 06/25 23:37
其實我也覺得以太坊 coinjoin 這樣做的話的確會花比較多錢 畢竟這種用合約代轉到不同目標地址的機制 要多好幾道交易 跑code也要花gas 常常做感覺很花錢 而比特幣的 coinjoin 只要大家分攤一個超大交易的手續費就好了 跟平常自己發交易花的手續費應該一樣多 所以做幾次都沒差
qxxrbull: 說真的,沒有全網強制做匿蹤,再強的Zn-Shark還是一樣會 06/25 23:57
qxxrbull: 有可能因為非匿蹤交易而被關連到 06/25 23:57
qxxrbull: Zn-Snark算是目前最強的匿蹤方式,先不討論可能自己印鈔 06/25 23:59
qxxrbull: 而不被抓包的前提下 06/25 23:59
Zn-Shark...是梗ㄇ ??? @_@ ???
qxxrbull: 打錯喇 zn-snark 06/26 00:14
※ 編輯: kugwa (140.112.232.231), 06/26/2018 01:54:09
DarkerDuck: 491字 * 7星 = 3437 PCH 07/12 21:05
DarkerDuck: https://tinyurl.com/yysvh9t6 07/12 21:26