08:05:18barjavel.freenode.net:topic is: This channel is not about short-term Bitcoin development | http://bitcoin.ninja/ | This channel is logged. | For logs and more information, visit http://bitcoin.ninja
08:05:18barjavel.freenode.net:Users on #bitcoin-wizards: andy-logbot prodatalab ThomasV b_lumenkraft Guyver2 Mably helo KuDeTa antanst p15x damethos TheButterZone dc17523be3 priidu jhogan42 NewLiberty bosma p15 cryptowest_ moa TheSeven justanotheruser s23ioj234i cfields Dr-G2 felipelalli1 jgarzik d1ggy_ GAit PRab isis williamdunne aakselrod dfdf catlasshrugged_ jmcn sparetire_ scoria andytoshi warptangent hashtag_ MoALTz stonecoldpat harrigan Tiraspol stevenroose Madars dEBRUYNE airbreather Emcy
08:05:18barjavel.freenode.net:Users on #bitcoin-wizards: PaulCapestany rustyn waxwing sparetire davout comboy TD-Linux yorick crescend1 dardasaba___ veox Alanius_ mm_1 gielbier arubi_ luny theymos c0rw|away melvster1 Zouppen null_radix huseby sipa cdecker hulkhogan_ _whitelogger yrashk wumpus HM binaryatrocity LeMiner heath BananaLotus Logicwax ir2ivps5 tromp__ wiz Guest22136 face_ Luke-Jr fanquake grandmaster michagogo amiller Apocalyptic kyuupichan [d__d] NeatBasis optimator mkarrer ebfull Eliel
08:05:19barjavel.freenode.net:Users on #bitcoin-wizards: gnusha azariah_ tromp spinza narwh4l lmatteis wizkid057 cluckj koshii bsm117532 leakypat mr_burdell Krellan_ throughnothing_ mengine copumpkin sneak lmacken sadoshi SubCreative elastoma btcdrak bedeho fluffypony Fistful_of_Coins yoleaux Jaamg dansmith_btc se3000 dgenr8 deego Cory kanzure harrow xabbix iddo mariorz epscy vonzipper catcow a5m0_ smooth dignork pollux-bts runeks coryfields CryptoGoon Sqt poggy jbenet platinuum adams__ livegnik
08:05:19barjavel.freenode.net:Users on #bitcoin-wizards: K1773R nsh petertodd brand0 OneFixt richardus nephyrin phedny so phantomcircuit afdudley jonasschnelli pigeons SwedFTP guruvan Meeh bliljerk101 lnovy ajweiss nanotube forrestv artifexd mappum mikolalysenko Muis warren gmaxwell weex_ BrainOverfl0w @ChanServ Oizopower gwillen kinlo sl01 STRML espes__ AdrianG gavinandresen luigi1111 Anduck BlueMatt midnightmagic otoburb kumavis starsoccer d9b4bef9 gribble jessepollak ryan-c larraboj Keefe
08:05:19barjavel.freenode.net:Users on #bitcoin-wizards: indolering Graet jaromil berndj sturles [ace] merlincorey Iriez EasyAt nickler morcos Taek dasource CryptOprah s1w roasbeef eric sdaftuar GreenIsMyPepper Xzibit17
08:05:19barjavel.freenode.net:[freenode-info] channel trolls and no channel staff around to help? please check with freenode support: http://freenode.net/faq.shtml#gettinghelp
08:09:23pampuchy:hello, how does bitcoin have a dollar value? where can i read about this?
08:13:50fluffypony:pampuchy: because somebody is willing to spend USD for BTC
08:13:51fluffypony:but this is more a #bitcoin question
08:53:26K1773R:gmaxwell: have you seen the (Coin)JoinMarket project? im interested to know what you think about it. https://bitcointalk.org/index.php?topic=919116.0
09:59:27fluffypony:Days since DHTs have been suggested on the mailing list: 0
11:08:22c0rw|away:c0rw|away is now known as c0rw1n
11:23:34Alanius_:Alanius_ is now known as Alanius
12:43:52c0rw1n:c0rw1n is now known as c0rw|away
13:28:18antanst:antanst has left #bitcoin-wizards
14:07:01pampuchy:any discussion about nytimes article?
14:20:03instagibbs:pampuchy: #bitcoin
14:35:26andytoshi:K1773R: i did a quick audit for the "obvious mistakes" in doing a CJ implementation and didn't find any; but this is not an "an clear". i wish the code was laid out more cleanly to facilitate analysis (part of this is that i haven't familiarized myself with their data structures, but also there are nowhere near enough comments). generally i have a positive impression of them
14:35:36andytoshi:s/an clear/all clear/
14:48:23Tiraspol3:Tiraspol3 is now known as Tiraspol
14:48:26dgenr8:fluffypony: beefnode returns transaction details and spent-output proofs for transactions whose txid starts with beef. Please relay new beefy transactions, and transactions that spend beefy outputs, to beefnode.
16:16:08deego:deego is now known as test
16:16:17test:test is now known as deego
16:54:22fluffypony:dgenr8: only if you have MasterBeefs sharing DHTs kthx
17:01:21LeMiner2:LeMiner2 is now known as LeMiner
17:09:25dgenr8:if you wanted to call something a DHT, wouldn't it be the collection of beefnodes, bef0nodes, ... and any nodes that route to them?
17:20:37jgarzik:a DHT anchored by a blockchain would be interesting
17:23:14afk11:Hey, anyone here familiar with stratum servers? I wrote a client for it the other day, and just playing with some of the documented commands
17:26:54afk11:I seem to be getting two different errors while calling blockchain.address.get_mempool - an index not found when I don't specify an address, and 'BlockchainProcessor' object has no attribute 'get_unconfirmed_history' when I do
17:29:54ThomasV:afk11: you mean an electrum server? that method is not implemented
17:37:08afk11:ThomasV: aye. ah ok, I'll ignore that so! https://electrum.orain.org/wiki/Stratum_protocol_specification mentioned it
17:37:51afk11:I guess https://github.com/spesmilo/electrum-server will have what I need?
17:37:54ThomasV:hmm indeed
17:38:50ThomasV:it's not been implemented because the client does not need it
18:02:30wallet421:wallet421 is now known as wallet42
18:58:40afk11:ThomasV: might submit a PR removing the binding to that nonexisting function
18:59:16ThomasV:or implement it :)
18:59:24dgenr8:SPV clients can be attacked by withholding spends. so we ponder, how serious is the condition of having nodes in the network that are subject to the same attack?
19:00:19dgenr8:if the goal is to sybil a single SPV client with 6 connections, you have a new way to do it -- you can sybil all of those 6 nodes' upstream connections. meh?
19:00:46dgenr8:if the goal is to screw with the network, you can set up a lot of fake beefnodes and hope an honest one isn't one of those asked to produce a spend proof
19:05:57dgenr8:for the same effort that today allows you to lie to some subset of SPV nodes about all transactions, you can lie to a bigger subset about beef transactions (because fewer beef nodes), but only 1/65536 txes are beefy
19:09:28gmaxwell:dgenr8: uh no you cannot.
19:09:42gmaxwell:(attack a spv client by attacking its fullnode peers)
19:11:29dgenr8:consider a world where there are far fewer fullnodes due to resource requirements
19:12:04dgenr8:and you have peers that relay among nodes that only track a slice of the blockchain...
19:12:24afk11:ThomasV: pyfoo isn't too strong, but I'll give it a go. I see references to mempool stuff anyway, so reviewing whats in use now
19:12:30gmaxwell:So? I think you've failed to understand what the withholding attack against SPV clients is. It has nothing to do with relay.
19:13:05gmaxwell:dgenr8: full nods that "track a slice of the blockchain" is incohearent with respect to bitcoin, thats not something that can be done without a radically different design.
19:13:36gmaxwell:So yes, an unspecified different design may have totally different vulnerabilities.
19:18:50dgenr8:i didn't refer to full nodes that only had a slice. clearly those would not be full nodes.
19:28:30dgenr8:suppose some capabilities were added to bitcoind. tracking only specific txid stems would be one. providing full tx lookups and spend proofs for those stems are some more.
19:28:58dgenr8:then there's an ability to route these requests to nodes with other slices. that's where all the fun is
19:30:51williamdunne:It'd be nice if someone bolted on some sort of WebSocket/WebHook thing to it as well to pass on transaction data on the fly
19:31:30phantomcircuit:williamdunne, no... just... no
19:31:44williamdunne:Not onto the core
19:31:49williamdunne:But onto a fork of it
19:32:03williamdunne:Sorta like the fork which passes on all transactions for checking for double spend attempts
19:39:47yoleaux:The BACKRONYM Vulnerability
19:42:10fluffypony:"Use your thought leadership talents to write blog post about BACKRONYM to reap sweet Internet karma."
19:42:12fluffypony:sounds about right.
19:58:51williamdunne:Certainly plenty of that done with HeartBleed
20:11:28DougieBot5000:DougieBot5000 is now known as Guest40248
20:11:28DougieBot5000_:DougieBot5000_ is now known as DougieBot5000
20:27:32fluffypony:ChaCha20 and Poly1305 got ratified for IETF
20:55:18dgenr8:to allow an SPV client to validate inputs to a transaction by requesting spend proofs that invalidate them, and not getting any
21:13:27phantomcircuit:dgenr8, what?
21:13:56phantomcircuit:dgenr8, you mean walk the inputs to a transaction back to the coinbase?
21:15:15Luke-Jr:dgenr8: you realise what you're suggesting is not very practical?
21:15:39Luke-Jr:phantomcircuit: pretty sure he means the ability to query "was : spent already? SPV proof of this please"
21:15:42dgenr8:phantomcircuit: not walk back, just have a complete indexed set of transactions matching some stem like 0xbeef
21:15:51wallet42:wallet42 is now known as Guest23021
21:15:51wallet421:wallet421 is now known as wallet42
21:16:40dgenr8:neither the SPV client's peers, nor any of the nodes involved in generating responses, need the full blockchain or UTXO set. they have block headers back to genesis, and process new blocks to update their slices
21:17:02phantomcircuit:dgenr8, so an index of transactions by their prefix?
21:18:13phantomcircuit:dgenr8, still not really sure what you're suggesting
21:20:48dgenr8:phantomcircuit: node stores a transaction set matching some prefix, and can quickly produce the tx details (-txindex), and a spend proof (block + merkle branch) for any of its outputs
21:21:17dgenr8:(block hash + merkle branch)
21:21:51phantomcircuit:dgenr8, so the security model of that is super vulnerable to sybil attacks due to censorship risks
21:22:49dgenr8:how would you censor me?
21:25:01phantomcircuit:dgenr8, im an spv client, i connect to 8 peers and ask them for spv proof of spends for my transactions
21:25:17phantomcircuit:all 8 peers are secretly you and you lie to me saying they're not spent
21:25:39dgenr8:if you control all the peers that is a risk today
21:26:25phantomcircuit:dgenr8, peers can only hide full blocks
21:26:41phantomcircuit:which is mitigated by PoW
21:29:01dgenr8:today, if i fail to tell you about a block that spent an input you're interested in, how will you know? you have the block header but so what?
21:30:11phantomcircuit:dgenr8, i dont get the point of this all
21:30:35phantomcircuit:it's really not that difficult for a wallet to walk the entire blockchain once
21:30:40phantomcircuit:it's not like it has to store it
21:32:04dgenr8:the point is scalability by not storing fullblocks or utxos. are you suggesting a different way to achieve scalability?
21:33:55phantomcircuit:dgenr8, why shard based on transaction? it's so much easier to shard based on block
21:34:33dgenr8:because the necessary query is by transaction
21:35:11c0rw|away:c0rw|away is now known as c0rw1n
21:36:02phantomcircuit:dgenr8, a full node needs to see all the transactions in all of the blocks
21:36:56phantomcircuit:i see lots of effort being put into wallets which dont have to download the full blockchain... but this is largely ill advised
21:37:11phantomcircuit:initialization at spv is fine
21:37:27phantomcircuit:but there is virtually no reason not to continue to download the blockchain and upgrade security as you go
21:39:28dgenr8:for a few billion people to be able to own some bitcoin, wallets aren't ever going to download the full blockchain
21:39:31helo:battery use
21:40:59phantomcircuit:helo, limit full chain download to wifi + plugged in
21:41:11phantomcircuit:it's trivial to do on android and i assume it is on ios also
21:41:27phantomcircuit:dgenr8, if you're thinking that all the worlds transactions are going to happen on the same blockchain
21:41:29phantomcircuit:think again
21:41:39helo:dunno... it's a really long walk up the chain for a phone
21:42:09helo:side loading the utxo from a node you trust at a recent block would help a lot
21:42:47dgenr8:phantomcircuit: all transactions will not be on the blockchain, because people will continue to accept other forms of payment. but. 1 blockchain = 1 currency.
21:42:51moa:new bitcoin spec. ... all global transactions validated and stored on a mobile device
21:43:10moa:and you have 1 month to decide or we hard fork
21:44:00phantomcircuit:dgenr8, there's no reason for 1 blockchain = 1 currency
21:44:14helo:i think you mean "in 1 month the people that choose to hard fork"
21:44:37moa:meanwhile back in the real world
21:44:50helo:"hard fork in 1 month for hale bopp believers"
21:45:01phantomcircuit:there are various things coming out which use bitcoin the money outside of the bitcoin blockchain by leveraging the programmable trust model bitcoin provides
21:45:16phantomcircuit:the best example of this is lightning
21:46:10moa:less rhetoric and more numbers would be a good start
21:46:34dgenr8:phantomcircuit: that's not a counterexample. a counterexample would be 2 blockchains supporting 1 currency.
21:47:17phantomcircuit:dgenr8, k sidechains
21:47:20phantomcircuit:2 blockchains
21:47:22phantomcircuit:1 currency
21:47:57dgenr8:must disagree on that
21:48:33dgenr8:maybe I stated it too strongly though. it would be easy to have 2 currencies on 1 blockchain but that doesn't help scalability
21:49:10phantomcircuit:dgenr8, blockchains are inherently un-scalable
21:50:26phantomcircuit:to maintain the security model under which bitcoin operates (and arguably must operate to function) the economic majority must run full validating nodes
21:50:45phantomcircuit:which must validate all transactions since forever
21:51:36moa:phantomcircuit: inherently is not quite correct ... expensive to scale, but expensive is a comparative term with temporal and spatial context
21:52:11phantomcircuit:moa, it's really not
21:52:11dgenr8:if a DHT-like collection of partial nodes works, it would represent a huge chunk of economic activity
21:52:35phantomcircuit:bitcoin ultimately scales at something horrendous like O(2^n) or something due to the gossip network
21:53:25phantomcircuit:the terrible complexity stuff is largely irrelevant now, but that's because the cost of those pieces has been linearly scaled down making the ultimate scaling issues there less obvious
21:53:29moa:everything scales ... but at what cost is the right question
21:53:42phantomcircuit:moa, ok so this is an issue of language
21:53:50moa:good place to begin
21:54:00phantomcircuit:when i say scales i mean, can grow at roughly O(n) with cost
21:54:18phantomcircuit:yes given infinite resources bitcoin could support all of the worlds transactions on one blockchain
21:54:39phantomcircuit:but im certain nobody would consider that an optimal or even acceptable outcome
21:55:00moa:so it is the cost of scaling that you need to address
21:55:24phantomcircuit:(i actually suspect that you'd start to get into comical ridiculous things like consuming stars worth of energy...)
21:55:49moa:mmm, not happening in the foreseeable future
21:56:32moa:i see they recently decreased the possible radius for a feasible dyson sphere
21:56:46phantomcircuit:moa, "feasible"
21:57:04moa:maybe there is hope for bitcoinn after all
21:57:12lmatteis:do you guys know how long does a key-value pair stay in a DHT network?
21:57:40lmatteis:i suppose as long as a peer serves it.
21:57:40moa:we just need to find a collection of dim brown dwarves
21:58:27phantomcircuit:lmatteis, DHT networks provide virtually no guarantee of anything
21:58:35phantomcircuit:they are decidedly not useful for bitcoin
22:00:42lmatteis:phantomcircuit: yeah sorry wasn't bitcoin-related question
22:01:09phantomcircuit:lmatteis, iirc there's no real guarantees
22:14:54c0rw1n:c0rw1n is now known as corw|zZz