Bitcoin Forum
November 22, 2017, 06:01:33 AM *
News: Latest stable version of Bitcoin Core: 0.15.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 [2]  All
  Print  
Author Topic: Current SegWit code does not fix O(n^2)  (Read 1106 times)
Foxpup
Legendary
*
Offline Offline

Activity: 2016



View Profile
June 30, 2016, 04:33:53 AM
 #21

All the features bundled together as part of the impending SegWit release.
So then what does that mean? The SegWit code has been released ages ago. Do you mean the version of Bitcoin Core that merges the code? It's sure to have a whole bunch of new features completely unrelated to SegWit (mostly bugfixes) and anyway nobody can be sure exactly what features it will have until it is actually released.

However, with several Core supporters deriding alternative node implementations...
"Alternative node implementations"? Is that what we're calling altcoins now?

Weird thread.
That's to be expected. SegWit bashers are weird people.

Will pretend to do unverifiable things (while actually eating an enchilada-style burrito) for bitcoins: 1K6d1EviQKX3SVKjPYmJGyWBb1avbmCFM4
Join ICO Now A blockchain platform for effective freelancing
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1511330493
Hero Member
*
Offline Offline

Posts: 1511330493

View Profile Personal Message (Offline)

Ignore
1511330493
Reply with quote  #2

1511330493
Report to moderator
1511330493
Hero Member
*
Offline Offline

Posts: 1511330493

View Profile Personal Message (Offline)

Ignore
1511330493
Reply with quote  #2

1511330493
Report to moderator
1511330493
Hero Member
*
Offline Offline

Posts: 1511330493

View Profile Personal Message (Offline)

Ignore
1511330493
Reply with quote  #2

1511330493
Report to moderator
Lauda
Legendary
*
Offline Offline

Activity: 1680


GUNBOT Licenses -15% with ref. code 'GrumpyKitty'


View Profile WWW
June 30, 2016, 06:28:55 AM
 #22

Depends on whether your work involves building or destroying. jbreher is hell-bent on destroying a productive (not to mention innovative) system, so he's no better than those sociopathic bullies that bat food out of a stranger's hand and then walk off down the street laughing at their hilarious "joke".
Fair point. At least he doesn't have a 24/7 shift on his account. Roll Eyes

So then what does that mean? The SegWit code has been released ages ago. Do you mean the version of Bitcoin Core that merges the code? It's sure to have a whole bunch of new features completely unrelated to SegWit (mostly bugfixes) and anyway nobody can be sure exactly what features it will have until it is actually released.
If you've seen his posts anywhere else before, you'd know that he calls it the "The SegWit Omnibus Changeset". I can only assume that the changes are too complex for himself and thus they must be complex for everyone.

"Alternative node implementations"? Is that what we're calling altcoins now?
That's what altcoin supporters mostly call them, yes. That part about "several Core supporters deriding.." is also false. We have Hearn (who is definitely not a Core supporter), Garzik and Gavin. All of these people have barely contributed anything to the development in the recent times.

That's to be expected. SegWit bashers are weird people.
Apparently only their (wrong) way is the right way in their eyes.



▄██████████████████
███████████████████
███████████████████
█████████████████
███████████████
████████████████
████████████████
█████████████████
███████████████████
████████████████████
█████████████████████
▀████████████████████
Bazista®
██ █  ██ ██
██   ██  ██
██  ██   ██
██ ██  █ ██
██ █  ██ ██
██   ██  ██
██  ██   ██
██ ██  █ ██
██ █  ██ ██
██   ██  ██
██  ██   ██
██ ██  █ ██

██ █  ██ ██
██   ██  ██
██  ██   ██
██ ██  █ ██
██ █  ██ ██
██   ██  ██
██  ██   ██
██ ██  █ ██
██ █  ██ ██
██   ██  ██
██  ██   ██
██ ██  █ ██
|||
gmaxwell
Staff
Legendary
*
Offline Offline

Activity: 2338



View Profile
June 30, 2016, 07:25:32 AM
 #23

We layfolk are not party to the detailed development plans, and that is OK. However, with several Core supporters deriding alternative node implementations for limiting the effects of the O(n^2) issue, rather than solving it head on

Fundamental misunderstanding, conflating the protocol with non-normative implementation particulars.  The Bitcoin protocol has a design flaw where transaction validation can take time quadratic in the size of the transaction. No implementation can avoid this wasteful computation because it is a consensus rule normative to the protocol.

With an increase in blocksize this wasteful computation could easily be turned into a system halting denial of service.

Rather that fixing it, Bitcoin Classic implemented yet another useless hard limit of transaction sizes-- to keep the bleeding at a moderate level. (Still allowing blocks to trigger 1.2 _gigabytes_ of hashing)

Segwit's design addressed the issue in two ways: One is that the extra capacity in segwit is for witness data, which is not hashed by the signature hasher. Because of this even with no fix, the worst case possible is much less significant than a plain 2MB block.  The other is that segwit changes the data structure which is hashed to not require the quadratic computation, by making the part of the hashing that all signatures would share identical that computation can be shared-- the resulting structure can be hashed with O(N) work instead of O(N^2).  These are both done, integrated, and tested since 2015.  Both are fundamental to segwit.

The point Peter Todd was making was that the segwit implementation in Bitcoin Core doesn't make use of that changed structure in the second improvement to actually save the computation possible from that second improvement.  There is an open pull request for it it just isn't integrated yet.  Btcd's does however.    This is an implementation specific difference, on my computer it does, on yours it doesn't and we're totally compatible.  Similarly, even ignoring segwit Bitcoin Core is normally many times faster than btcd, but both are compatible.

Our focus is on correctness, compatibility, and ensuring flexibility, not in getting in every last possible optimization into the system on day one. Not changing the signature-hashing algorithm, just changing the data structure, made review for correctness easier, and also allowed compatibility testing (between the naive code, the unmerged optimization, and the btcd implementation).

The important thing is that the design flaw has been eliminated for segwit txn; allowing the implementations to implement the optimization at their leisure.  It makes not a difference at all if anyone actually makes use of the new structure until segwit is activated on the network.

Bitcoin will not be compromised
Foxpup
Legendary
*
Offline Offline

Activity: 2016



View Profile
June 30, 2016, 07:28:35 AM
 #24

If you've seen his posts anywhere else before, you'd know that he calls it the "The SegWit Omnibus Changeset".
I actually haven't since he's on my ignore list (and I'm only replying to satisfy my masochistic tendencies), but I did Google the phrase and fail to find anything useful. I'm just going to assume it means "SegWit plus all other Core updates I don't understand or like".

Will pretend to do unverifiable things (while actually eating an enchilada-style burrito) for bitcoins: 1K6d1EviQKX3SVKjPYmJGyWBb1avbmCFM4
gmaxwell
Staff
Legendary
*
Offline Offline

Activity: 2338



View Profile
June 30, 2016, 07:33:06 AM
 #25

If you've seen his posts anywhere else before, you'd know that he calls it the "The SegWit Omnibus Changeset".
I actually haven't since he's on my ignore list (and I'm only replying to satisfy my masochistic tendencies), but I did Google the phrase and fail to find anything useful. I'm just going to assume it means "SegWit plus all other Core updates I don't understand or like".

Don't be so hard on him on this (every other reason is good to go).  SegWit Omnibus changeset sounds like something _I_ would say-- I'd use it to refer to the pull request that implemented the segwit consensus rules, the segwit wallet support, and the huge amount of testing infrastructure.

Bitcoin will not be compromised
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!