--- Log opened Sat Mar 07 00:00:16 2020 00:26 < kcalvinalvin> Looks like adiabat is speaking about Utreexo this Sunday at the MIT expo 00:26 < kcalvinalvin> http://web.mit.edu/webcast/mitbitcoinexpo/s20/ 00:54 < kcalvinalvin> ysangkok I've been digging at VerifyBlockProof since you asked and I think you caught a bug 00:55 < kcalvinalvin> I need someone to sanity check me but the computed root of the blockproof never gets compared to the actual root that we stored in this particular case 00:56 < kcalvinalvin> https://github.com/mit-dci/utreexo/blob/83e7e98d3fcd4679bd8e7e5a28614ef3542194e8/utreexo/blockproof.go#L166 Is case is never true and the computed top never gets compared to the actual top 01:49 < kcalvinalvin> https://github.com/mit-dci/utreexo/pull/94 fixed the bug 01:50 < kcalvinalvin> So yeah.. we should add more tests heh 02:51 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:e090:3722:9c34:3542] has joined #utreexo 02:55 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:e090:3722:9c34:3542] has quit [Remote host closed the connection] 02:55 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:e090:3722:9c34:3542] has joined #utreexo 02:56 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:e090:3722:9c34:3542] has quit [Remote host closed the connection] 02:57 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:e090:3722:9c34:3542] has joined #utreexo 03:04 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:e090:3722:9c34:3542] has quit [Remote host closed the connection] 04:37 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:a87e:5795:b503:1124] has joined #utreexo 04:41 -!- nick_freeman [~nick_free@2001:16b8:3058:ab00:a87e:5795:b503:1124] has quit [Ping timeout: 256 seconds] 04:54 -!- nick_freeman [~nick_free@92.116.130.125] has joined #utreexo 10:26 < ysangkok> kcalvinalvin: awesome that you figured it out! 13:18 < ysangkok> kcalvinalvin: what about this one? https://gist.github.com/ysangkok/415d59f1ff788475a8b2cfec4afe7cb8 18:10 -!- jb55 [~jb55@gateway/tor-sasl/jb55] has quit [Remote host closed the connection] 18:11 -!- jb55 [~jb55@gateway/tor-sasl/jb55] has joined #utreexo 18:43 -!- nick_fre_ [~nick_free@2001:16b8:3098:eb00:7121:5b00:3a18:ebaf] has joined #utreexo 18:45 -!- nick_freeman [~nick_free@92.116.130.125] has quit [Ping timeout: 240 seconds] 18:56 < kcalvinalvin> ysangkok I tested it out and it works now on the newest master :) 18:56 < kcalvinalvin> Works as in that the proof fails after deletion as it should 19:27 < ysangkok> kcalvinalvin: why should that proof fail? the proof is not for the one being deleted 20:38 -!- nick_fre_ [~nick_free@2001:16b8:3098:eb00:7121:5b00:3a18:ebaf] has quit [Remote host closed the connection] 22:27 < kcalvinalvin> ysangkok In the test that you wrote, we have a forest with two leaves and then delete one 22:27 < kcalvinalvin> 02:ff55 22:27 < kcalvinalvin> |-------\ 22:27 < kcalvinalvin> 00:0100 01:0200 22:27 < kcalvinalvin> So this would be the original tree 22:28 < kcalvinalvin> the proof for leaf 00 is itself and 01. We hash this and get ff55... which we then test against the 02 leaf 22:28 < kcalvinalvin> They match so it verifies 22:30 < kcalvinalvin> but if we delete leaf 0, the forest is now a single leaf, with it being the top and the sole tree in the whole forest 22:30 < kcalvinalvin> the hash of this top is 0100 but the proof hash gives ff55 22:30 < kcalvinalvin> they don't match so it fails 22:38 < kcalvinalvin> hmmm I haven't thought about the wallet implications before for things like this. adiabat could chime in later I guess 22:39 < kcalvinalvin> But could you add your test to blockproof_test.go 22:39 < kcalvinalvin> I think it'd be good to have 22:42 < kcalvinalvin> oh wait no haha if you prove something, you can delete it since the only time you prove in Bitcoin is when you spend 22:43 < kcalvinalvin> The only time you would delete is after you prove. No wallet implications here 22:54 < kcalvinalvin> hmmm on the other hand, this is an edge case that would never happen but technically that proof should work --- Log closed Sun Mar 08 00:00:17 2020