wumpus changed the topic of #bitcoin-wizards to: This channel is is for discussing theoretical ideas with regard to cryptocurrencies, not about short-term Bitcoin development | http://bitcoin.ninja/ | This channel is logged. | For logs and more information, visit http://bitcoin.ninja
Emcy has quit [Read error: Connection reset by peer]
bedeho has quit [Ping timeout: 244 seconds]
blackwraith has joined #bitcoin-wizards
sausage_factory has quit [Ping timeout: 240 seconds]
zooko has joined #bitcoin-wizards
bedeho has joined #bitcoin-wizards
sausage_factory has joined #bitcoin-wizards
blackwraith has quit [Ping timeout: 244 seconds]
Ylbam has quit [Quit: Connection closed for inactivity]
roxtrongo has joined #bitcoin-wizards
kmels has joined #bitcoin-wizards
Giszmo has quit [Quit: Leaving.]
King_Rex has quit [Remote host closed the connection]
bedeho has quit [Ping timeout: 240 seconds]
DougieBot5000 has quit [Read error: Connection reset by peer]
DougieBot5000 has joined #bitcoin-wizards
heretolearn has quit [Quit: Connection closed for inactivity]
Aquentin has quit [Ping timeout: 252 seconds]
belcher has quit [Quit: Leaving]
roxtrongo has quit [Remote host closed the connection]
Newyorkadam has quit [Quit: Newyorkadam]
sparetire_ has quit [Quit: sparetire_]
copumpkin has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
sausage_factory has quit [Ping timeout: 264 seconds]
TheSeven has quit [Disconnected by services]
[7] has joined #bitcoin-wizards
snthsnth has quit [Ping timeout: 250 seconds]
ThomasV has joined #bitcoin-wizards
NLNico has joined #bitcoin-wizards
zooko has quit [Ping timeout: 246 seconds]
roxtrongo has joined #bitcoin-wizards
snthsnth has joined #bitcoin-wizards
Londe has quit [Quit: Londe]
Londe has joined #bitcoin-wizards
bedeho has joined #bitcoin-wizards
PRab has joined #bitcoin-wizards
smk has quit [Quit: Page closed]
p15 has joined #bitcoin-wizards
p15 has quit [Ping timeout: 264 seconds]
rabidus has quit [Ping timeout: 265 seconds]
rabidus has joined #bitcoin-wizards
ebfull has quit [Quit: cya]
ebfull has joined #bitcoin-wizards
snthsnth has quit [Ping timeout: 265 seconds]
p15 has joined #bitcoin-wizards
Burrito has quit [Ping timeout: 244 seconds]
ThomasV has quit [Ping timeout: 240 seconds]
kmels has quit [Ping timeout: 246 seconds]
Ylbam has joined #bitcoin-wizards
xyz_ has joined #bitcoin-wizards
<xyz_>
Hi guys
xyz_ has quit [Client Quit]
alferz has joined #bitcoin-wizards
priidu has joined #bitcoin-wizards
alferz has quit [Ping timeout: 244 seconds]
cixx has joined #bitcoin-wizards
ThomasV has joined #bitcoin-wizards
NginUS has joined #bitcoin-wizards
NginUS has left #bitcoin-wizards ["Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is"]
damethos has joined #bitcoin-wizards
Aquentin has joined #bitcoin-wizards
DougieBot5000 has quit [Quit: Leaving]
mjerr has joined #bitcoin-wizards
rubensayshi has joined #bitcoin-wizards
spinza has quit [Excess Flood]
spinza has joined #bitcoin-wizards
paveljanik has joined #bitcoin-wizards
sparetire_ has joined #bitcoin-wizards
dEBRUYNE has joined #bitcoin-wizards
bedeho has quit [Ping timeout: 255 seconds]
chmod755 has joined #bitcoin-wizards
Quanttek has joined #bitcoin-wizards
dEBRUYNE has quit [Ping timeout: 265 seconds]
paveljanik has quit [Quit: Leaving]
roxtrongo has quit [Remote host closed the connection]
ThomasV has quit [Ping timeout: 264 seconds]
Populus_ has joined #bitcoin-wizards
Giszmo has joined #bitcoin-wizards
Populus_ has quit [Ping timeout: 246 seconds]
gmaxwell has quit [Ping timeout: 264 seconds]
ThomasV has joined #bitcoin-wizards
Guest15170 has joined #bitcoin-wizards
Guest15170 has quit [Changing host]
Guest15170 has joined #bitcoin-wizards
Guest15170 has quit [Remote host closed the connection]
Burrito has joined #bitcoin-wizards
ratbanebo has joined #bitcoin-wizards
<ThomasV>
jgarzik: have recent versions of bitcoin merged some form of memorypool curator?
<gmaxwell>
I have only read the begging not the substance yet; but regardless of what I think about the substance-- I think the perspective is helpful.
<bsm117532>
thanks gmaxwell
<nsh>
will you be at the scaling conf bsm117532?
<bsm117532>
No, unfortunately, which is part of the reason to make this post. I hope it generates discussion there.
<nsh>
okay. kanzure is giving a synoptic presentation of a range of different candidate future directions/changes. he may like to discuss his draft with you
<nsh>
seems to be afk just now, but usually isn't too far from a keyboard :)
<bsm117532>
My co-worker, Ivan Brightly, from SolidX will be there, and helped with editing/hashing out some of this.
ishahnaz has joined #bitcoin-wizards
<bsm117532>
I've chatted with him before here. He's in NYC and we do need to hook up.
<bsm117532>
I'm going to start organizing "Whitepaper Wednesdays" here in coordination with BitDevs (http://www.meetup.com/BitDevsNYC/), I hope I can get him to come as well as any of the other devs. I'll make an announcement about that soon.
* nsh
smiles
ratbaneb_ has joined #bitcoin-wizards
ratbanebo has quit [Ping timeout: 256 seconds]
ratbaneb_ has quit [Ping timeout: 264 seconds]
Quanttek has quit [Ping timeout: 264 seconds]
ThomasV has joined #bitcoin-wizards
p15 has quit [Ping timeout: 264 seconds]
ratbanebo has joined #bitcoin-wizards
p15x has joined #bitcoin-wizards
ratbanebo has quit [Ping timeout: 246 seconds]
mkarrer has quit []
Guyver2 has joined #bitcoin-wizards
ishahnaz has quit [Read error: Connection reset by peer]
warren has quit [Ping timeout: 260 seconds]
warren has joined #bitcoin-wizards
mkarrer has joined #bitcoin-wizards
bsm1175321 has joined #bitcoin-wizards
eudoxia has joined #bitcoin-wizards
kmels has joined #bitcoin-wizards
ratbanebo has joined #bitcoin-wizards
ratbanebo has quit [Ping timeout: 240 seconds]
ASTP001 has joined #bitcoin-wizards
DougieBot5000 has joined #bitcoin-wizards
null_radix has quit [Excess Flood]
null_radix has joined #bitcoin-wizards
jgarzik has quit [Quit: leavin on a jet plane]
bliljerk101 has joined #bitcoin-wizards
damethos has quit [Quit: Bye]
p15x has quit [Ping timeout: 265 seconds]
waxwing has quit [Read error: Connection reset by peer]
waxwing has joined #bitcoin-wizards
Dizzle has joined #bitcoin-wizards
chmod755 has quit [Quit: Ex-Chat]
Dizzle_ has joined #bitcoin-wizards
Dizzle has quit [Ping timeout: 252 seconds]
rustyn has quit [Read error: Connection reset by peer]
rustyn has joined #bitcoin-wizards
ratbanebo has joined #bitcoin-wizards
ratbanebo has quit [Ping timeout: 252 seconds]
ASTP001 has quit [Read error: Connection reset by peer]
hazirafel has joined #bitcoin-wizards
<dgenr8>
bsm117532: wow. actual scaling ideas. not just new-ways-to-raise-blocksize-that-weren't-invented-by-gavin
hazirafel has quit [Ping timeout: 256 seconds]
<bsm1175321>
Hahaaa
cixx has quit [Read error: Connection reset by peer]
<dgenr8>
but you won't be presenting at the meeting? that's a shame
<bsm1175321>
No, sadly. I do have a draft "Braiding the Blockchain" which is idea #1 in my post (turning the blockchain into a DAG) that will be published soon-ish.
<dgenr8>
idea (3) has the advantage of not requiring any kind of fork
rubensayshi has quit [Ping timeout: 246 seconds]
<bsm1175321>
Indeed. I've not put a ton of thought into that one. I'm sure it has holes.
<bsm1175321>
I'm not sure I like it either. There are probably better ways to shard the blockchain. I did notice there's a talk with that title at Scaling Bitcoin.
antgreen has quit [Read error: Connection reset by peer]
CodeShark has joined #bitcoin-wizards
rubensayshi has joined #bitcoin-wizards
ThomasV_ has joined #bitcoin-wizards
ThomasV has quit [Ping timeout: 244 seconds]
ThomasV_ has quit [Client Quit]
ThomasV has joined #bitcoin-wizards
<bsm1175321>
I'll implement some of this and hopefully have it ready for the Hong Kong conference in December...
Dizzle_ is now known as Dizzle
antgreen has joined #bitcoin-wizards
<dgenr8>
a UTXO lookup is done directly by tx hash, so that's the sharding approach i've thought about.
<dgenr8>
the grinding idea is interesting but to really scale you need to focus on the services provided to lightweight wallets
<dgenr8>
a lightweight wallet doesn't want to see even 1/256 of the traffic
damethos has joined #bitcoin-wizards
<CodeShark>
lookups by txout are probably far more useful than lookups by tx hash
<CodeShark>
at least for thin clients
<bsm1175321>
A lightweight wallet doesn't have to be a shard. It just needs to get all its addresses on the same shard.
dEBRUYNE has joined #bitcoin-wizards
<bsm1175321>
That's going to be required for any sharding proposal. Obviously there are multiple ways to do that.
<ThomasV>
bsm117532: how would that work?
<CodeShark>
are you talking about something like brute-forcing them until you find one in the shard you want?
<bsm1175321>
CodeShark: exactly.
<bsm1175321>
Or you'd have to extend the address to include a shard identifier.
<CodeShark>
doesn't that entail some loss of privacy?
<bsm1175321>
Yes.
<bsm1175321>
I'm not necessarily a *fan* of this idea...
<tromp__>
wasn't he designing the POS system for Ethereum?
<tromp__>
though he doesn't seem to cover that topic in this workshop...
ratbanebo has joined #bitcoin-wizards
<CodeShark>
PoS meaning point of sale or proof of stake?
RH311ish has joined #bitcoin-wizards
<CodeShark>
bsm117532: what's the alternative to such sharding approaches?
<bsm1175321>
I've not heard any other sharding proposals. I'd like to see some.
<bsm1175321>
But if we don't do it, the resources required of a full node grow without bound and the system will collapse.
ratbanebo has quit [Ping timeout: 256 seconds]
ThomasV has quit [Ping timeout: 250 seconds]
<Eliel>
I don't see how including a shard identifier in an address would be worse than brute-forcing an address so that it effectively has a shard identifier.
<bsm1175321>
They're functionally equivalent. Resource consumption on the part of the wallet is the only difference.
<CodeShark>
if we still maintain a distinction between "full validator" and "thin client" and just shard the former?
<CodeShark>
then thin clients can request short proofs from multiple "full validators" that cross the sharding boundaries, no?
<CodeShark>
it breaks the p2p model...but perhaps that's inevitable
<CodeShark>
then it's largely reduced to an issue of incentives
nullbyte has quit [Read error: Connection reset by peer]
bedeho has joined #bitcoin-wizards
<Eliel>
I don't think it makes sense for everyone to verify everything anyway. fraud proofs should suffice, as long as the system is designed to periodically reward people for doing it.
<CodeShark>
I've grown more and more skeptical of fraud proof approaches
<Eliel>
I think it can work. But only if there's an incentive to try to look for fraud. That's why there should be some kind of a reward available periodically in the form of intentional but harmless fraud.
<Eliel>
but should be indistinguishable from real fraud attempts.
<CodeShark>
that would go some ways towards solving the issues of battle testing and profitability - but it still might be open to "crying wolf" attacks
<CodeShark>
whereby the attacker deliberately commits fraud in a way that becomes too costly to prove
roxtrongo has joined #bitcoin-wizards
<Eliel>
fraud that is too costly to prove sounds like a design error in the system design.
<Eliel>
I wonder if it'd be possible to create a PoW function out of some kind of fraud and fraud proof battle :P
roxtrong_ has joined #bitcoin-wizards
roxtrongo has quit [Ping timeout: 246 seconds]
damethos has quit [Quit: Bye]
<CodeShark>
I think someone had done some work suggesting that the fraudsters have an advantage
priidu has quit [Ping timeout: 244 seconds]
<CodeShark>
in that they can manufacture valid transactions and claim fraud...but where it's costly to prove they are valid
<CodeShark>
or something like that - but I haven't gone over the details
<CodeShark>
the idea is that eventually, people just stop paying attention to the fraud claims
ibrightly has joined #bitcoin-wizards
ThomasV has joined #bitcoin-wizards
<Eliel>
that sounds more like a badly designed system rather than an inherent problem.
ratbanebo has joined #bitcoin-wizards
<CodeShark>
yeah, I'm not entirely convinced this is a fundamental theoretical limitation
<CodeShark>
but it does seem hard to design a system that doesn't have such weaknesses
<dgenr8>
the term "fraud proof" leads in impossible directions. a lightweight client just needs a way to gain confidence that asymptotically approaches 1
NLNico has quit [Quit: Leaving]
kmels has quit [Read error: Connection reset by peer]
kmels has joined #bitcoin-wizards
ratbanebo has quit [Ping timeout: 256 seconds]
<CodeShark>
I think we can relax the term "proof" - perhaps "argument" is a better term
<dgenr8>
and i'm referring to transactions. what satoshi mentioned was just alerts for invalid blocks which are much lower volume
<CodeShark>
right - but under what incentives model?
nullbyte has joined #bitcoin-wizards
<CodeShark>
it also seems somewhat fragile in that each "proof" builds upon the assumption that the previous n "proofs" are valid
<dgenr8>
your question is - if a partial node is available that provides security to the network, and has configurably small resource requirements, what if nobody wants to run it?
<CodeShark>
I'm not convinced of the "small resource requirements" part
<dgenr8>
its a hypothetical
<dgenr8>
the existence of fullnodes today suggests that people will want to run it, imho
<CodeShark>
I suppose if the resource requirements were sufficiently small, it could work - but I'd be far more comfortable with a mechanism that can provide more direct incentives
<Eliel>
(which is why I suggested building a system where you can gain a little profit by finding fraud.)
nullbyte has quit [Ping timeout: 268 seconds]
<Eliel>
but of course, such system needs to actually reliably have fraud for the incentive to exist.
<dgenr8>
i'm not so sure i want my whole wallet on one shard. i'd rather a bunch of nodes involved in supplying the information
<CodeShark>
most problematic, though, is being able to bound "small resource requirements" adequately
nullbyte has joined #bitcoin-wizards
<CodeShark>
as technology improves, computational cost goes down - but that's more than offset by the increased costs that come from network growth
<CodeShark>
that's likely to be the case until we achieve saturation
<CodeShark>
and saturation is achieved when supply and demand curves ultimately intersect
<dgenr8>
if lightweight wallet has 12 peers and 6 addresses, it can tell two peers about each address. many individual wallets don't need that many active addresses
<CodeShark>
I also think we should get rid of the term "address" in this context :p
<dgenr8>
its just too easy
<CodeShark>
it confuses the discussion :)
<CodeShark>
the confusion will get even worse when we start talking about routable overlay protocols
<bsm1175321>
@CodeShark yes I was referring to sharding only "full validators". I'm not sure what "thin client" means in this context? Just SPV?
<CodeShark>
basically, most wallets - something like SPV (but I don't really like the term SPV because it is associated with Satoshi's specific tx merkle tree scheme)
<bsm1175321>
The fact is that a shard has to be able to validate a transaction. If it has to query other nodes to get UTXO's it doesn't have, then you haven't solved any problems -- you divided storage at the cost of increased network traffic.
<bsm1175321>
So one way or another, SOME shard has to have ALL the data it needs to validate a single transaction.
<dgenr8>
okay but not broadcast traffic
<CodeShark>
yes, we should think of transactions as atomic state updates - and validators should count on having locally available all the data they need to validate each such update
<bsm1175321>
exactly.
<bsm1175321>
Get rid of the "block" entirely. ;-)
<dgenr8>
doesn't that devolve to being a trusted peer
<dgenr8>
why can't lightweight client validate each input separately
<CodeShark>
the "block" concept's purpose is really about timestamping these updates more than anything else
<CodeShark>
well, also about generating new coins, I suppose
<bsm1175321>
A lightweight client has to have every UTXO being spent to validate it.
<dgenr8>
yep. so it asks for them
<bsm1175321>
CodeShark: a DAG/braid can be well-ordered in time.
<CodeShark>
yeah, it's really about permissionless updates that cannot be reversed
<CodeShark>
blocks commit the state changes and impose a real computational cost to rolling it back
Quanttek has joined #bitcoin-wizards
<bsm1175321>
One could mine individual transactions, as well as groups of transactions, to create the DAG/braid.
<bsm1175321>
It requires a separate kind of "PoW notification block" which ties two or more mini-blocks or transactions together.
<CodeShark>
so perhaps make the PoW cost proportional to the number of updates performed?
<bsm1175321>
Yes. Similar to Peter Todd's Tree-Chain idea, you'd end up with more work as transactions are grouped, and you head backwards in time along the block-braid.
<bsm1175321>
I'm still noodling on what those requirements need to be...
<CodeShark>
regarding sharding proposals and stuff like tree chains, most efficient would probably be some sort of nesting whereby deeper levels are more "local"
<CodeShark>
but that also sacrifices privacy
<CodeShark>
at least at a local level
<bsm1175321>
Peter's tree-chain is kind of a combination of sharding and my idea of a block-braid. It also has some fatal flaw that I can't remember right now...
<CodeShark>
haha
<CodeShark>
I'm not really familiar with your block braid idea - and I only have vague sketches in my mind regarding PT's tree chains
<bsm1175321>
Oh...yeah...one can reallocate one's mining power to another shard, I think, and 51% attack it.
<CodeShark>
I've tried to get PT to explain in greater detail, but so far ony have basic glimpses :)
<CodeShark>
oh, right - that does seem like a serious issue
<bsm1175321>
I haven't fully presented the block braid idea beyond what's in the above blog post.
roxtrongo has quit [Remote host closed the connection]
c0rw1n is now known as c0rw|zZz
Londe has quit [Ping timeout: 244 seconds]
Londe has joined #bitcoin-wizards
nullbyte has quit [Ping timeout: 268 seconds]
mjerr has joined #bitcoin-wizards
bedeho has quit [Ping timeout: 250 seconds]
<instagibbs>
Sigh I probably have thought about treechains more than most but I'm a little burned out on alternative chain structures. Someone tell me if they're worth reading :)