--- Day changed Sat Jul 16 2016 02:11 -!- arubi [~ese168@unaffiliated/arubi] has quit [Quit: Leaving] 02:12 -!- arubi [~ese168@unaffiliated/arubi] has joined #joinmarket 02:16 -!- proslogion [~proslogio@2.127.106.111] has joined #joinmarket 02:18 < adlai> waxwing: i rebased #423 onto develop. testing it requires fixing the fixme. in other words, none of the current utxo selection algorithms take advantage of this ability yet 02:24 < adlai> hrmph. in the current protocol, makers can't know whether the taker will be running this code, so hoping that zero-change will be supported could lead to losing business 02:47 -!- arubi [~ese168@unaffiliated/arubi] has quit [Quit: Leaving] 02:48 -!- arubi [~ese168@unaffiliated/arubi] has joined #joinmarket 03:11 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 03:26 -!- giel__ [~giel____@095-096-096-058.static.chello.nl] has quit [Quit: Leaving] 04:04 -!- belcher [~user@unaffiliated/belcher] has joined #joinmarket 04:09 -!- coins123 [~coins123@unaffiliated/coins123] has quit [Read error: Connection reset by peer] 04:10 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 04:29 -!- gielbier [~giel____@095-096-096-058.static.chello.nl] has joined #joinmarket 04:29 -!- gielbier [~giel____@095-096-096-058.static.chello.nl] has quit [Changing host] 04:29 -!- gielbier [~giel____@unaffiliated/gielbier] has joined #joinmarket 04:43 < belcher> so looks like waxwing was right, the turkish coup has failed 04:43 < belcher> o water cannons, no tear gas, no real intent to cause shock and paralysis in the population 04:44 < belcher> and the turkish air force apparently supported the coup, yet erdogan could still fly back from vacation 04:44 -!- Giszmo [~leo@ppp-83-171-166-218.dynamic.mnet-online.de] has joined #joinmarket 04:45 < waxwing> belcher: i haven't looked on typical tinfoil hat forums, but: saudi 911 report info released *exactly* same time as coup, not suspicious at all right? (also, friday night as usual for news-to-be-buried) 04:45 < waxwing> adlai: thanks will take a look later today 04:54 -!- fqtw_ is now known as fqtw 05:18 -!- mkarrer_ [~mkarrer@142.red-83-47-107.dynamicip.rima-tde.net] has joined #joinmarket 05:21 -!- mkarrer [~mkarrer@142.red-83-47-107.dynamicip.rima-tde.net] has quit [Ping timeout: 240 seconds] 05:28 -!- molz [~molly@unaffiliated/molly] has quit [Ping timeout: 250 seconds] 05:34 -!- belcher [~user@unaffiliated/belcher] has quit [Read error: Connection reset by peer] 05:41 -!- belcher [~user@unaffiliated/belcher] has joined #joinmarket 05:46 < proslogion> hmmm, so it was the gulenists 06:01 < waxwing> adlai: are talking about the FIXME on this line? https://github.com/JoinMarket-Org/joinmarket/pull/423/files#diff-e5ebbf3237752f0c78e5834760582020R143 06:06 < waxwing> re: losing business adlai yes, i see. i mean it's a pretty rare case, but anyway. i guess just merge it into 0.2.0 and be done with it? 06:06 < waxwing> btw you are most welcome to just directly commit if you like, i decided not to bother any more with PRs for the side-branch (0.2.0) 06:48 -!- fqtw [~me@x5d8063c9.dyn.telefonica.de] has quit [Ping timeout: 246 seconds] 06:59 < waxwing> someone is suggesting making os images with various joinmarkets pre-installed. thoughts on tradeoffs of such an idea? 07:00 < belcher> trying to get included into tails one day is a good idea 07:00 < proslogion> if you can make one with Qubes OS i am all for it 07:00 < belcher> any eventual GUI at least 07:00 < belcher> right now tails only has electrum which has several problems for something like this 07:00 < belcher> the gui could download whole blocks, which should be quite private except for leaking the approximate date the wallet was created 07:01 < belcher> it wont be a fully verifying though 07:14 -!- fqtw [~me@x5d8063c9.dyn.telefonica.de] has joined #joinmarket 07:18 -!- belcher [~user@unaffiliated/belcher] has quit [Read error: Connection reset by peer] 07:24 -!- belcher [~user@unaffiliated/belcher] has joined #joinmarket 07:48 -!- molz [~molly@unaffiliated/molly] has joined #joinmarket 08:15 < belcher> ok looks like regtest by default outputs coinbase coins to a pay to pubkey script 08:15 < belcher> which causes problems for this bitcoinqt integration, not sure how to change that into an address that dumpprivkey will take 08:15 < belcher> reading some of the wiki now 08:22 < waxwing> oh .. wow really? 08:23 < waxwing> why would it do that 08:23 < waxwing> belcher: couldn't you just do a grab_coins in your tests? 08:24 < belcher> bitcoinqt integration spends from bitcoin core's wallet, not joinmarket's wallet 08:24 < belcher> grab_coins sends to joinmarket's wallet 08:24 < waxwing> yeah, but the same idea to spend to whichever address you want 08:24 < waxwing> i guess it's sendtoaddress isn't it 08:24 < belcher> i was thinking to send coins to an address in another bitcoin core account, then use sendfrom with that account, but accounts are deprecated 08:25 < waxwing> yeah grab_coins just takes a receiving address, not that it matters 08:26 < belcher> there doesnt seem to be a way to spend from an address or list of addresses 08:26 < belcher> hmm 08:26 < waxwing> i see, spend from address 08:27 < waxwing> sorry off for a bit. not that i'm helping really :) 08:27 < belcher> maybe if i send all of the coins in the wallet to a burner address outside the wallet, then generate one more coinbase tx, send that to a new p2pkh address inside the wallet 08:27 < belcher> reading bitcoin core's source now, might help 08:28 < belcher> or even, send all i have to a burner address minus 0.1btc, which will be left in a change address which is a normal address 08:30 < belcher> seems like not a very nice hack, ill probably start a thread or open an issue before writing any code 08:39 < belcher> wow so looks like bc.i gets it wrong here 08:39 < belcher> this coinbase tx is a paytopubkey https://blockchain.info/tx/3168d7c390c411ff62102fddfc09b667f5b02bd5cb074ba790288784b831a996 08:39 < belcher> the output script is 04e2829e78ba8019aedd768b0522b689e3d162eda90dfaf65a497d131cd28476e2f542c0a298f417f6fe643cb74c5c2f3253ac7737b28891825ec9001f8ea5739e OP_CHECKSIG 08:39 < belcher> but the address 14EMgAwKsMmLmHKMBRUtraoXnm4Q4VnFUB is what you get when you change that pubkey above into a normal pubkeyhash address, so completely wrong in this case 08:39 < belcher> do pay to pubkey scripts even have addresses? 08:40 < belcher> "bitcoind's built-in cpu miner uses pay-to-pubkey; external mining software can choose its own transaction type." <--- there we go 08:48 -!- grubles [~grubles@unaffiliated/grubles] has quit [Quit: brb] 08:50 -!- grubles [~grubles@unaffiliated/grubles] has joined #joinmarket 09:14 -!- coins123_ [~coins123@2.43.228.69] has joined #joinmarket 09:17 -!- coins123 [~coins123@unaffiliated/coins123] has quit [Ping timeout: 276 seconds] 09:20 -!- coins123_ [~coins123@2.43.228.69] has quit [] 09:37 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 09:39 < arubi> belcher, arguably it's just a bit wrong. core does list addresses of pubkeys in p2pk \ bare multisig scripts when using decodescript 09:41 < belcher> oh wow the address from decodescript worked 09:41 < belcher> mwLkmmGFdtRm1nBKwb9E5fK96kFmFb8Tuk it turns out 09:42 < belcher> i dont think pybitcointools can actually spend paytopubkey utxos 09:42 < arubi> never used, would be surprising as it's the easiest one to spend 09:43 < arubi> just push a signature 09:44 < belcher> looks like you're right here 09:45 < belcher> p2pkh pushes sig and pub, p2pk just needs pub 09:45 < belcher> then again, that would mean rewriting some stuff in joinmarket which id rather not do just for this test 09:46 < belcher> i think ill do the "send all the coins somewhere else" way 09:47 < arubi> mhm, did you say what you were testing? interested 09:48 < belcher> the joinmarket integration with bitcoinqt 09:48 < belcher> you set walletbroadcast=0 and then recreate the tx as a coinjoin 09:48 < arubi> oh kinda like jm is used as a proxy for transaction sending from core? 09:49 < belcher> yes 09:49 < arubi> that would be very cool 09:49 < belcher> so someone can click the bitcoinqt gui buttons and get coinjoins coming out 09:49 < belcher> anyway i need to write a test for it using regtest 09:50 < arubi> sure, don't let me bother you from doing that :) 09:51 < belcher> brb 10:47 -!- p15 [~p15@131.91.145.64.unassigned.bringover.net] has quit [Ping timeout: 250 seconds] 11:09 -!- coins123 [~coins123@unaffiliated/coins123] has quit [Remote host closed the connection] 11:13 -!- molly [~molly@unaffiliated/molly] has joined #joinmarket 11:13 -!- molly is now known as moli 11:16 -!- molz [~molly@unaffiliated/molly] has quit [Ping timeout: 252 seconds] 11:34 < waxwing> belcher: yeah it's weird isn't it, i remember when the "satoshi" story happened recently i discovered about how block explorers show the p2pk outputs from satoshi as if they were p2pkh addresses. 11:36 < pigeons> the only one we hve reason to believe is satoshi is the one Hal said was. But yeah that is p2pk 11:37 < pigeons> just reminding because recently seen people bring out the old "satoshi was the only miner for the first year" nonsense 11:37 < gmaxwell> thats like a standard altcoin talking point, used to justify premines. 11:37 < gmaxwell> it's really infuriating, because it's so throughly untrue. 11:38 < pigeons> i still have keys from my 2009 mining 11:38 < gmaxwell> block 1 was mined 7 hours after the release, and block 0 was unspendable. literally the only thing we have to go on is hal's comment as pigeons says. and it seems basically certian that block 1 was not done by bitcoin's creator.... 11:41 < belcher> theres that blog post by Sergio_Demian_Lerner where he looks at the nonces and infers satoshi was mining by 52(?) computers and these were his blocks 11:56 < proslogion> well even if Satoshi did mine all those blocks it ain't premining 11:56 < proslogion> somebody gonna keep the network up and running 11:58 -!- coins123 [~coins123@unaffiliated/coins123] has joined #joinmarket 11:59 <+JM-IRCRelay> [mrnice] started up my JM bota agin after a break (to to some tor problems - now fixed), i see the #156 attack is still going on... 12:00 <+JM-IRCRelay> [mrnice] this girl really does not get tired! 12:01 < belcher> no reason for them to stop i imagine 12:01 < belcher> and it doesnt cost them anything 12:11 <+JM-IRCRelay> [mrnice] yes. I am still not entriely clear what info the utxo gives then? 12:11 <+JM-IRCRelay> [mrnice] Does it not change with each new address? Or is it entirely dependent on the source address? 12:12 < belcher> utxos live on addresses 12:12 < belcher> they can match them up with coinjoins they see on the blockchain 12:13 <+JM-IRCRelay> [mrnice] so entirely source dependent? 12:13 < belcher> ? 12:13 < belcher> source dependent? 12:14 < belcher> with the #156 spying they can associate a utxo/address with a irc nickname 12:14 <+JM-IRCRelay> [mrnice] source address related? 12:14 < belcher> after they see a coinjoin from one of those addresses, they can query again and find the new utxo/address, thereby they can unmix the coinjoin 12:15 <+JM-IRCRelay> [mrnice] So, the utxo is entirely source address relatated? 12:16 < belcher> a utxo lives on an address, yes 12:17 <+JM-IRCRelay> [mrnice] Is there any indication or theory who mighte be behind this? 12:18 < belcher> im assuming its one of the surveillance start ups 12:18 <+JM-IRCRelay> [mrnice] :-/ hm. really good way to invest money. 12:19 <+JM-IRCRelay> [mrnice] Is anybody working on a fix? I know it is not a trivial problem... 12:21 <+JM-IRCRelay> [mrnice] How about a semi private trading floor. kind of like tor bridges are being "published"? 12:22 < belcher> yes 12:22 < belcher> its all in the #156 issue on github 12:22 < belcher> the favoured idea is to have the makers demand a commitment to the utxo pubkey from the taker, which could be shared without ruining privacy 12:22 < waxwing> mrnice, we are working on it fairly intensively, see issue 171 and branch 0.2.0 (and lots of discussion here but that's not logged) - but note that there is no blanket total solution 12:23 <+JM-IRCRelay> [mrnice] right. sorry for the duplication. 12:24 <+JM-IRCRelay> [mrnice] Good news. Thanks for your efforts! 12:25 <+JM-IRCRelay> [mrnice] As long as *some* CJs can slip by then they cannot chain everything and the trail will end at some point, increasing privacy again. 12:25 < belcher> even so, they can spy on a lot 12:27 <+JM-IRCRelay> [mrnice] so it would be good practice to wash the wallet every so often via some altcoins? 12:27 < waxwing> belcher: there's a kind of time element to it though 12:27 < waxwing> i was thinking the other day, consider: they already see all JM txs on chain. in pinging makers they want to establish which *current* cjouts, as seen from blockchain, are being offered 12:28 < waxwing> if they get used up before they manage to ping them they lose that info 12:28 < belcher> yes 12:28 < waxwing> so even a like 50% blockage of that pinging would be a pretty big win. but i dunno, shrug, it's a really complex business 12:28 < waxwing> i guess that's one reason to focus on the coin age element of the commitment 12:29 < waxwing> if 10 minutes + a small fee is not a deterrent enough or something 12:29 <+JM-IRCRelay> [mrnice] Well, I just had all my offers scraped in a short time, like 1min. 12:29 < belcher> we'd also be screening by amount i imagine 12:29 <+JM-IRCRelay> [mrnice] what is the 10min idea? 12:30 < belcher> 10 minutes is the average block interval 12:30 < waxwing> well but "all your offers" != all your utxos, but the main point is we need a commitment which is what we've been discussing at length, effectively it'll rate limit 12:30 < belcher> just sent all my 10k regtest bitcoins to an address, the tx is 28715 bytes in size(!) 12:31 < waxwing> linux gurus what is a command to show total disk space available (i use du for used)? 12:31 <+JM-IRCRelay> [mrnice] df -h 12:31 < waxwing> ah makes sense thx :) 12:32 <+JM-IRCRelay> [mrnice] So a takes will pay a small commitment fee before he gets the utxo in future? 12:32 <+JM-IRCRelay> [mrnice] taker 12:32 < waxwing> that's clunky (breaks workflow for users in a bad way) so we have something different 12:34 <+JM-IRCRelay> [mrnice] Sorry, missread. "10 minutes + a small fee"... 12:34 <+JM-IRCRelay> [mrnice] So we wait for a block or make a transfer? 12:35 < belcher> if the utxo commitment requires it to be mined into a block 12:36 <+JM-IRCRelay> [mrnice] Is there an ETA for the workaround / ratelimiter? 12:37 < waxwing> no, unfortunately; don't forget we are just an amateur project, and this is a big change (esp. since we kind of have to bundle a few other things). 12:38 < waxwing> put it this way, it won't be in a week. a month seems possible, but not sure. 12:38 < waxwing> people helping to test will help, although we're not quite there yet 12:38 <+JM-IRCRelay> [mrnice] I know and I appreciate that this is done in (limited) spare time. And thank you for that. Just asking. 12:39 <+JM-IRCRelay> [mrnice] I am happy to test if/when useful. 12:41 <+JM-IRCRelay> [mrnice] So what is the current recommendation regarding bitcoin privacy? Is it sensible to "scrub" the wallet every so often through a third party in the hopes to break any possible surveillance? 12:42 <+JM-IRCRelay> [mrnice] I just have an issue with the idea that in 10 years anybody can possibly "download" all my financial btc transactions. 12:43 < belcher> iv written about using large hot wallets here https://gist.github.com/chris-belcher/00255ecfe1bc4984fcf7c65e25aa8b4b#alternate-privacy-methods 12:43 < belcher> it might be a good enough idea to write about it separately and link it around 12:47 < belcher> just realised something waxwing, in BitcoinCoreInterface in do_HEAD() where it gets the walletnotify message 12:47 < belcher> err... no hold on, thats not right, ignore this 12:52 <+JM-IRCRelay> [mrnice] becher: thanks for the link... 12:53 < waxwing> belcher: what was the deal earlier, why was the fact that coinbases were p2pk causing a problem? i didn't quite get why you needed to send them to another wallet/account 12:53 < belcher> all the joinmarket code is written for p2pkh 12:53 <+JM-IRCRelay> [AlexCato] [waxwing] well but "all your offers" != all your utxos <-- correct, depending on the yieldgen-config. At least all utxos from the biggest mixdepth are all snooped by requesting a max offer 12:54 < belcher> so joinmarket cant spend a p2pk utxo, thankfully they are obsolete and very rare 12:55 < waxwing> is it like: the bitcoin core wallet, in regtest mode, will just have coinbases in "" 12:55 < waxwing> alexcato yeah for sure 12:55 < belcher> yes 12:56 < waxwing> yes a bit of a pain, but can't you somehow "getaddressfromwallet" (whatever it's called) and grab_coins to those? 12:56 < belcher> i guess so 12:57 < belcher> as long as they end up in p2pkh addresses in the wallet its all the same 12:57 < waxwing> but sendfrom might be needed otherwise it gets from what you've already sent :) 12:57 < waxwing> i mean, if you do more than 1 12:57 < belcher> what do you mean 12:58 < waxwing> well if you grab_coins to a p2pkh address in the wallet, and then grab_coins again, the wallet algo might spend from what you sent to the first time, instead of another coinbase 12:58 < waxwing> i have no idea what the algo is to choose coins 12:58 < belcher> it chooses by size mostly 13:00 < waxwing> ok, but did it make sense what i said now? 13:02 < belcher> i think i get what you mean 13:02 < belcher> move all the coins to p2pkh address using grab_coins 13:02 < belcher> and getnewaddress 13:02 < belcher> and getbalance i guess 13:02 < arubi> getaddressbyaccount returns addressesfor an account, listunpsent takes an addresses array that filters utxo's by addresses 13:03 < waxwing> the rpc does have a sendfrom apparently 13:03 < belcher> the "from" in sendfrom refers to account 13:03 < waxwing> oh account 13:03 < waxwing> :( 13:03 < arubi> sometimes seems easier just to lockunspent all outputs that you _don't_ want spent, and then fundrawtransaction with the rest :) 13:04 < belcher> oh lockunspent 13:04 < belcher> that could be good 13:04 < arubi> (you get fees calculation for free) 13:04 < arubi> and change address, you can even specify it 13:04 < waxwing> yes it's cool but this is rather ugly isn't it, for such a simple thing 13:05 < arubi> it is, but anything else is just wallet management in itself 13:05 < arubi> that's what I've come to accept anyways 13:08 < waxwing> it's very curious that they didn't upgrade the coinbase to p2pkh; i presume if it's just for cpu mining it's essentially just for regtest testing, and you would mostly want "normal" utxos there 14:21 < proslogion> so why do you get interested in p2pk? 14:23 < belcher> bitcoin core's cpu miner sends the coinbase to p2pk outputs 14:24 < proslogion> belcher: how did that draw your attention? 14:25 < belcher> it means regtest gives you p2pk coins 14:25 < proslogion> oh ok 14:25 * proslogion sees the word 'test' and starts to feel headches 14:55 -!- molz [~molly@unaffiliated/molly] has joined #joinmarket 14:57 -!- moli [~molly@unaffiliated/molly] has quit [Ping timeout: 252 seconds] 15:16 -!- belcher [~user@unaffiliated/belcher] has quit [Read error: Connection reset by peer] 15:19 -!- wumpus [~quassel@pdpc/supporter/professional/wumpus] has quit [Ping timeout: 240 seconds] 15:20 -!- belcher [~user@unaffiliated/belcher] has joined #joinmarket 15:21 -!- wumpus [~quassel@pdpc/supporter/professional/wumpus] has joined #joinmarket 18:35 -!- Giszmo1 [~leo@ppp-83-171-167-77.dynamic.mnet-online.de] has joined #joinmarket 18:37 -!- Giszmo [~leo@ppp-83-171-166-218.dynamic.mnet-online.de] has quit [Ping timeout: 240 seconds] 18:42 -!- fqtw_ [~me@x5d8046cb.dyn.telefonica.de] has joined #joinmarket 18:46 -!- fqtw [~me@x5d8063c9.dyn.telefonica.de] has quit [Ping timeout: 246 seconds] 18:54 -!- proslogion [~proslogio@2.127.106.111] has quit [Ping timeout: 272 seconds] 19:16 -!- belcher [~user@unaffiliated/belcher] has quit [Read error: Connection reset by peer] 19:17 -!- belcher [~user@unaffiliated/belcher] has joined #joinmarket 19:19 -!- belcher [~user@unaffiliated/belcher] has quit [Read error: Connection reset by peer] 19:30 -!- molly [~molly@unaffiliated/molly] has joined #joinmarket 19:33 -!- molz [~molly@unaffiliated/molly] has quit [Ping timeout: 246 seconds]