--- Day changed Thu Oct 31 2019 02:35 -!- viasil [~viasil@95.174.67.204] has quit [Ping timeout: 268 seconds] 02:37 -!- viasil [~viasil@95.174.67.204] has joined #joinmarket 02:42 -!- viasil [~viasil@95.174.67.204] has quit [Ping timeout: 250 seconds] 02:44 -!- viasil [~viasil@95.174.67.204] has joined #joinmarket 02:51 -!- viasil [~viasil@95.174.67.204] has quit [Ping timeout: 265 seconds] 02:53 -!- viasil [~viasil@95.174.67.204] has joined #joinmarket 03:54 -!- MaxSan [~four@185.156.175.35] has joined #joinmarket 04:37 < waxwing> kristapsk, gotcha, thanks for that. answered on github. 04:37 < waxwing> openoms, we can chat here if it's easier 06:48 < MaxSan> hmmm 06:48 < MaxSan> how do i pull a privkey from an address again 06:58 < MaxSan> ahh think i got it.... 07:07 < openoms> waxwing: thanks. 07:08 < openoms> My next step will be to make it communicate through Tor 07:09 < openoms> Are there any specific ports I would need to set up a Hidden Service for? 07:10 < belcher> no joinmarket doesnt need to accept connections, it only makes outgoing connections, so no tor HS is needed 07:10 < belcher> to make it use tor just configure it to do so in joinmarket.cfg 07:25 < openoms> ok, so is it just a server address it needs to reach through the Tor proxy and that address stays fixed as in the. cfg? 07:26 < openoms> Tor is already setbuo, so it would make sense to use it 07:31 < belcher> yes 07:31 < belcher> theres actually multiple server addresses, one for each irc network 07:31 < belcher> joinmarket uses multiple irc networks for redundancy 07:32 < belcher> you just comment out the clearnet parts and uncomment the tor parts, and then enable socks5 proxy 07:33 < MaxSan> erm 07:33 < MaxSan> can i force the HD to start at 0, even tho its been used 07:33 < MaxSan> i dont want any lookahead on the key dump 07:34 < belcher> what are you trying to do MaxSan, which command did you run 07:35 < MaxSan> python wallet-tool.py -p wallet.jmdat 07:36 < MaxSan> its starting at a deep nest, i want the old keys 07:39 < belcher> MaxSan you might be better off using -H 07:39 < belcher> e.g. python wallet-tool.py -H m/0/0/0/0 wallet.jmdat 07:39 < belcher> and put any HD path there instead of m/0/0/0/0 07:39 < belcher> alternatively use displayall, python wallet-tool.py -p wallet.jmdat displayall 07:41 < MaxSan> displayall works 07:41 < MaxSan> too many addresses for -H 07:47 < MaxSan> Thanks :) 07:50 < waxwing> openoms, right, as belcher said, just configure the 2 .onion addresses for the irc servers, and if your setup involves using JM on the same machine as Core, then you don't have to worry about setting up the rpc connection, just give JM the cookie or user/pass; if you can't find that explained in the docs let us know. 07:51 < belcher> i think raspblitz already involves setting up a rpc user/pass for lightning 07:57 < openoms> yes, connected with user and pass without problems 07:59 < openoms> so activating the Tor communication is just editing nother line in the cfg. Easy, awesome. 08:28 < waxwing> openoms, i should point out another feature that is rarely used but imo important: you can run jmdaemon, which does the external communication, on what device, and jmclient+client side applications on a different one. i know one user has used it like that for quite a while ( qubenix iirc ) 08:29 < waxwing> i don't expect you to actually try setting that up as it's extra steps, and also it probably doesn't fit in your model really ... but it's something worth thinking about, more so with coinjoin than lightning (since the former can often involve larger coin amounts) 08:33 < openoms> we could have the jmdaemon running on the always on RPi and interact with it from a laptop. 08:34 < openoms> I seebthe advantage that we could utulize the GUI without needing the store the wallets on two devices. 08:34 < openoms> will look into it! 08:35 < MaxSan> balls im an idiot, belcher, any way to force legacy address generation too? 08:35 < MaxSan> want non segwit history 08:46 < AgoraRelay> [agora-irc/AlexCato1] there's a config setting in joinmarket.cfg "segwit = True". If you set that to false, you should get non-segwit history 08:47 < MaxSan> ah 08:49 < MaxSan> hmmm 08:50 < MaxSan> still showing wrapped segwit 08:51 < waxwing> openoms, lol every time i continue the conversation on one venue I see you've continued it on the other :) anyway, cool, we have a similar PoV 08:51 < waxwing> MaxSan, you know there's a `segwit=false` setting in the config? 08:51 < waxwing> it's specifically for using legacy wallets (the m/0/0.. type) 08:52 < waxwing> it's in one of the docs in docs/ i can't recall which 08:52 < waxwing> also if you're struggling to get privkeys off a legacy wallet i made a script for someone to handle that problem, although no guarantee it'll still work perfectly 08:52 < waxwing> https://gist.github.com/AdamISZ/d978a1fa06b808773cf14d08b16c6b6e 08:53 < waxwing> as per the note, it was specifically for someone who didn't have access to Core, if you do, then segwit=false plus displayall plus -p should probably have you covered 08:54 < waxwing> oh AlexCato sorry i didn't see the scrollback 08:54 < waxwing> hang on let me double check the setting 08:55 < waxwing> MaxSan, as per https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/SEGWIT-UPGRADE.md#if-you-do-have-an-existing-joinmarket-wallet (in the middle of that subsection), you need `segwit = false` in the [POLICY] section of joinmarket.cfg to see old style addresses. 08:55 < waxwing> if that still doesn't work let us know we'll get it sorted. 08:56 < waxwing> it's remarkable how often people come here and want to do stuff with wallets they haven't looked at for like 3 years :) lesson learned there... 08:56 < MaxSan> ive changed that but still doesnt work, using ian colemans tool set to try n pick it out 08:56 < AgoraRelay> [agora-irc/AlexCato1] can confirm what MaxSan writes, waxwing. I just set segwit=false in my config and still see 3xxxxx addresses 08:56 < waxwing> oh hang on. this may be because of the change in how wallets are created from undeath's stuff on the wallet file. was this recovered from a seed i take it? (yeah i guess it must be). 08:57 < waxwing> i'll have to look into this. 08:57 < waxwing> MaxSan, that'll be a massive pain, won't it? we can fix this pretty easily once we narrow it down. 08:58 < waxwing> i'm learning something here, i had no idea that flag was ineffective, that's bad. 08:58 < MaxSan> Well I can pull the seed, generate the addresses, 08:58 < MaxSan> does the pass associated with the wallet use BIP 38 or 39 or what? 08:59 < MaxSan> The lesson is dont leave a bunch of fork coins laying around for other people and try n recover them years later for these said people hah 09:00 < waxwing> it's BIP39 and BIP49 *now* ... the old format, which you're using didn't follow any standard. 09:01 < waxwing> can you confirm you recovered from seed? because that would explain pretty clearly why you can't get the non-segwit type. 09:02 < waxwing> i think the script i posted is the best way. it was the exact same problem the guy had, only difference he didn't have Core so i made it start up by 'pinging' a non-existent electrum dummy blockchain interface (unfortunately joinmarket insists on seeing a blockchain interface before it will show anything). 09:02 < MaxSan> erm 09:03 < MaxSan> I didnt recover from seed 09:03 < MaxSan> I actually converted the old wallet format from .json to jmdat 09:03 < MaxSan> It was not a seed back but a file backup 09:03 < waxwing> alexcato note: the docs are now wrong (should probably remove SEGWIT_UPGRADE.md), because you can't just switch the address type with a flag in the config, it determines the wallet type from the contents of the persistent storage (the .jmdat), and it won't change it. 09:04 < waxwing> MaxSan, right, interesting, so you did the convert_old_wallet.py script? 09:07 < MaxSan> yes 09:07 < waxwing> MaxSan, do you still have the json? 09:08 < MaxSan> yeah 09:09 < waxwing> can you try this please: set segwit=false ( you already have from the above), then re-generate the .jmdat with the same method. 09:10 < waxwing> when the convert_old_wallet.py is run, i believe it checks there. the confusion here may well have arisen because the change to .jmdat was *after* the change to segwit, in wallets. 09:10 < waxwing> but even if i remember some detail wrong, it's worth a try. according to my reading of the code, that would explain what happened here. 09:10 < MaxSan> ok il give it a bash 09:15 < waxwing> yeah the change to .jmdat was more than a year after the change to segwit, so it kinda makes sense that all those conversions were being done from segwit wallets, not non-segwit ones. the code allows the change with non-segwit wallets, but you have to know to set =false *before* you do the conversion, which is uhh awkward. 09:15 < MaxSan> ahh it works 09:16 < MaxSan> ok now i got my full list of addresses ^_^ 09:16 < MaxSan> now to find this bastards coins lol 09:16 < waxwing> i mean you could *try* to sync it .. needs rescan presumably. else, some kind of polling of some blockchain api or whatever, ugh. 09:17 < waxwing> i mean the 'sound' thing to do is rescan, note Core nowadays has a kind of 'birthday' feature where you can only rescan from date X. 09:17 < AgoraRelay> [agora-irc/AlexCato] interesting. Good catch waxwing, I'll keep that in mind. Questions is what do we do about it - remove the segwit=X config option? Open issue and re-implement? Guess people with *that* old addresses could always just use an old joinmarket version to display non-segwit... 09:18 < waxwing> AlexCato well i guess my instinct is to either remove or change that segwit_upgrade.md to something more terse and less detailed. this is not an expected action any more. perhaps replace it with a link to the latest version of JM that supported non-segwit, and tell them to recover coins like that. 09:19 < waxwing> the counterargument is, we already have infrastructure in place to support a shift to native segwit (you can actually use those wallets, today), so we should have something generic about 'how to deal with different wallet types'. 09:19 < AgoraRelay> [agora-irc/AlexCato] i'll create an issue for that as a reminder, mostly for myself. Probably wont have time to do it the next days though 09:19 < waxwing> hmm yeah we do need to do something about handling the fact that the `segwit=` option doesn't do what you might think, it only affects wallet *creation*, it can't alter wallets dynamically. 09:19 < waxwing> yeah please do. it's not 100% sure what needs to be done. 09:26 < AgoraRelay> [agora-irc/AlexCato] issue opened. Afk again for a considerable time 09:27 < waxwing> cheers 09:27 < waxwing> "i will be gone for some time" .. scott in the antarctic vibes 09:55 < MaxSan> Thanks for being awesome folks 10:51 -!- bsm1175321 [~mcelrath@pool-71-161-100-114.cncdnh.east.myfairpoint.net] has joined #joinmarket 11:55 -!- MaxSan [~four@185.156.175.35] has quit [Ping timeout: 268 seconds] 11:57 -!- reallll [~belcher@unaffiliated/belcher] has joined #joinmarket 12:01 -!- belcher [~belcher@unaffiliated/belcher] has quit [Ping timeout: 240 seconds] 12:03 -!- reallll is now known as belcher 12:37 -!- luke-jr [~luke-jr@unaffiliated/luke-jr] has quit [Ping timeout: 252 seconds] 12:50 -!- luke-jr [~luke-jr@unaffiliated/luke-jr] has joined #joinmarket 14:04 < waxwing> belcher, https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/scripts/joinmarket-qt.py#L635-L636 14:04 < belcher> whoops 14:05 < belcher> sec 14:08 < belcher> ill just push to master? 14:08 < belcher> or should i do a whole new branch and PR 14:09 < belcher> waxwing ^ 14:17 < waxwing> belcher, you can push to master if you like, thanks 14:18 < waxwing> that's what i was about to do but you go ahead, makes more sense 14:19 < belcher> no idea how i missed it, i search for "w." 14:24 < belcher> done 14:25 < waxwing> belcher, yeah if you went for all "w." you should have seen that one eh .. it is a hard one to get right since you have to scroll through a fair number of false positives. who knows, shrug, these things happen. 14:26 < qubenix> tftc podcast was talking about joinmarket today 14:27 < belcher> what did they say roughly? 14:28 < qubenix> matt was explaining the market and how liquidity is provided without a trusted third party. mentioned it was difficult to use, but may be getting easier soon. 14:30 < qubenix> also mentioned that samourai is having liquidity issues (i've heard it other places as well) and they're thinking about some incentive model for liquidity providers. 14:31 < qubenix> Hhttps://anchor.fm/tales-from-the-crypt/episodes/Rabbit-Hole-Recap-Week-of-2019-10-28-e8gbim -- 27min mark 15:54 < kristapsk> waxwing, about your last comment in #425 - should I care / worry about ElectrumWalletInterface or is it officially considered broken currently? 16:00 < AgoraRelay> [agora-irc/AlexCato] broken since jm-clientserver, currently only core works 16:11 -!- abc [d433970c@212-51-151-12.fiber7.init7.net] has joined #joinmarket 16:18 < abc> How can I check yield generator is running properly? 17:56 -!- bsm1175321 [~mcelrath@pool-71-161-100-114.cncdnh.east.myfairpoint.net] has quit [Ping timeout: 245 seconds] 18:02 < waxwing> kristapsk, there is 'electrumwalletinterface' which confusingly is different from the electrum server based interface, for a JM wallet, which was confused (the former was for the plugin). if there are still references anywhere in doc (for Qt? is that what you meant?) then feel free to delete; there's no *actual* electrum support anywhere, now. 18:02 < waxwing> err 'which was confused' should be 'which was removed' 18:03 < kristapsk> waxwing, blockchaininterface.py has class ElectrumWalletInterface(BlockchainInterface) 18:04 < kristapsk> ohh, I just got confused, I think 18:05 < qubenix> abc: your output should say "JM daemon setup complete" when connected to all irc servers. you can check on joinmarket.me/ob to see if your bot is there. 18:07 < kristapsk> ElectrumWalletInterface is referenced only in jmclient/jmclient/configure.py 18:09 < kristapsk> is_address_imported() in BlockchainInterface already looks like a Bitcoin Core specific, so basically I could at that is_labeled stuff there and don't think for anything else right now? 18:09 < kristapsk> s/at/add/ 18:12 < waxwing> kristapsk, good question yeah. i think just BitcoinCoreInterface yeah. we can leave open whether we later have another interface that does something different. 18:12 < waxwing> i mean client-side filtering is probably the only other thing we might have soon afaik. 18:14 < kristapsk> hmmm, shouldn't we have the same method in base class too? 18:15 < kristapsk> I think there was some talk some time ago with belcher that we could also probably have Electrum servers at a backend with switching Tor circuits for each request, like Wasabi does it when talking with random full nodes... 18:44 -!- AgoraRelay [~jmrelayfn@p5DE4A450.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 18:46 -!- CgRelayBot [~CgRelayBo@p5DE4A450.dip0.t-ipconnect.de] has quit [Ping timeout: 276 seconds] 18:53 -!- abc [d433970c@212-51-151-12.fiber7.init7.net] has quit [Remote host closed the connection] 18:56 -!- CgRelayBot [~CgRelayBo@p5DE4A6D6.dip0.t-ipconnect.de] has joined #joinmarket 18:59 -!- AgoraRelay [~jmrelayfn@p5DE4A6D6.dip0.t-ipconnect.de] has joined #joinmarket 19:37 -!- puddinpop [~puddinpop@unaffiliated/puddinpop] has quit [Ping timeout: 264 seconds] 20:08 -!- StopAndDecrypt [~StopAndDe@unaffiliated/stopanddecrypt] has joined #joinmarket 20:08 -!- StopAndDecrypt [~StopAndDe@unaffiliated/stopanddecrypt] has quit [Excess Flood] 20:08 -!- StopAndDecrypt [~StopAndDe@107.181.189.37] has joined #joinmarket 20:09 -!- StopAndDecrypt [~StopAndDe@107.181.189.37] has quit [Changing host] 20:09 -!- StopAndDecrypt [~StopAndDe@unaffiliated/stopanddecrypt] has joined #joinmarket 20:40 -!- viasil [~viasil@95.174.67.204] has quit [Ping timeout: 240 seconds] 20:42 -!- viasil [~viasil@95.174.67.204] has joined #joinmarket 22:02 -!- Xeha [~Xeha@unaffiliated/k1773r] has quit [Ping timeout: 248 seconds] 23:23 -!- Xeha [~Xeha@unaffiliated/k1773r] has joined #joinmarket