--- Log opened Sat Jun 18 00:00:33 2016 00:29 -!- Jeremy_Rand_2 [~user@ip68-97-35-223.ok.ok.cox.net] has joined #bitcoin-wizards 00:30 -!- Jeremy_Rand_2 [~user@ip68-97-35-223.ok.ok.cox.net] has quit [Client Quit] 00:34 -!- bramc [634b58ce@gateway/web/freenode/ip.99.75.88.206] has quit [Quit: Page closed] 00:41 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has joined #bitcoin-wizards 00:44 -!- Guyver2 [~Guyver2@guyver2.xs4all.nl] has joined #bitcoin-wizards 00:58 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has quit [Ping timeout: 250 seconds] 01:00 -!- nonaTure [~nonaTure@199.15.128.146] has quit [Ping timeout: 240 seconds] 01:02 -!- nonaTure [~nonaTure@199.15.128.146] has joined #bitcoin-wizards 01:04 -!- hashtag_ [~hashtagg_@cpe-174-97-254-80.ma.res.rr.com] has quit [Ping timeout: 244 seconds] 01:19 -!- slackircbridge1 [~slackircb@45.55.41.36] has quit [Remote host closed the connection] 01:20 -!- slackircbridge [~slackircb@45.55.41.36] has joined #bitcoin-wizards 01:22 -!- Ylbam [uid99779@gateway/web/irccloud.com/x-ipiqfnqcopqthbpy] has joined #bitcoin-wizards 01:22 -!- skang404 [~user@27.109.14.34] has joined #bitcoin-wizards 01:27 -!- dEBRUYNE [~dEBRUYNE@unaffiliated/debruyne] has joined #bitcoin-wizards 01:47 -!- priidu [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 01:55 -!- Tiraspol [~Tiraspol3@unaffiliated/tiraspol] has quit [Ping timeout: 252 seconds] 01:56 -!- Tiraspol [~Tiraspol3@unaffiliated/tiraspol] has joined #bitcoin-wizards 02:01 -!- Tiraspol [~Tiraspol3@unaffiliated/tiraspol] has quit [Ping timeout: 252 seconds] 02:01 -!- Tiraspol [~Tiraspol3@unaffiliated/tiraspol] has joined #bitcoin-wizards 02:11 -!- Guyver2 [~Guyver2@guyver2.xs4all.nl] has quit [Quit: :)] 02:26 -!- Emcy [~MC@unaffiliated/mc1984] has joined #bitcoin-wizards 02:28 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has joined #bitcoin-wizards 02:38 -!- ManfredMacx [~hyperion@93-136-119-22.adsl.net.t-com.hr] has joined #bitcoin-wizards 02:54 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has quit [Remote host closed the connection] 03:48 -!- laurentmt [~Thunderbi@213-245-86-6.rev.numericable.fr] has joined #bitcoin-wizards 03:48 -!- laurentmt [~Thunderbi@213-245-86-6.rev.numericable.fr] has quit [Client Quit] 03:55 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has joined #bitcoin-wizards 04:00 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has quit [Ping timeout: 276 seconds] 04:04 -!- e4xit_ [~e4xit@cpc92302-cmbg19-2-0-cust1369.5-4.cable.virginm.net] has joined #bitcoin-wizards 04:04 -!- e4xit [~e4xit@cpc92302-cmbg19-2-0-cust1369.5-4.cable.virginm.net] has quit [Ping timeout: 244 seconds] 04:04 -!- e4xit_ is now known as e4xit 04:10 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has quit [Ping timeout: 246 seconds] 04:11 -!- Ylbam [uid99779@gateway/web/irccloud.com/x-ipiqfnqcopqthbpy] has quit [Quit: Connection closed for inactivity] 04:18 -!- Davasny [~quassel@78-11-193-195.static.ip.netia.com.pl] has joined #bitcoin-wizards 04:54 -!- pro [~pro@unaffiliated/pro] has joined #bitcoin-wizards 04:56 -!- Tiraspol [~Tiraspol3@unaffiliated/tiraspol] has quit [Ping timeout: 250 seconds] 04:58 -!- Tiraspol [~Tiraspol3@c-98-212-187-224.hsd1.il.comcast.net] has joined #bitcoin-wizards 04:58 -!- Tiraspol [~Tiraspol3@c-98-212-187-224.hsd1.il.comcast.net] has quit [Changing host] 04:58 -!- Tiraspol [~Tiraspol3@unaffiliated/tiraspol] has joined #bitcoin-wizards 05:00 -!- nubbins` [~leel@unaffiliated/nubbins] has joined #bitcoin-wizards 05:12 -!- nubbins` [~leel@unaffiliated/nubbins] has quit [Quit: .] 05:14 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has joined #bitcoin-wizards 05:44 -!- blackwraith [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 05:47 -!- priidu [~priidu@unaffiliated/priidu] has quit [Ping timeout: 260 seconds] 05:53 -!- dnaleor [~dnaleor@78-23-74-78.access.telenet.be] has quit [Quit: Leaving] 05:56 -!- dnaleor [~dnaleor@78-23-74-78.access.telenet.be] has joined #bitcoin-wizards 05:57 -!- Noldorin [~noldorin@unaffiliated/noldorin] has joined #bitcoin-wizards 06:15 -!- Ylbam [uid99779@gateway/web/irccloud.com/x-ncsrgezbczyqobiu] has joined #bitcoin-wizards 06:24 -!- arubi [~ese168@unaffiliated/arubi] has quit [Read error: Connection reset by peer] 06:34 -!- skang404 [~user@27.109.14.34] has quit [Remote host closed the connection] 06:37 -!- arubi [~ese168@unaffiliated/arubi] has joined #bitcoin-wizards 06:37 -!- gielbier [~giel____@095-096-096-058.static.chello.nl] has quit [Changing host] 06:37 -!- gielbier [~giel____@unaffiliated/gielbier] has joined #bitcoin-wizards 06:39 -!- SyncYourDogmas [~James@unaffiliated/syncyourdogmas] has quit [Quit: Leaving] 07:06 -!- jl2012 [uid133844@gateway/web/irccloud.com/x-ydfelyrcdvnymbvl] has quit [] 07:07 -!- jl2012 [uid133844@gateway/web/irccloud.com/x-wretvgrwcmocctwx] has joined #bitcoin-wizards 07:20 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has joined #bitcoin-wizards 07:31 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has quit [Remote host closed the connection] 07:37 -!- Guest10680 is now known as [Derek] 07:37 -!- [Derek] [~derek@199.195.250.122] has quit [Changing host] 07:37 -!- [Derek] [~derek@unaffiliated/derek/x-8562683] has joined #bitcoin-wizards 07:43 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has joined #bitcoin-wizards 07:52 -!- blackwraith [~priidu@unaffiliated/priidu] has quit [Ping timeout: 260 seconds] 07:57 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has quit [Ping timeout: 246 seconds] 08:01 -!- MaxSan_1 [~one@185.103.96.139] has joined #bitcoin-wizards 08:02 -!- MaxSan_ [~one@185.103.96.135] has quit [Ping timeout: 276 seconds] 08:07 -!- droark [~droark@c-24-22-36-12.hsd1.or.comcast.net] has quit [Quit: Later.] 08:25 -!- nonaTure [~nonaTure@199.15.128.146] has quit [Ping timeout: 250 seconds] 08:28 -!- Noldorin [~noldorin@unaffiliated/noldorin] has quit [Ping timeout: 258 seconds] 08:37 -!- jannes [~jannes@178.132.211.90] has joined #bitcoin-wizards 08:51 -!- NewLiberty_ [~NewLibert@2602:306:330b:2db0:d092:e67:4ddf:e7d8] has joined #bitcoin-wizards 08:52 -!- NewLiberty_ is now known as NewLiberty 09:30 < bsm1175321> @bramc I was explaining to my CEO yesterday your UTXO set commitment plans, and why speed was so critical. It comes down to the fact that a UTXO commitment is created/verified in the *critical*path*. (At block validation time) 09:31 < bsm1175321> The fact of the matter is that NO speed is going to be "fast enough". 09:31 < bsm1175321> The Satoshi construction has a race condition (or equivalently assumes zero latency -- including block verification time), that needs to be removed from the critical path. 09:32 < bsm1175321> That's exactly what braids do -- since blocks can have multiple parents, the verification is removed from the critical path. Miners should mine on the previous block until they're finished verifying an incoming block, and then they should name them BOTH as parents. 09:33 < bsm1175321> This removes the race condition, and cuts off SPV mining and selfish mining at its knees. 09:52 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has joined #bitcoin-wizards 09:53 -!- wizkid057 [~wk@unaffiliated/wizkid057] has quit [Ping timeout: 276 seconds] 09:54 -!- dnaleor [~dnaleor@78-23-74-78.access.telenet.be] has quit [Ping timeout: 276 seconds] 09:54 -!- wizkid057 [~wk@unaffiliated/wizkid057] has joined #bitcoin-wizards 10:07 -!- c0rw1n_ [~c0rw1n@124.213-241-81.adsl-dyn.isp.belgacom.be] has joined #bitcoin-wizards 10:09 -!- c0rw1n_ [~c0rw1n@124.213-241-81.adsl-dyn.isp.belgacom.be] has quit [Remote host closed the connection] 10:21 -!- sabayonuser_ [~sabayonus@124.213-241-81.adsl-dyn.isp.belgacom.be] has joined #bitcoin-wizards 10:21 -!- sabayonuser_ is now known as c0rw1n- 10:22 -!- r0ach [~r0ach@107-217-214-192.lightspeed.jcvlfl.sbcglobal.net] has quit [] 10:30 -!- epscy_ is now known as epscy 10:41 -!- c0rw1n- [~sabayonus@124.213-241-81.adsl-dyn.isp.belgacom.be] has quit [Quit: Konversation terminated!] 10:41 -!- c0rw1n- [~c0rw1n@124.213-241-81.adsl-dyn.isp.belgacom.be] has joined #bitcoin-wizards 10:42 -!- King_Rex [~King_Rex@unaffiliated/king-rex/x-3258444] has joined #bitcoin-wizards 10:51 -!- r0ach [~r0ach@107-217-214-192.lightspeed.jcvlfl.sbcglobal.net] has joined #bitcoin-wizards 10:52 -!- gielbier [~giel____@unaffiliated/gielbier] has quit [Ping timeout: 260 seconds] 11:00 -!- nonaTure [~nonaTure@199.15.128.146] has joined #bitcoin-wizards 11:02 -!- priidu [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 11:05 -!- PERSIAN [~PERSIAN@MTRLPQ4709W-LP130-05-1279284515.dsl.bell.ca] has joined #bitcoin-wizards 11:14 -!- priidu [~priidu@unaffiliated/priidu] has quit [Ping timeout: 240 seconds] 11:15 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has quit [Ping timeout: 252 seconds] 11:16 -!- ManfredMacx [~hyperion@93-136-119-22.adsl.net.t-com.hr] has quit [Quit: Leaving] 11:18 -!- priidu [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 11:19 -!- priidu [~priidu@unaffiliated/priidu] has quit [Max SendQ exceeded] 11:21 -!- priidu [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 11:33 -!- nabu [~nabu@192.40.88.13] has quit [Quit: Konversation terminated!] 11:52 -!- davec_ [~davec@cpe-24-243-251-52.hot.res.rr.com] has joined #bitcoin-wizards 11:53 -!- nonaTure [~nonaTure@199.15.128.146] has quit [Ping timeout: 272 seconds] 12:20 -!- Aranjedeath [~Aranjedea@unaffiliated/aranjedeath] has joined #bitcoin-wizards 12:21 -!- kristofferR [~kristoffe@37.37-191-175.fiber.lynet.no] has joined #bitcoin-wizards 12:21 -!- dEBRUYNE [~dEBRUYNE@unaffiliated/debruyne] has quit [Quit: Leaving] 12:30 -!- kristofferR [~kristoffe@37.37-191-175.fiber.lynet.no] has quit [Quit: Textual IRC Client: www.textualapp.com] 12:30 -!- Guyver2 [~Guyver2@guyver2.xs4all.nl] has joined #bitcoin-wizards 12:33 -!- jannes [~jannes@178.132.211.90] has quit [Quit: Leaving] 12:45 -!- MaxSan_1 [~one@185.103.96.139] has quit [Quit: Leaving.] 12:49 -!- hashtag_ [~hashtagg_@cpe-174-97-254-80.ma.res.rr.com] has joined #bitcoin-wizards 13:01 -!- nonaTure [~nonaTure@199.15.128.146] has joined #bitcoin-wizards 13:06 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has quit [Remote host closed the connection] 13:06 -!- nabu [~nabu@192.40.88.13] has joined #bitcoin-wizards 13:13 -!- nabu [~nabu@192.40.88.13] has quit [Ping timeout: 250 seconds] 13:15 -!- nabu [~nabu@gateway/vpn/privateinternetaccess/nabu] has joined #bitcoin-wizards 13:25 -!- alpalp [~allen@unaffiliated/alpalp] has joined #bitcoin-wizards 13:32 < maaku> bsm1175321: simple solution: commit to last block's utxoset 13:34 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has joined #bitcoin-wizards 13:35 -!- N0S4A2 [~weechat@216-243-38-141.users.condointernet.net] has joined #bitcoin-wizards 13:50 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Remote host closed the connection] 14:05 -!- belcher [~user@unaffiliated/belcher] has joined #bitcoin-wizards 14:13 -!- JackH [~Jack@79-73-186-51.dynamic.dsl.as9105.com] has quit [Ping timeout: 244 seconds] 14:13 < kanzure> maaku: besides an overview of efforts re: formal verification of bitcoin script, libconsensus and 'smart signatures', what else is missing or what efforts are underway 14:15 -!- frankenmint [~frankenmi@67-5-211-132.ptld.qwest.net] has quit [Remote host closed the connection] 14:19 -!- PaulCape_ [~PaulCapes@204.28.124.82] has quit [Quit: .] 14:20 -!- PaulCapestany [~PaulCapes@204.28.124.82] has joined #bitcoin-wizards 14:22 -!- rasengan [rasengan@pdpc/corporate-sponsor/privateinternetaccess.com/rasengan] has quit [Quit: WeeChat 0.4.2] 14:22 < bsm1175321> maaku: That implies that I've verified the last block's UTXO set. There is a time lag in the verification, which is exactly the race condition I'm talking about. 14:23 < bsm1175321> I might have created a new block while verifiying the last block's UTXO set. That's the problem. 14:23 < bsm1175321> No one should commit, cryptographically, to something they haven't verified. 14:35 -!- bramc [634b58ce@gateway/web/freenode/ip.99.75.88.206] has joined #bitcoin-wizards 14:35 -!- bitcoin-wizards1 [c03a8ea3@gateway/web/freenode/ip.192.58.142.163] has joined #bitcoin-wizards 14:37 < bramc> bsm117532: I understand that braids do in principle get rid of this problem, but I'm still not sure exactly what their tradeoffs are, and they're a bit of a pipe dream for Bitcoin today, where utxo commitments are something which can be added immediately 14:37 < maaku> braids are magic pixie dust and on my /ignore list until bsm1175321 writes them up in detail 14:38 < bramc> maaku: I got far enough into understanding them at one point that I realized that you can't go halfway - siblings-only for example is worse than the way bitcoin works today 14:38 < bramc> Although that's all swapped out of my brain right now. 14:38 < bramc> The other nice thing about merkle sets is that they're a useful toy for all kinds of stuff, not just Bitcoin 14:40 < gmaxwell> still haven't seen how any of these off tip techniques don't greatly magnify selfish mining. 14:42 -!- bitcoin-wizards1 [c03a8ea3@gateway/web/freenode/ip.192.58.142.163] has quit [Ping timeout: 250 seconds] 14:42 < bsm1175321> bramc: *delayed* utxo set commitments can be added. Or prompt UTXO set commitments, worsening the selfish mining problem. 14:43 < bsm1175321> gmaxwell: The larger the delta-t in verifying a block, the larger the incentive to SPV mine or selfish mine. 14:44 < bramc> bsm1175321: If the big utxo set is delayed a few blocks and each block contains roots of just the things added and removed in that block, then proofs of inclusion and exclusion are possible and the latency problem isn't made any worse. 14:44 < gmaxwell> bsm1175321: verifying can be removed entirely out of the critical path. 14:44 < bsm1175321> maaku: see my talk this coming Friday at the On Chain Scaling conference. Still not sure how to get this into Bitcoin. But it solves the underlying problem. 14:44 < gmaxwell> this is what weak blocks do. 14:45 < bramc> weak blocks are also a good idea, but different approaches to them have different tradeoffs 14:45 < katu_> bsm1175321: btw, have you formalized the chain rules state machine yet? 14:45 < maaku> bsm1175321: will it be recorded? 14:45 < bsm1175321> gmaxwell: How do weak blocks remove verification from the critical path? How do I know I'm not mining on an invalid parent? 14:45 < katu_> on back of envelope, plain bitcoin is about 5 branches, braids is at least 20. 14:45 < katu_> so would like to see it 14:46 < bsm1175321> katu_: Yes, consensus rules will be stated. Will be happy to state them now if desired, though the context will make it more comprehensible, and work to be done in the next few days... 14:46 < bramc> There can always be blocks which don't use a weak block. Unless you require weak blocks, which creates more selfish mining problems. 14:46 < bsm1175321> katu_: 20? Can you elaborate? 14:46 < bsm1175321> maaku: Yes it will be recorded. 14:47 < katu_> bsm1175321: i'm basically counting all the branches a code has to make. its really difficult to reason about it completely 14:47 < katu_> as it is simply too many variables for me 14:47 < bsm1175321> "a code has to make" -- what does that mean? 14:47 < gmaxwell> bsm1175321: because with weak blocks, the whole consensus state is announced and verified long before the winning solution. 14:48 < bramc> katu_: Not sure what you mean about code branches. But then I write all my stuff extremely idempotently which tends to mask that information. 14:48 < gmaxwell> bsm1175321: the only thing finding a block does in weak blocks is announce a winning nonce (and coinbase txn) for an already announced state change. 14:48 < gmaxwell> so when the solution shows up you've already validated the state its tied to. 14:49 < bsm1175321> gmaxwell: My understanding is that weak blocks is "headers first" -- and ignores the block contents. Data corruption is real, and a block might be orphaned anyway despite having a valid PoW, no? 14:49 < bramc> gmaxwell: But then someone can selfishly keep a weak block for themselves, unless you give them incentive to announce it... at which point you're reinventing braids 14:49 < gmaxwell> bsm1175321: no thats incorrect. 14:49 < gmaxwell> (I dunno who is presenting this misinformation but they should be stabbed really hard with and exploding knife) 14:49 < katu_> bsm1175321, bramch - the number of various edge cases i can come up with. bitcoin is quite intuitive in that regard, but even that took me a while how get oriented myself in reorg code. 14:49 < gmaxwell> bramc: thats now how it works either. ugh 14:49 < bsm1175321> There are so many iterations of weak blocks...I can't keep track of them all, please elaborate gmaxwell. 14:50 < gmaxwell> No there aren't. 14:50 < kanzure> https://people.xiph.org/~greg/weakblocks.txt 14:50 < bramc> gmaxwell: Oh wait you're right, as long as weak blocks aren't required then there isn't any selfish benefit to withholding weak blocks because you're hurting yourself as much as everybody else. 14:52 < bramc> In my head 'weak blocks' is a constellation of different closely related ideas, not sure which of them have gained traction. 14:52 < gmaxwell> bramc: yes, but it's not mining without validating! 14:52 < gmaxwell> Even that is too much detail. Participants voluntarily announce sub difficuty shares (subject to a propagation rule) that attempt to solve blocks which also commit to a superset block that they'd rather be solving. The 'block' isn't transmitted at that time (it's irrelveant, as it failed to win) but the superset they'd rather mine ( using efficient block transmission). 14:53 < gmaxwell> once that superset is widely propagated (and validated), miners switch their actual mining attempts to be exactly that. (or one of several such proposed tips, by themselves or others). 14:53 < bsm1175321> If there exists any asymmetry in how miners get rewarded, it will be exploited. Clearly orphan blocks are an asymmetry. Uncles in Ethereum are an asymmetry. Weak blocks also preserve an asymmetry. Someone loses, and it will be exploited. 14:53 < bramc> There is of course nothing wrong with both making things as fast as possible without weak blocks and then adding weak blocks later. 14:53 < gmaxwell> There is no asymmetry here. 14:54 * bsm1175321 ponders... 14:54 < gmaxwell> bsm1175321: please don't speak like that about ideas you just showed you completely misunderstand. 14:54 < gmaxwell> bramc: sure, and thats also been our effort in bitcoin, to optimize the existing system first. 14:54 < bsm1175321> gmaxwell: Doesn't this asymmetry exist, 11 blocks back? 14:54 < bramc> gmaxwell: In your specific proposal is there any change to blocks at all? In its weakest form weak blocks is simply a form of compression 14:55 < kanzure> re efficient block relay, https://people.xiph.org/~greg/efficient.block.xfer.txt https://bitcoincore.org/en/2016/06/07/compact-blocks-faq/ 14:55 < gmaxwell> bsm1175321: no, any miner can attmept to mine any weakblock they know about. So even if their own prefered weak blocks are not (yet) well propagated, they simply attempt to mine someone elses. 14:56 < bramc> More stuff I need to read. I'm a little too tired today to parse through all of this, especially because I need to read through the MMR stuff. I still don't understand how proofs of unspent status are supposed to work there. 14:56 < gmaxwell> This means that large miners would enjoy a small boost in voting power, but not income; to there is no feedback loop there. 14:57 < bsm1175321> gmaxwell: Isn't that just a rearrangement of asymmetry? f(asymmetry) != symmetry. 14:58 < gmaxwell> (the small boost because they have lots of hashpower and many spend an inconseqeuntial more time mining on their own weakblock suggestions, but this doesn't increase their income over their fair share.) 14:59 < gmaxwell> bsm1175321: You might as well be saying it has weeblax for all that means; you can point to any difference you want and say there is asymetry, the centeralization pressure comes from disproportional increases in income. 15:00 < gmaxwell> Which weak blocks eliminate, by taking verification out of the critical path, and making it so that income is not increased for the 'most quickly verified party'. 15:00 < bsm1175321> gmaxwell: I agree. The only solution is to symmetrize, to prevent centralization pressure. 15:00 < bramc> gmaxwell: There are two different regimes weak blocks need to think about: (1) mempools are mostly empty, blocks mostly drain in out, and (2) the mempool is always completely full, blocks pull out the highest value transactions 15:00 < bsm1175321> Miners should not know or care. 15:00 < gmaxwell> I don't think (1) rationally exists. Why wouldn't someone just run a script to backup their computer into the chain if there was 'free' capacity? 15:01 < bsm1175321> gmaxwell: I look forward to debating weak blocks vs. braids in the coming weeks. I suspect we will converge on the same solution. 15:01 < bramc> (1) is not far from what we have today, with people freaking out when blocks actually get full 15:01 -!- Noldorin [~noldorin@unaffiliated/noldorin] has joined #bitcoin-wizards 15:01 < bramc> Although yes, (2) is the way things 'should' be, and which I've been a strong advocate for. 15:02 < gmaxwell> bramc: nah, don't believe lies that get sent to the press. 15:02 < gmaxwell> Current mempool status in bitcoins is 150mb of transaction data, and has been constantly that almost constantly since the limits were introduced. 15:03 < bsm1175321> Let's separate economic expenditure (hash value) vs. validation. It's not the same thing. 15:03 < gmaxwell> bsm1175321: the whole incentives argument in bitcoin (esp for allowing SPV clients) depends on them being tightly linked. 15:04 < bsm1175321> We can entirely divorce the two. You present me a hash value that satisfies a PoW condition, I can accept it regardless of my database's consensus requirements. 15:04 < gmaxwell> only if we don't want to exist non-validating nodes which depend on the economic rationality of the people doing mining work for their security. 15:05 < bsm1175321> I can build a PBFT (h/t Honey Badger amiller) that contains PoW hashes, and transactions against them. 15:05 < gmaxwell> some advocate that, but these systems are far less scalable without that capability. 15:05 < bsm1175321> gmaxwell: Agreed it's less scalable. 15:05 < gmaxwell> ... yes you can introduce identity and N^2 communications consensus systems if you really want to make sure all the virtuious properties of bitcoin are dead. :) 15:06 < bsm1175321> I'm attempting to divorce the economic piece from the consistency piece. 15:08 < bsm1175321> Anyhoo, thought to consider... I'm thinking about a hypothetical a PoW coin that accepts PoW as "value creation" below its consensus target. It would be an interesting excercise, and easy to prevent from becoming centralized. 15:08 < bsm1175321> (FWIW, not going to be making any altcoins anytime soon -- I'd rather bring ideas to Bitcoin) 15:10 < bsm1175321> Imagine a "value creation" transaction which takes the last block's Merkle root and satisfies a PoW condition -- and you get coins allocated proportional to your PoW target. And if you're lucky enough to satisfy the network's PoW target, you get a block, and possible more coins as a consequence. 15:14 -!- King_Rex [~King_Rex@unaffiliated/king-rex/x-3258444] has quit [Remote host closed the connection] 15:21 -!- alpalp [~allen@unaffiliated/alpalp] has quit [Ping timeout: 249 seconds] 15:22 < bramc> bsm1175321: Greg understands what braids is trying to do at a high level but is very skeptical that it doesn't make selfish mining attacks worse. That's what you have to convince him off 15:22 < bramc> Well that and an argumement that it could be deployed in a soft fork 15:22 < bsm1175321> Yeah I have nothing to convince him of a soft fork... 15:23 < bramc> And that playing games with how conflicts are handled in braids couldn't let people undo transactions after a lot of time has passed 15:23 < bsm1175321> How could it possibly making selfish mining attacks worse? Selfish mining works because of the asymmetry between not profiting from a block, and profiting from a block. If *both* parents of a block profit, there is no asymmetry, and selfish mining is dead. 15:25 < bsm1175321> bramc: It's always possible to undo transactions with >51%. The burden of proof is that you can't do it with less. You can with bitcoin, at present. 15:25 -!- nonaTure [~nonaTure@199.15.128.146] has quit [Ping timeout: 240 seconds] 15:26 < bsm1175321> Sounds like you two are talking in person. Great!!! I want UTXO set commitments!!! SPV sucks!!! 15:26 < bramc> bsm1175321: The sort of selfish mining attack in question is one where a miner intentionally doesn't propagate a block they've found for their own future gain. A 1/3 miner in Bitcoin can gain advantage over time this way. 15:26 -!- alpalp [~allen@unaffiliated/alpalp] has joined #bitcoin-wizards 15:28 < bsm1175321> bramc: The algorithm I will present on Friday considers such a miner a "minority participant" -- and as such any conflicts will be decided against him. It's easy to evaluate that his hashpower is less than the hashpower between his parent and his youngest child. 15:29 < bsm1175321> bramc: The longer a miner doesn't propegate his block, the more "minority" he becomes. The notion of "minority" is decided by a blocks *children*. 15:29 -!- MaxSan_ [~one@46.19.137.116] has joined #bitcoin-wizards 15:30 < bramc> bsm1175321: I'm not the one you need to convince, and the details are sufficiently technical that trying to hash them out over irc is probably a fool's errand, you need to have a convincing presentation which people can go over at their leisure. 15:30 < bsm1175321> bramc: Any conflicting transactions in a long-delayed block will always be decided in the favor of the majority chain, in concordance with the 51% rule. 15:30 -!- Guyver2 [~Guyver2@guyver2.xs4all.nl] has quit [Quit: :)] 15:31 < bsm1175321> bramc Agreed. I have experience in this. 15:31 < bsm1175321> Still not sure how to get this into Bitcoin. But eliminating the race condition has been my goal. 15:35 < Taek> still haven't seen how any of these off tip techniques don't greatly magnify selfish mining. 15:36 < Taek> I'm pretty convinced that my Jute stuff does not suffer from selfish mining attacks 15:36 < bsm1175321> FWIW I think I just described how it kills it. 15:37 < Taek> The merge mechanism for pulling orphaned blocks into the chain and rewarded them means that a miner with 40% hashrate can't compete with 60 1% miners 15:38 < Taek> Because, the 1% miners can continue to merge eachother's blocks, and can merge the blocks from the 40% miner as they get released 15:38 < Taek> The 40% miner can create a chain that would be ahead by a constant amount of time, say 30 seconds or something 15:38 < bsm1175321> asymmetry kills. Define asymmetry, you've defined selfish mining. 15:39 < Taek> but the cliff for including blocks is a lot longer than 30 seconds, which means the 40% miner is not going to be able to isolate the small miner's blocks without being victim to losing, as it's fighting against 60% hashrate 15:39 < Taek> I feel like I can explain this a lot better on a whiteboard 15:40 < Taek> maaku: I spent some time considering your concerns over SPV. Though SPV is not that important to me, I do think that you can pretty easily repair SPV within Jute 15:40 -!- belcher [~user@unaffiliated/belcher] has quit [Quit: Leaving] 15:40 < Taek> You introduce utxo commitments that lag by a few minutes 15:41 < Taek> similar to how utxo commitments today would probably point to the previous block instead of the current block 15:43 -!- alpalp [~allen@unaffiliated/alpalp] has quit [Ping timeout: 250 seconds] 15:43 < bsm1175321> Taek: you. me. whiteboard. soon. 15:43 < Taek> wouldn't mind making a video of that 15:43 < bsm1175321> heheehee ;-) 15:45 < bsm1175321> Please see my on chain scaling on-line talk next Friday. I'd like to figure out what is the best solution WRT weak blocks/graphs/braids. 15:45 < bramc> Taek: Yes I just explained the delayed utxo commitments thing in the bitcoin-dev mailing list 15:45 -!- laurentmt [~Thunderbi@213-245-86-6.rev.numericable.fr] has joined #bitcoin-wizards 15:46 < Taek> bsm: will definitely watch the video 15:46 -!- laurentmt [~Thunderbi@213-245-86-6.rev.numericable.fr] has quit [Client Quit] 15:46 < Taek> weak blocks are nice because it's a relatively clean change to the code 15:46 < Taek> any braid stuff is going to be more brutal, and probably a hardfork or outright an altcoin 15:47 * bsm1175321 doesn't like delays. It means I'm wrong a certain percentage of the time, and I don't like being wrong. 15:47 < Taek> it doesn't mean you are wrong, it just means you need to wait an extra block to tell if your transaction got mined 15:47 < bsm1175321> Braids are a hard fork. At best we can checkpoint back to a 1MB block, but it's "brutal" to do, as Taek says... 15:48 -!- nonaTure [~nonaTure@199.15.128.146] has joined #bitcoin-wizards 15:53 < bramc> I can't even tell if I'm trolling at this point https://twitter.com/bramcohen/status/744301857116282880 16:00 -!- nabu [~nabu@gateway/vpn/privateinternetaccess/nabu] has quit [Ping timeout: 276 seconds] 16:01 < instagibbs> bsm1175321, presentation and solid paper or bust ;) 16:01 -!- nabu [~nabu@192.40.88.72] has joined #bitcoin-wizards 16:01 < bsm1175321> instagibbs: sold. 16:01 -!- roman_ [~quassel@2a01:cb1d:4a4:2e00:4d36:deb8:da5c:57b1] has quit [Read error: Connection reset by peer] 16:01 < bsm1175321> bramc: I think you just discovered crypto-currency? 16:02 < bramc> This is even better than covenants! 16:05 -!- MoALTz [~no@78-11-183-124.static.ip.netia.com.pl] has quit [Quit: Leaving] 16:09 -!- Davasny [~quassel@78-11-193-195.static.ip.netia.com.pl] has quit [Read error: Connection reset by peer] 16:21 -!- dEBRUYNE [~dEBRUYNE@unaffiliated/debruyne] has joined #bitcoin-wizards 16:29 -!- r0ach [~r0ach@107-217-214-192.lightspeed.jcvlfl.sbcglobal.net] has quit [Ping timeout: 244 seconds] 16:42 -!- nonaTure [~nonaTure@199.15.128.146] has quit [Ping timeout: 250 seconds] 16:44 < kanzure> status of libsecp256k1 paper? has a draft or pile of notes happened yet? 16:59 < nicolag> why does fault-tolerance requires neutralizing deciding messages in a consensus protocol? (I was watching the beginning of Mazieres' talk at google) 17:03 < nicolag> I think it is to make sure that the system doesn't get stuck, so it can neutralize that message and move forward (in raft for example by using timeouts) 17:06 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 17:06 < katu_> nicolag: which protocol, paxos-like? 17:07 < nicolag> katu_: I think in his presenation, he tries to generalize different concepts, saying that a consensus protocol that wants to agree on statements, need to have statements that must be irrefutable and neutralizable 17:07 < katu_> im not too familiar with academic terms, just the actual implementations 17:08 < katu_> to me there are two families, online and offline consensus 17:08 < nicolag> (I am trying to understand his formal language too) 17:08 < katu_> the only existing offline one is satoshi like pow consensus - theres nothing to neutralize. as for online consensus, these are pretty complex and yes, usually deal with neutralization 17:09 < katu_> (well, PoS can be considered sort of offline too, sans its NaS weakness) 17:10 < katu_> nah scratch that, PoS has to be always online, for returning node to guess correct tip. 17:12 < katu_> nicolag: for some conscise notes regarding paxos-like see http://www.scs.stanford.edu/14au-cs244b/notes/paxos.txt 17:13 < nicolag> thanks katu_ 17:16 -!- dEBRUYNE [~dEBRUYNE@unaffiliated/debruyne] has quit [Quit: Leaving] 17:17 < amiller> gmaxwell, the nice thing about honeybadger is that it's only O(N) total communications per tranasction (only O(1) per node), even in the worst case 17:18 < amiller> this doesn't really affect your point at all, but it was a big challenge to achieve that so i thought i'd point it out 17:44 -!- CrazyTruthYakDDS [uid67551@gateway/web/irccloud.com/x-nyazntspqxycjxhv] has joined #bitcoin-wizards 17:45 -!- rusty2 [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 17:48 < gmaxwell> amiller: I know. 17:48 < amiller> ok 17:53 < gmaxwell> amiller: Or unless you're saying something deeper than I beliefed. My understanding is that HB paper is O(N) per transaction because it uses FEC for broadcast, the consensus itself still requires N^2 messages it just doesn't grow with transactions. Using FEC to make broadcast more efficient is a known techique ('network coding', which we'd even tried for block relay previously), so I didn't cons 17:53 < gmaxwell> ider that part of the HB result interesting. 18:01 -!- rusty2 [~rusty@pdpc/supporter/bronze/rusty] has quit [Ping timeout: 246 seconds] 18:05 < nsh> FEC? 18:05 < gmaxwell> Forward error correction. 18:05 -!- blackwraith [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 18:05 < nsh> ty 18:07 -!- priidu [~priidu@unaffiliated/priidu] has quit [Ping timeout: 260 seconds] 18:18 -!- Noldorin [~noldorin@unaffiliated/noldorin] has quit [Remote host closed the connection] 18:21 -!- unknown| [~unknown@73.114.17.106] has joined #bitcoin-wizards 18:31 -!- Ylbam [uid99779@gateway/web/irccloud.com/x-ncsrgezbczyqobiu] has quit [Quit: Connection closed for inactivity] 18:39 -!- Alopex [~bitcoin@cyber.dealing.ninja] has quit [Remote host closed the connection] 18:41 -!- Alopex [~bitcoin@cyber.dealing.ninja] has joined #bitcoin-wizards 18:58 -!- Alopex [~bitcoin@cyber.dealing.ninja] has quit [Remote host closed the connection] 18:58 -!- PERSIAN [~PERSIAN@MTRLPQ4709W-LP130-05-1279284515.dsl.bell.ca] has quit [Ping timeout: 250 seconds] 19:00 -!- Alopex [~bitcoin@cyber.dealing.ninja] has joined #bitcoin-wizards 19:02 < gmaxwell> zooko: you should implement zerocash as an ethereum contract, I hear there might be a party willing to fund that work... 19:05 -!- jonasschnelli [~jonasschn@unaffiliated/jonasschnelli] has quit [Ping timeout: 258 seconds] 19:08 -!- jonasschnelli [~jonasschn@2a01:4f8:200:7025::2] has joined #bitcoin-wizards 19:08 -!- bramc [634b58ce@gateway/web/freenode/ip.99.75.88.206] has quit [Ping timeout: 250 seconds] 19:33 -!- pro [~pro@unaffiliated/pro] has quit [Quit: Leaving] 19:34 -!- dnaleor [~dnaleor@78-23-74-78.access.telenet.be] has joined #bitcoin-wizards 19:37 -!- alpalp [~allen@unaffiliated/alpalp] has joined #bitcoin-wizards 19:41 -!- Burrito [~Burrito@unaffiliated/burrito] has quit [Quit: Leaving] 19:41 -!- Giszmo [~leo@pc-122-14-46-190.cm.vtr.net] has joined #bitcoin-wizards 19:45 -!- Emcy [~MC@unaffiliated/mc1984] has quit [Ping timeout: 250 seconds] 19:53 -!- MaxSan_ [~one@46.19.137.116] has quit [Ping timeout: 258 seconds] 19:54 -!- blackwraith [~priidu@unaffiliated/priidu] has quit [Ping timeout: 240 seconds] 19:57 -!- unknown| [~unknown@73.114.17.106] has quit [Read error: Connection reset by peer] 20:00 -!- unknown| [~unknown@73.114.17.106] has joined #bitcoin-wizards 20:18 -!- MaxSan_ [~one@46.19.137.116] has joined #bitcoin-wizards 20:24 -!- nuke1989 [~nuke@178-88-119.dynamic.cyta.gr] has quit [Remote host closed the connection] 20:54 -!- alpalp [~allen@unaffiliated/alpalp] has quit [Ping timeout: 250 seconds] 20:59 -!- NewLiberty [~NewLibert@2602:306:330b:2db0:d092:e67:4ddf:e7d8] has quit [Ping timeout: 250 seconds] 21:01 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has quit [Read error: Connection reset by peer] 21:03 -!- justanotheruser [~Justan@unaffiliated/justanotheruser] has joined #bitcoin-wizards 21:03 -!- jiggalator [~jiggalato@198.16.176.10] has joined #bitcoin-wizards 21:03 -!- jiggalator [~jiggalato@198.16.176.10] has quit [Client Quit] 21:21 < zooko> gmaxwell: my first thought about that is that Ethereum needs an upgrade to add a ZK-verifier opcode. 21:22 < zooko> gmaxwell: in any case, I'm not interested in committing Zcash Co resources to working on that at least until after we launch Zcash 1.0 "Sprout" and tend it through its infant phase, 21:22 < zooko> but I'd be happy to encourage other people and hook up interested parties, so 21:22 < zooko> please tell me more about who wants to fund it. 21:23 -!- MaxSan_ [~one@46.19.137.116] has quit [Quit: Leaving.] 21:25 -!- jonasschnelli [~jonasschn@2a01:4f8:200:7025::2] has quit [Ping timeout: 272 seconds] 21:25 -!- nets1n [~jiggalato@198.16.176.10] has joined #bitcoin-wizards 21:26 -!- nets1n [~jiggalato@198.16.176.10] has quit [Client Quit] 21:26 -!- jiggalator [~jiggalato@198.16.176.10] has joined #bitcoin-wizards 21:28 -!- jiggalator [~jiggalato@198.16.176.10] has quit [Client Quit] 21:29 -!- nets1n [~jiggalato@198.16.176.10] has joined #bitcoin-wizards 21:29 -!- jonasschnelli [~jonasschn@2a01:4f8:200:7025::2] has joined #bitcoin-wizards 21:30 -!- nets1n [~jiggalato@198.16.176.10] has quit [Client Quit] 21:31 -!- jiggalator [~jiggalato@unaffiliated/jiggalator] has joined #bitcoin-wizards 21:33 -!- jiggalator is now known as nets1n 21:34 -!- r0ach [~r0ach@107-217-214-192.lightspeed.jcvlfl.sbcglobal.net] has joined #bitcoin-wizards 21:44 -!- TheSeven [~quassel@rockbox/developer/TheSeven] has quit [Disconnected by services] 21:45 -!- [7] [~quassel@rockbox/developer/TheSeven] has joined #bitcoin-wizards 22:03 -!- bramc [634b58ce@gateway/web/freenode/ip.99.75.88.206] has joined #bitcoin-wizards 22:04 < bramc> What happened to BIP 9? 22:17 -!- Sosumi [~Leon@bl10-113-190.dsl.telepac.pt] has joined #bitcoin-wizards 22:18 < bramc> hmm, looks like it just passed. Something I saw indicated it failed, which seemed weird. Apparently it was wrong. 22:24 -!- gsdgdfs [~Trans@modemcable252.252-177-173.mc.videotron.ca] has joined #bitcoin-wizards 22:25 -!- rusty2 [~rusty@pdpc/supporter/bronze/rusty] has joined #bitcoin-wizards 22:26 -!- Transisto2 [~Trans@modemcable252.252-177-173.mc.videotron.ca] has quit [Ping timeout: 250 seconds] 22:32 -!- nets1n [~jiggalato@unaffiliated/jiggalator] has quit [Remote host closed the connection] 22:37 -!- nets1n [~jiggalato@198.16.176.10] has joined #bitcoin-wizards 22:40 -!- c0rw1n- [~c0rw1n@124.213-241-81.adsl-dyn.isp.belgacom.be] has quit [Ping timeout: 240 seconds] 22:54 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 260 seconds] 22:56 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 22:59 -!- rusty2 [~rusty@pdpc/supporter/bronze/rusty] has quit [Ping timeout: 244 seconds] 22:59 -!- coup_de_shitlord is now known as stqism 22:59 -!- stqism [~coup_de_s@irc.tox.im] has quit [Changing host] 22:59 -!- stqism [~coup_de_s@freebsd/user/stqism] has joined #bitcoin-wizards 23:00 -!- PERSIAN [~PERSIAN@MTRLPQ4709W-LP130-05-1279284515.dsl.bell.ca] has joined #bitcoin-wizards 23:05 < gmaxwell> zooko: the whole argument of their system is "it can already do everything!" 23:08 -!- Sosumi [~Leon@bl10-113-190.dsl.telepac.pt] has quit [Quit: Bye] 23:22 -!- ThomasV [~ThomasV@unaffiliated/thomasv] has joined #bitcoin-wizards 23:23 -!- spinza [~spin@197.89.184.69] has quit [Ping timeout: 276 seconds] 23:23 -!- Aranjedeath [~Aranjedea@unaffiliated/aranjedeath] has quit [Quit: Three sheets to the wind] 23:27 -!- unknown| [~unknown@73.114.17.106] has quit [Ping timeout: 240 seconds] 23:27 -!- unknown| [~unknown@73.114.18.214] has joined #bitcoin-wizards 23:29 -!- AusteritySucks [~Austerity@unaffiliated/austeritysucks] has quit [Ping timeout: 244 seconds] 23:33 -!- terrapin [~noname@185.21.218.134] has quit [Max SendQ exceeded] 23:34 -!- keesh [~noname@185.21.218.134] has joined #bitcoin-wizards 23:36 -!- priidu [~priidu@unaffiliated/priidu] has joined #bitcoin-wizards 23:37 -!- nets1n [~jiggalato@198.16.176.10] has quit [] 23:41 -!- CrazyTruthYakDDS [uid67551@gateway/web/irccloud.com/x-nyazntspqxycjxhv] has quit [Quit: Connection closed for inactivity] 23:42 -!- AusteritySucks [~Austerity@unaffiliated/austeritysucks] has joined #bitcoin-wizards 23:42 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has quit [Ping timeout: 240 seconds] 23:43 -!- RoboTeddy [~roboteddy@c-67-188-40-206.hsd1.ca.comcast.net] has joined #bitcoin-wizards 23:46 -!- AusteritySucks [~Austerity@unaffiliated/austeritysucks] has quit [Ping timeout: 250 seconds] 23:49 < bramc> gmaxwell: Pshaw, its support for covenants sucks 23:59 -!- AusteritySucks [~Austerity@unaffiliated/austeritysucks] has joined #bitcoin-wizards --- Log closed Sun Jun 19 00:00:33 2016