--- Day changed Sun Aug 13 2017 01:08 -!- adlai [~adlai@unaffiliated/adlai] has joined #joinmarket 02:36 < waxwing> comments/eyes on https://github.com/JoinMarket-Org/joinmarket/pull/749 most welcome ping belcher adlai .. maybe arubi + anyone else 02:36 < waxwing> don't think it's urgent but it looks sensible to me at this point, given inactivity of secp256k1-py repo 02:37 < waxwing> ideally would spend a lot more time looking at the coincurve repo itself, but i've already spent many hours on this when i want to focus on the segwit stuff (currently finishing updates to the Qt version) 02:40 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 03:14 < arubi> I had a look now and to me the diff makes sense. not too proficient in python though 03:43 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Ping timeout: 246 seconds] 03:45 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 04:01 < waxwing> today's dumbo comment in #joinmarket-pit is: "Hi, does anyone know how to hack a website?" 04:02 < waxwing> arubi: thanks for that. i'd really want to play around a bit with coincurve, and look through the test suite, to feel more comfortable. i know you've been chatting with ofek a bit, keep me in the loop, that *eth stuff is interesting to me too :) 04:03 < arubi> oh yes, if you want a challenge, try to find a "verify signature" function in ethereum 04:04 < arubi> protip: there seems to be none 04:04 < waxwing> arubi: weren't you guys looking at the pyethereum stuff? 04:04 < waxwing> from what little i know i think it's all geth and parity or something. i may be wrong but i don't think vitalik's python stuff is really in use on ethereum per se? 04:04 < arubi> what they do, is pubkey recovery from a message + signature, then compare the result to the "from address" 04:05 < waxwing> meh, i retract that statement, it's all too complicated to follow. 04:05 < waxwing> but it's still extremely interesting to me to hear about glitches in their Py ECC stuff, even if it isn't used. 04:06 < arubi> right pyethereum, which seems to be using py_ecc, but now I'm following some old threads of people asking how to verify a signature in a solidity contract, and all answers point to the same ec_recovery function 04:06 < waxwing> i'm sure they still have that incorrect PKCS7 code in that "wallet recovery tool" 04:06 < waxwing> arubi: ah, you reminded me yeah; i saw threads on twitter of people trying to verify and failing 04:06 < waxwing> so you mean message sign/verify is basically not implemented 04:06 < arubi> it 04:06 < arubi> it's incredible that this thing is running live :) 04:07 < waxwing> huh 11 party join. well i guess it's a Sunday :) 04:07 < waxwing> well i guess there is actually a sig_verify for transactions eh :) 04:08 < arubi> sign is, but then they seem to expect all messages incoming to also sign the pubkey somehow 04:08 < arubi> so it does actually fail on ec_recovery with a signature where r is warped 04:08 < arubi> er, wrapped 04:08 < waxwing> ah that one. is that where R.x > N. oh yes that's what you were talking about yesterday right. 04:08 < waxwing> well for some values of "you" :) 04:09 < arubi> well it doesn't seem that way no, that's why I'm so surprised :) 04:09 < arubi> exactly :) 04:09 < waxwing> arubi: what was "well it doesn't seem .. " referring to? 04:10 < arubi> doesn't seem to be a "sig_verify" function for transactions, just that same ec_recovery one 04:11 < waxwing> well so i guess that just means whatever repo you're looking at isn't a complete implementation, maybe just a toolset 04:11 < waxwing> does it have tx creation? 04:12 < arubi> seems to have it yes 04:12 < waxwing> oh hang on - so they just verify using pubkey recovery only i guess is what you're saying? 04:12 < arubi> yea, that's it 04:13 < arubi> you can get by with that as long as you require that all signed messages also contain the pubkey that's supposed to sign them, but it seems very slow 04:13 < waxwing> that sounds right. 04:16 < arubi> trying to see if I can use these online solidity tools to ec_recover stuff, will also go around checking what miners run to see what kind of ec_recover they're doing 04:16 < arubi> will be funny if one implementation supports R_x > n , and another doesn't ;) 04:36 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Ping timeout: 246 seconds] 04:38 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 04:47 -!- belcher_ [~user@unaffiliated/belcher] has joined #joinmarket 04:47 -!- beIcher [~user@unaffiliated/belcher] has quit [Ping timeout: 240 seconds] 04:48 -!- belcher [~belcher@unaffiliated/belcher] has quit [Ping timeout: 258 seconds] 05:01 -!- belcher [~belcher@unaffiliated/belcher] has joined #joinmarket 05:29 < waxwing> arubi: having trouble believing this is sensible: https://github.com/ethereum/pyethereum/blob/85efc8688a3adb45cf9e74fa17022ca4df3ad16a/ethereum/utils.py#L104-L105 05:30 < waxwing> "meh if it doesn't work set the pubkey to zero. what could go wrong?" ... if it's an error condition surely .. raise an error? call me crazy :) 05:37 < waxwing> also y u no compress, but that seems like a minor point compared to the other things 05:42 < waxwing> also that code'll be as slow as a slow thing; see https://github.com/ludbb/secp256k1-py/issues/9 05:46 -!- MaxSan [~one@185.156.175.35] has joined #joinmarket 06:16 -!- MaxSan [~one@185.156.175.35] has quit [Ping timeout: 258 seconds] 06:20 -!- Crushed-Box [~Crushed-B@host31-48-213-19.range31-48.btcentralplus.com] has joined #joinmarket 06:22 -!- MaxSan [~one@185.156.175.35] has joined #joinmarket 07:29 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 07:50 < waxwing> huh, that's weird. encountering a situation where *most* of the time my unconfirm callback isn't getting triggered on testnet (most, but not always: like 1/8 it triggered), while confirm callback always does of course. 07:51 < waxwing> i guess in principle that's not unlikely, if your add_tx_notify call happens after the walletnotify. 07:51 < belcher> or if the tx never propagated properly 07:51 < waxwing> belcher: hmm but i'm broadcasting it via my own node? 07:51 < belcher> hmm, idk 07:51 < belcher> i remember coding the tx parts to gracefully deal with a situation where the unconfirmcallback was never called 07:52 < waxwing> oh yes, absolutely 07:52 < waxwing> i'm just testing gui version with segwit update now and noticing it happening, my guess is there's some slight delta that makes it slower. 07:52 < waxwing> it still finished OK; it just means what the user sees is degraded in information content, so to speak. 07:56 < waxwing> can't reproduce on regtest. oh well. that's why we have testnet :) 07:56 -!- MaxSan [~one@185.156.175.35] has quit [Quit: Leaving.] 08:20 -!- Crushed-Box [~Crushed-B@host31-48-213-19.range31-48.btcentralplus.com] has quit [Quit: Crushed-Box] 08:50 -!- coins123 [~coins123@unaffiliated/coins123] has quit [Remote host closed the connection] 09:07 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 09:08 -!- akrmn [~akrmn@42.red-83-42-204.dynamicip.rima-tde.net] has joined #joinmarket 09:51 -!- coins123 [~coins123@unaffiliated/coins123] has quit [Remote host closed the connection] 09:54 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Quit: Leaving.] 09:54 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 10:20 -!- coins123 [~coins123@37.159.55.11] has joined #joinmarket 10:20 -!- coins123 [~coins123@37.159.55.11] has quit [Changing host] 10:20 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 10:31 -!- coins123 [~coins123@unaffiliated/coins123] has quit [Remote host closed the connection] 11:00 < waxwing> it's a detail, but: i realised that for tumbler (or any taker side notify func), it's more logical to call add_tx_notify before doing a push; even if the push fails it doesn't matter leaving it there dangling. 11:00 < waxwing> and that way there's no chance of the above ^ out of order condition. 11:00 < waxwing> didn't see it happen before, it might depend on some minor detail of code changes that slowed it down or something. 11:11 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Ping timeout: 276 seconds] 11:13 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 12:09 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Ping timeout: 240 seconds] 12:10 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 13:27 < arubi> waxwing, if you're importing a script and not passing any other arguments then a rescan is probably done 13:27 < waxwing> arubi: ? don't see the connection 13:29 < arubi> I thought there's some slowdown going on when you're dealing with segwit scripts specifically 13:29 < waxwing> arubi: nah it won't be that; imports are always just importaddress anyway 13:30 < waxwing> although hmm that just means i'm not really sure what you're talking about; importing scripts? 13:30 < arubi> so I thought somehow jm is importing a new watch address for that segwit script, a rescan is done and that might cause the slowdown 13:30 < waxwing> importaddress doesn't trigger rescan .. at least not in the ways i/we've used it 13:31 < waxwing> it just means you need to do it if it's not new, right 13:31 < arubi> well for sending a cj's output back to a wallet's address, you use p2sh(p2wpkh) right? 13:31 < waxwing> yes, we import (watch-only) addresses which are p2sh/p2wpkh (in this new version) 13:32 < waxwing> maybe there's some delta if not watch-only or something? 13:32 < arubi> "rescan (boolean, optional, default=true) Rescan the wallet for transactions" 13:32 < arubi> well that's the 3rd parameter for importaddress 13:32 < waxwing> oh it's a parameter, i see. 13:32 < waxwing> yes that makes complete sense. 13:32 < waxwing> of course we don't use that, they're newly created addresses. 13:35 < arubi> there's also addwitnessaddress which pretty much should be used for creating p2sh(p2wpkh) from wallet addresses 13:35 < waxwing> right. for importing it makes no diff, it's just a rando p2sh address. 13:37 < arubi> agreed :) 14:19 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Quit: Leaving.] 14:35 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has joined #joinmarket 15:07 -!- zxccxz [5db797e8@gateway/web/freenode/ip.93.183.151.232] has joined #joinmarket 16:22 -!- MaxSan [~one@185.156.175.35] has joined #joinmarket 16:36 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has joined #joinmarket 16:38 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has quit [Read error: Connection reset by peer] 16:44 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has joined #joinmarket 16:45 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has quit [Read error: Connection reset by peer] 17:02 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has joined #joinmarket 17:03 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has quit [Read error: Connection reset by peer] 17:18 -!- Giszmo [~leo@net-188-153-234-97.cust.vodafonedsl.it] has quit [Ping timeout: 248 seconds] 17:20 -!- Giszmo [~leo@net-188-153-89-117.cust.vodafonedsl.it] has joined #joinmarket 17:20 -!- Crushed-Box [~Crushed-B@host81-135-103-102.range81-135.btcentralplus.com] has joined #joinmarket 17:25 -!- Giszmo [~leo@net-188-153-89-117.cust.vodafonedsl.it] has quit [Remote host closed the connection] 17:26 -!- Crushed-Box [~Crushed-B@host81-135-103-102.range81-135.btcentralplus.com] has quit [Ping timeout: 255 seconds] 17:37 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has joined #joinmarket 17:50 -!- Crushed-Box [~Crushed-B@host81-135-97-50.range81-135.btcentralplus.com] has quit [Ping timeout: 248 seconds] 18:03 -!- Crushed-Box [~Crushed-B@host31-48-212-83.range31-48.btcentralplus.com] has joined #joinmarket 18:11 -!- viasil_ [~viasil@198.12.75.25] has quit [Quit: leaving] 18:13 -!- viasil [~viasil@198.12.75.25] has joined #joinmarket 18:15 -!- viasil [~viasil@198.12.75.25] has quit [Client Quit] 18:16 -!- viasil [~viasil@198.12.75.25] has joined #joinmarket 18:28 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:01 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Remote host closed the connection] 20:02 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:08 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 20:16 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:19 -!- Crushed-Box [~Crushed-B@host31-48-212-83.range31-48.btcentralplus.com] has quit [Quit: Crushed-Box] 20:24 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 248 seconds] 20:27 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:31 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 20:37 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:45 -!- dubi0us_ [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:45 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 20:49 -!- dubi0us_ [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 260 seconds] 20:55 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 20:59 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 21:05 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 21:10 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 21:15 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 21:20 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 246 seconds] 21:25 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 21:33 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 21:46 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 21:50 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 21:56 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 22:04 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 246 seconds] 22:05 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 22:10 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 255 seconds] 22:16 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 22:21 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds] 22:25 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 22:30 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 276 seconds] 22:36 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 22:41 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 258 seconds] 22:46 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 22:50 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 248 seconds] 22:56 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 23:00 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 246 seconds] 23:05 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 23:09 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 255 seconds] 23:15 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 23:19 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 255 seconds] 23:25 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 23:30 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 248 seconds] 23:36 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 23:36 -!- takamatsu [~takamatsu@unaffiliated/takamatsu] has joined #joinmarket 23:46 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 260 seconds] 23:46 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has joined #joinmarket 23:50 -!- dubi0us [~dubi0us@66-90-165-49.dyn.grandenetworks.net] has quit [Ping timeout: 240 seconds]