Hacker News new | past | comments | ask | show | jobs | submit login
Hal Finney’s proposal for optimizing Bitcoin to be enabled in Bitcoin Core (btctimes.com)
175 points by syck on Sept 27, 2020 | hide | past | favorite | 162 comments



Finney was a wonderful man. He was there with PGP from the start. The last few years of his life he suffered tremendously. When the world started finger-pointing him as Satoshi his family got death/kidnap threats, swatting and worse.

Hopefully anyone with the time to care about this will read one of his last comments on the subject dictated through eye-movement software from a wheelchair:

https://bitcointalk.org/index.php?topic=155054.0

Vale Hal.


I did not know Hal well, but he was at Caltech in the dorm room next door to mine. He was indeed a wonderful man. Everybody liked him, and he was respectful and kind to everyone.

Oh, and he was off-the-charts smart, too, though you had to get to know him for a while before discovering this.


Hal is the person I believe was Satoshi. All of the evidence points to him more than anyone else I have read about. But wanting to keep his identity secret makes perfect sense given what happened.


I don't believe it at all and there's plenty of evidence to the contrary that people can find for themselves.

That's my honest opinion and you are entitled to yours, fairly sure no one will ever know for certain. There's a journalist that went deep diving on this and came out with the same conclusion, from timelines to stylometric analysis, it doesn't add up to being Hal. He's just that guy who actually listened on the mailing list rather than be the snarky one where everyone else nods in agreement congratulating themselves how smart they are.

In the last years of his abled life, the man was getting involved in whatever cutting edge technology he could find, most of this is documented, nearly all of them failed, except for twitter and bitcoin. He's now cryopreserved, something that has virtually no chance of ever succeeding in the next 1000 years, yet...


The fact he lived very close to Dorian Satoshi Nakamoto (2 blocks away) is the most damning evidence to me. Explains why he selected that name - he thought it was a good name and he noticed it! Secondly him being the first person to respond to Satoshi is highly suspect to me, he could have been responding to himself.


I'd take that as evidence that Hal was not Nakamoto. I didn't know Hal very [1], but I'm pretty sure he was smart enough to realize that if doing something under his real name might have negative consequences, doing it under someone else's real name might bring them negative consequences. I'm also pretty sure he would consider bringing such negative consequences down on someone without their permission unethical and not do it.

[1] He was a senior engineer at APh working on Intellivison and Atari VCS games [2], when I was a fresh out of college junior engineer there. (And he was amazing at it [3]).

[2] http://gdri.smspower.org/wiki/index.php/APh_Technological_Co...

[3] One of the big projects while I was there was the next generation Intellivision. It would have a significantly more powerful graphics processing chip than its predecessor. The prototypes for the new chip implemented via discrete logic on big wire wrapped card in a big card cage. We were all working hard to get some games working on the prototype, which was going to be shown in some closed demos at CES.

This was made difficult for most of us programmers because the hardware guys were still fiddling with the design. We'd work very late until we could not stay awake anymore, and go to sleep for a few hours. Then we'd wake up and head back to work...and many times we would then find a note on our development system that the hardware guys had made a revision, and replaced some of the boards with updated ones.

Those updates would often do things like change the function of control registers, or the number of sprites, or the way color worked. That sent most of us into at least a couple hours of changing our code to work with the new hardware. (This was all hand written assembly).

Not Hal.

Hal would spend just a few minutes, and his code worked again. Oh, and his code was also better performing than the rest of ours, and made better use of memory.


I worked at Aph for a while, and did one of the video games (Roulette).

Hal wrote a Basic interpreter to fit in 2K of ROM. To save bytes, it had only one error message:

    EH?
Still my favorite error message.

Of course, all of us at Aph were idiots. We had everything needed to make a killer consumer microcomputer, did not, and missed out on being billionaires!


Another Hal anecdote: Caltech at one point had a contest against MIT about who could write a Gomoku program that could beat the other. On a lark, Hal decided to enter a program he wrote over the weekend. It beat MIT.

That was when I found out Hal was not your average bear. Usually, he was just the friendly fellow who was always up for taking as many students as would fit into his VW bug to Tommy's at 3AM. I was small enough at the time to fit in the luggage slot behind the back seat.


And article says Hal was "the first person to receive a Bitcoin transaction from Satoshi Nakamoto." That is too coincidental. Probably he sent it to himself as a test and to start the ball rolling with more forum users sending coins.


Huh, that's an interesting fact! I wonder what percentage of people outside of Japan live that close to someone named Satoshi Nakamoto?


That's a terrible reason!! Name your alias as Other Guy in My Town? What kind of idiot would do that? He's not collecting packages.


I mean, more likely to be primed by a name of a guy in the town then randomly selecting a low prevalence name that happens to ALSO be the name of the guy in the town.

It’s not that the marginal probability of using a known name is high, it’s that for a fact the name used IS a known name that makes it suspect.


People do choose aliases by odd relations like this.


Yes, but I'd expect the inventor of Bitcoin to be a little not-dumb about it.


Also the timing of his death and satoshi presence...


Source?


Easily googled.


> ather than be the snarky one where everyone else nods in agreement

Satoshi's discussions on BitcoinTalk were definitely not snarky, but fairly well measured and objective.


Dunno about virtually no chance - we just need exponential improvements in scanning and computing to go on a while longer.


My guesstimate is Nick Szabo.


If you look at Szabo's twitter feed these days, I surely hope he isn't.

Luckily, there is not that much that points towards him being Satoshi:

https://archive.is/N3rYx

https://davidgerard.co.uk/blockchain/2018/12/16/no-nick-szab...


> hope he isn't

You wish he was more like you?

This is a good reason why he hid his identity. Any real person would be more disappointing then the legend constructed in imagination.


Yes, there's not much that can destroy a legend easier than meeting them in person.

But it in this case, the legend was a rather nice person. Getting this aspect of his personality destroyed would be a shame.


Is he mean? Or do associate those views with mean people.

I just don't understand why everyone needs to be a PR polished suit. These people work on computers, not administer public policy. We can appreciate their contributions and ignore their quirks or the fact they don't have all the popular opinions.


It's the other way around. Just because somebody is good in one area that doesn't mean they have any authority in another, unrelated one.

Putting people on a podest and excusing untolerable behavior is plain toxic.

It is not wanting that everyone needs to be a PR polished suit, just wanting that people are decent human beings.


> Just because somebody is good in one area that doesn't mean they have any authority in another

Precisely what I am saying. We can applaud Nick for contributions to cryptography without importing his views of other things. We don't have to weigh his political opinions at all.

> just wanting that people are decent human beings.

This sounds to me like "having views I like, because only undecent people would think otherwise". Do you have an instance of Nick being nasty or indecent?


> This sounds to me like "having views I like, because only undecent people would think otherwise".

Yeah, that's a sentiment you hear a lot in political discourse these days. But if you follow cryptocurrencies, you wouldn't get far with this attitude. The combination of technological, financial, and political issues that make up this field draw a lot of different people to it. Including a lot of wackos, often even with a cult following. So you need to have a good filter to find the interesting stuff.

But I followed him long enough to notice that there is no interesting stuff anymore and some of his content was showing uncomfortable character traits to me, so I unfollowed.

> Do you have an instance of Nick being nasty or indecent?

This Twitter thread by somebody else is a good start.

https://twitter.com/OneAdamReese/status/1270108913111691264


The intent of that thread is to peer into his tweets to associate him with an untouchable "white supremacist", as opposed to any particular wrong doing. That's not even a description, it's just a reason to dehumanize someone.

> so I unfollowed.

I completely encourage that.

I'm not asking for his political views to be platformed, just that we treat them separately. In other words, it's not in bad taste to respect Nick for a Bitcoin opinion, even if what else he has going on we believe or even know to be incorrect.


His twitter feed is very libertarian and Austrian economics themed. That doesn’t surprise me at all, should it?


Expecting Satoshi not to be libertarian is like expecting Karl Marx not to be socialist. Satoshi devoted his life to creating uncensorable money outside of government control!


>Karl Marx not to be socialist

He was not a socialist, he was a Marxist. It's like expecting that Windows and Linux are Operating-systems and by that completely the same.


On what basis are you making this claim? Karl Marx often called himself a socialist but he explicitly denied being a Marxist.


He says he hopes it isn't him, not that it lends evidence against it.


I understand but that’s a strange hope a bit based on his twitter bring too right-wing or libertarian than he would prefer, yet those beliefs are actually very consistent with a lot of Satoshi’s known leanings and beliefs. The block zero comment is pretty libertarian for example and many of his comments on email lists are also. So it’s a bit illogical for the OP to hope for otherwise.


I'm a libertarian Bitcoiner myself, and I hope it's not Szabo.

You can be right libertarian without being a xenophobe or an outright racist.


I guess I missed the xenophobia and racism in his twitter feed. That wouldn’t surprise me however I’m just not sure what you are referring to specifically.


you can also be right libertarian without demeaning others with modern-day heresy accusations


Fascism != libertarianism

It mystifies me how /pol ideology gets called libertarian. I remember when words meant things.


Libertarian? He has the Blue Lives Matter flag as his header.


In the 1970s there were lots of libertarians that were marxists or socialists, they saw no conflict in the terms because libertarian is such a loosely defined term that it can encompass almost anything you care to stuff into it. Even today libertarianism has no strict prescription, the political movement takes all manner of refugee into it. In discussions I routinely run across libertarians that believe in fully functional centralized government judicial and policing systems; on the flip side, I also run across libertarians that are more of the anarchy wing and believe in private police systems.

What does liberty mean to you? That's all libertarianism actually is, and that has always plagued the movement.

If forcibly implemented marxism means liberty or freedom to you, good enough, you can call yourself a libertarian now if you see fit. The Hayek wing will always disagree with that, however their disagreement is also entirely irrelevant as they don't have much control over the term or the movement.


Well, that shouldn't be that surprising since the term was Socialist in its beginning before the current US right-wing tendencies co-opted it to mean Propertarianism.


>If you look at Szabo's twitter feed these days, I surely hope he isn't.

I just glanced at it and it looks innocuously right wing. In the context of being contender for the creator of a decentralized currency I was expecting a "far-right" libertarian type.


Maybe it's to throw off people...


There's zero good evidence it was him. There hasn't been good evidence for anyone named, so far. Him living kind of close to someone with the last name Nakamoto (it was actually more than two blocks away, I believe) is not good evidence whatsoever, and there's some specific circumstantial evidence to suggest they were different people. No, no smoking gun to disprove it, but no good case has ever been made.


Zero? Definitely more than zero. In fact you’ll find papers if you try that put the probability higher than anyone other than Nick S. But it doesn’t really matter in the end in my opinion. The whole point was to not have a godhead.


I've read those papers. There's ostensible evidence put forward, but I find zero of it to be good evidence, personally. Nick Szabo is definitely a more likely match, with better evidence, but I think there's almost no chance it's him, either.

>But it doesn’t really matter in the end in my opinion. The whole point was to not have a godhead.

Of course; but it's not about that. It's about the mystery, the challenge, the thrill of the adventure.

It's one of the absolute strangest and most enigmatic events in internet history - when else has some open source software blown up to even 0.0001% of this level with a 100% anonymous creator who no one's come close to identifying (that we know of)?

Would I reveal who Satoshi was if I found out? Probably not. Their life would probably undeservedly become much harder and much worse. But I still sure as hell would be interested to know who made this thing.

Also, if we know who it is, then we know who it isn't. Rumors over certain people being Satoshi can be very irresponsible.


If the creator of Bitcoin is in cryostasis, then I propose that we officially move all cyberpunk novels to the nonfiction section. All we are missing is Rastafarians in space.


Better to put anything as nonfiction as fiction at this rate!


I believe it was actually 3 people: Phil Wilson, Craig Wright and Dave Kleiman.

Phil left the project and deleted all evidence in 2011, when the FBI was getting involved. Dave died in 2013, and in 2015 Craig started to proclaim that he is Satoshi. The problem is, Craig is the least technical and least stable of the trio, so almost no one believes him.

The source for this info is actually Phil, who comes back in 2017 to tell his story at http://vu.hn/bitcoin%20origins.html#bitcoin-origins

Of course there is no hard evidence for this, so almost no one believes him as well. But I like the story, and matches some of my priors, so I'm sticking with it.

There is also the ongoing lawsuit of the Kleiman estate vs Craig, for the Tulip Trust, a large cache of bitcoins they mined together. The jury trial is scheduled for October 13, so that might also expand on the story when it's concluded: https://coingeek.com/kleiman-v-wright-trial-delayed-until-oc...


Please don't promote these despicable scammers.


one of my pet theories was driven by a language observation. look at these two names written out side by side:

  Nick Szabo
  Satoshi Nakamoto
the writer in me looks at those two names and sees a kind of echo/mirror/rearrangement pattern, as if someone was either trying to give a clue as to their real identity, or, to mislead in a playful way

not decisive obviously. and might have been a coincidence. but if so its a weird one


In japanese, the family name comes first so they actually line up naturally

  Nick     Szabo
  Nakamoto Satoshi


The same is true of Hungarian, which Szabo (“tailor”) comes from:

https://www.thoughtco.com/szabo-last-name-meaning-and-origin...


The only thing we know for sure is that Hal knew Satoshi in some capacity. Anything else is speculation and/or conjecture.


Hal's post was so inspiring – thank you for sharing.

The bit about having to finish the documentation was particularly noteworthy. Even when writing code laboriously through eye moment, Hal didn't lose focus of the importance of documentation.


Also why some other folks suspected of being Satoshi have denied it so arduously.

If the above poster is Satoshi (which I suspect, it being a new account), I'd like to thank you for your contribution. Your writings are underrated but will be appreciated by future economists, developers, and historians.


As Hal explains in his post [1], this let's you replace a general 256-bit-scalar x curve-point multiplication k x Q by

(k1 + k2 x lambda) x Q = k1 x Q + k2 x (lambda x Q)

where k = k1 + k2 x lambda mod n, k1 and k2 are only 128-bit, and lambda has the special property that for some beta, lambda x Q = (beta x Qx mod p, Qy), i.e. at the cost of just a scalar multiplication, yielding a 25% speedup.

[1] https://bitcointalk.org/index.php?topic=3238.msg45565#msg455...


Apologies for the use of 'x' to denote multiplication. I just figured out that I could have written as asterisk * as 3 asterisks in markdown, but it's too late to edit my post now.


More straightforwardly, you can escape it with a backslash, pretty sure.


Let's try:

backslash star: \*

3 stars: *. - Works if it's not the last characters of the post.


I tried that and it failed miserably: \* produces \


A bit tangential but I have a question. This is one thing that I don't really understand about bitcoin, how open is it, to be declared free from government influence? The power of the core technology still resides with who ever has the key to push changes, and there lies a lot of vested interest. Like an external agent can still influence the devs who are making the changes and then majority of the nodes to accept that change. Its not really resilient to outside forces, right? Or am I missing something?


Bitcoin is set up such that there is no auto-updating feature. Any change to Bitcoin must be accepted manually by all participants.

But there's still a question of "how many people actually review the changelog before updating?" It's a very small number, but that might be okay. If a bad actor pushes malicious code through, all you need is one person to raise the alarm.

In general, Bitcoin is very well reviewed. I don't think it would be easy for a bad actor (even a good actor who is being compelled in secret by a state actor) to push through malicious code. But it's hard to be certain exactly how robust Bitcoin is to this type of thing.

The culture of Bitcoin is highly resistant to changes in the core code. Even optimizations are increasingly scrutinized. Attempts to influence the core devs ("psyops") are also likely to fall flat, simply because the core devs have gone to great lengths to ensure that there is a lot of red tape to making changes, and that larger changes take years to get through with hundreds of eyes of review.


That misses the point entirely that most people that actually use bitcoin don’t even use bitcoin core’s wallet. They use other wallets and trust that software and the hardware they are on to be doing the right thing. The average person not only does not understand this distinction, they don’t even know how to validate their own transactions let alone know how to read code.


But that doesn't matter. The point of Bitcoin is not to provide every single user with perfect decentralization, it's to provide the infrastructure for it so that it can be achieved if its important to you.


Unfortunately most don’t really understand that and end up just “trusting the software”


Your grandparents talked about "the core technology" and talked about peers. If you're talking about bitcoin in the extended sense that you do, there would be no reason to use these words.

It is commonly known that exchanges have to implement KYC/AML and so on, so the question isn't very interesting if we are talking about whether the government has some influence on a web-wallet like Coinbase.


The fact that changes to Bitcoin Core get some amount of reviews is not enough for all vulnerabilities to get caught, as seen here: https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposu...

And some of those vulnerabilities may have been planted intentionally, we’d never know.


A lot of the CVE's there are pretty minor. There hasn't been a serious but in Bitcoin core that I know of since 2018, and the one before that was in 2016.

Not perfect, but overall I think that's a pretty decent track record.


What happens to a participant who didn't update? Will they be on their on special fork of the chain?


They'll be on the same fork as everyone else who didn't update, which may in fact be the dominant fork.


Maybe yes maybe no. It depends on what the updates are.


To expand: an update that puts older versions of bitcoin on a different chain is called a hard fork and it is treated as a big deal. It is supposed to happen as rarely as possible.


Systems are as decentralized as the people running it; if you convince by force the majority of the people running it to accept your change then I guess you win, right? FWIW; there is still the question of what the people who reject the change choose to do--give up or resist--and if they go with resist then they effectively become a fork of the network and now there are two networks: the one that was forced to accept your corruption and the one that didn't... since all the effort of the larger network you corrupted is busy the latter network could possibly still be secure. Really if you want to do that you don't want to push a band update you want to force people to counter the protocol: get a majority of then hash rate to promise to cause chain reorganizations constantly to screw with the smaller forks.


> Systems are as decentralized as the people running it;

No, this is the worst case scenario, the core developers of a technology like Bitcoin have the power to, arbitrarily, govern the project and change the code or protocol without the people noticing or caring about it. There are obviously limits that are not acceptable to the people (e.g. SegWit2x and Bitcoin Cash). The governance of a protocol is mostly centralized. Perfectly decentralized systems are decentralized systems that never change. If they change it is because there is governance that plays in the power context.


Why would there be no 'people noticing or caring' about a change?

Everything I see, from Canaries to codesigning, to simple git mirrors make it easy to detect such fraud.

Also, there are many unofficial Bitcoin implementations. And with 'core' being the only 'spec', I know from personal experience that a lot of devs of those alternative implementations, make a lot of 'eyeballs'.


> Why would there be no 'people noticing or caring' about a change?

Because you cannot assume that node runners and miners are spending time in reviewing commits or entering in discussions except when there are issues that are highlighted and amplified by media such as SegWit2x.


There is just no such thing as software that can't change; I realize this might mean decentralized systems are simply impossible, but "it is what it is"?

I do feel you just don't understand this still, though: if the miners all upgrade and you don't it isn't like they can force anything down your throats as you didn't upgrade.

I feel like your mental model is somehow "if 51% of everyone does something invalid then the system is now invalid", but what that actually means is that those people are rejected from your consensus.

So, if all the miners decide to run a different software this is effectively just a different distributed system. Your computer, which is checking everything, rejects all of them and keeps playing with the people who are playing the same game.

You aren't trusting anyone or assuming anything: that wouldn't be decentralized at all really. Now, is any of this efficient? No. But that wasn't a goal ;P.


Pushing code to a repo doesn't mean it's used in prod. It's vulnerable to takeover by a massive single group (though v unlikely and this would ruin the value), or small co-op of the largest miners, but it's vulnerable to that in every sense.

So it doesn't really matter who can push code to what repo. It only matters who can organise the majority of computational power.

I'm not saying it's not vulnerable, but I am saying that investing in taking over btc in order to enrich yourself will by its nature backfire, and that it's not really vulnerable to code change in any way like a centralised system.


>So it doesn't really matter who can push code to what repo. It only matters who can organise the majority of computational power.

No, the economic majority[1] also matters. If the miners decided to hardfork bitcoin and double their mining rewards, and the non-mining users did not support this change, their fork would fail because nobody would accept their coins. This is exactly what happened to the segwit2x fork[2], which was arguably less contentious than doubling mining rewards.

[1] https://en.bitcoin.it/wiki/Economic_majority

[2] https://en.bitcoin.it/wiki/SegWit2x


Yes, this is what I meant as backfire.

Even if all of the miners made a change, if it doesn't align with the public perception, the value will vanish.

The economic majority is basically tied directly to this. It's not only the holders of btc that decide the value. The more it aligns with what the public wants from a parallel currency, the larger the want, and the larger the economic majority. If the miners disalign with the hodlers, it dies. If the miners and hodlers conspire, it still dies.


I guess the piece of the puzzle that I am missing is how does the change go from repo to prod. Do the miners need to pull the latest code from GitHub?


Part of the answer to that question involves (Ctrl-F) "Reproducible builds" and "Verified reproduction":

https://bitcoincore.org/en/download/


So essentially, the onus of upgrading is on the person running the node. Which I guess is the more intuitive solution. But then what happens if someone doesn't upgrade, will they be just shut off from the network till they are on the latest version?


It depends what the change consists of. In blockchain, we tend to talk about "hard forks" vs "soft forks" when it comes to protocol changes.

In a hard fork[0], blocks produced by the newer version will not be accepted as valid by the older version (e.g. increase of block sizes, changes in rewards or additions of new opcodes). This will result in a split of the blockchain, where old and new nodes operate on two concurrent diverging chains. You can think of it as a git fork. A hard fork essentially requires all nodes to upgrade.

Hard forks are generally activated by first adding the functionality without activating it but signalling for compatibility, only actually enabling the protocol change once a subset of nodes have signalled support.

In a soft fork[1], blocks produced by the older version can be deemed invalid by the newer version - otherwise the two are compatible. This means that users don't strictly need to upgrade to participate, only miners do.

So TL;DR, if BTC Core developers released a hard fork, it would only go into effect once it reached majority support among miners. In practice, users and other stakeholders (most notably exchanges) also have an important practical voice in which chain is deemed the canonical one, in case of a split.

[0]: https://www.investopedia.com/terms/h/hard-fork.asp

[1]: https://www.investopedia.com/terms/s/soft-fork.asp


Arguable more important than what the miners run is what the exchanges run.


The truth now though is that those who can “organize the majority of the computational power” are the same as those who can push to Bitcoin Core. One must only look at recent forks to see how this power grab happened.


You’re right, the only thing preventing what you’re saying is the community keeping the leaders in check. But the leaders have way more influence individually than each community member does, so if one with git access to the Core repo is compromised by the CIA let’s say, they can nefariously push for changes that seem innocuous but actually benefit some entity with deep pockets. And most of the community doesn’t review each line of code that gets changed.


I would think, given how popular bitcoin is, every single change that goes into the code is reviewed by hundreds or thousands of developers. Malicious code will most likely be caught, and then someone can just fork it at that point and everyone who cares about their BTC investment will switch over to the new chain.


You're not missing a thing. Bitcoin is sound in theory. In practice, though, humans are very flawed and they tend to submit to authority more than is healthy. In the case of Bitcoin in particular, the Core implementation has been declared the de facto reference client. Meaning, whatever they say goes. This has proven to be detrimental to Bitcoin as Blockstream, a private corporation is the employer of (or was cofounded by) the most influential Core contributors. Those who disagreed with the direction Blockstream wanted to steer the project to, were removed from their authority position. Now as a result, Bitcoin is unable to scale. Blockstream keeps delaying a simple upgrade that would do just that and at the same time, keeps pushing competing solutions like LN and Liquid. I think Bitcoin as an experiment in human behavior was very interesting. But as a revolutionary technology, not that successful...


> This has proven to be detrimental to Bitcoin as Blockstream, a private corporation is the employer of (or was cofounded by) the most influential Core contributors.

This is a false narrative peddled by BCash supporters. The bottom line is that the market had a chance to decide if they want to go the BCash route or the Bitcoin Core route, it chose the latter, now the supporters of the former are salty.


There have been numerous forks. If someone attempt to force in code via intimidation or whatever, the chain can be forked from any block and started up again without that code by anyone.


you can discuss the changes to be pushed, you can submit pull requests yourself and if you are dissatisfied about what gets accepted, you can also run your own version of the codebase with different implementations (lacking updates) as long as they aren't incompatible with the other nodes. (ie a subset of features instead of different features)

if you need me to elaborate on the ramifications/benefits of that let me know.


I would really like to understand the ramifications and benefits of that.


There are multiple competing full clients.


It’s not resilient to outside forces. I would argue strongly that it’s a huge risk to the majority of the population under the consideration of computation complexity.

The computation stack end to end has alarming risks. If the average user can’t read code, then anything they use is a form of delegated trust.

The users trust the wallet software that it’s doing the right thing. The average user does not even know what validation means.

Additionally what is known about computation is public knowledge. What secrets exist within state actors or even possible ET tech that could be used to influence truth with advanced computation?

There’s certainly no guarantee of security within Bitcoin or the network. It shifts the trust model at the most.

In another perspective, the amount of individuals who understand cryptography are quite low for the entire human population. Combine cryptography with hardware and software and that’s the small percentage of people who truly “get it” and are also specifically the ones entrusted as the leaders of all. The attack vectors are large.

In order to fix this we need to reduce complexity across the stack end to end. Every individual should know how to build their own computer without having to trust any hardware or software manufacturing.

I’d argue the stack is needlessly complicated end to end. Individuals add complexity by allowing the conceptual model of computation to remain complex within their tooling and then adding their own esoteric layer on top. It’s a house of cards.

Here’s a good post by Bruce Schneier https://www.schneier.com/blog/archives/2019/02/blockchain_an...

Would I keep a significant portion of net worth in bitcoin? No.

Would I use it to make a payment like PayPal? Yes.

I do not trust anything with computation today. It is compromised end to end.

As long as the Internet depends on BGP and ISP’s there’s no true decentralization. We need ad-hoc mesh networking with deterministic address spacing. Doing so behind some type of one-time cryptographic address that maps to an IP would be interesting. A few projects are experimenting in this path. Yggdrasil looks promising as an algorithm. Ouroborus has an interesting novel stack based on recursion.

I mention all these things because it’s exactly the reason why bitcoin is not safe or to be trusted. The cult behind it doesn’t help the fact of the fragility of the situation. Much of the cult are increasing the risk of other individuals by preaching trustless models.


That's ten+ years of wasted resources due to "intellectual property". Imagine the total global losses due to this coercive construct.


I frequent several datacenters in the Pacific Northwest; a couple of them are near the cheap power available in the central part of Washington State. We're on friendly terms with the staff and we talk about their other customers in general terms because it's nice to have a feel for who your neighbors are.

Two years ago the datacenter owners were contemplating whole new buildings. "We're going to run out of room next year, so we're planning another quarter million square feet down the road a bit." That expansion didn't happen. The space they opened up internally remains largely unused. One of the cages next to ours had a bunch of bitcoin mining racks, clearly at the DC's capacity for cooling . . . and they were unplugged because the customer hadn't paid their power bills. The DC wound up tossing the machines away after a few months. That parcel of land "down the road a bit" remains vacant.

I think the bitcoin "resource losses" go much, much deeper than an algorithmic tweak that would have been taken for granted a few months after introduction. [Okay, 25% is a good optimization, but it wouldn't have changed the basic game, nor the character of the companies involved]


These optimizations have applications outside of Bitcoin too, and even outside signature verification (Eg: ECDH)


It’s interesting that they were keeping the change in reserve for expiration day. I wonder what else is being kept in reserve that could enhance bitcoin?


Schnorr signatures were also kept in reserve for many years due to a patent that recently expired. Should be merged in the next major feature release.


Not that recently... The patent expired in 2008. Schnorr signatures were implemented in the Bitcoin Cash chain in May 2019, and Schnorr multisignatures in November 2019.


Schnorr signatures are sort of a challenge to use, unfortunately.


Schnorr signatures (e.g., Ed25519) are just another kind of digital signature, there's nothing that makes them more challenging to use.


There is nothing more challenging about schnorr signatures themselves, but 100% of the lauded "advanced" things that can be done with a schnorr signature over ECDSA-- such as threshold signatures-- as substantially more complicated and error prone.

Until recently (or still) pretty much none of them had production usable implementations anywhere for any application, and most academic coverage has mostly been a glib "trivially you can do that"-- ignoring that naive "obvious" implementations end up being completely insecure.


As someone familiar with bitcoin but not cryptography, in what sense is it more challenging to use?


Schnorr is most useful when used as a multi party signature. It works how you would expect it to, you can literally take a bunch of people signing the same message and end up with a single signature at the end by adding them all together. However this is annoying to do in practice because it requires back and forth communication between every party to produce the signature, which precludes its use in something like a hardware wallet where a user manually confirms a signature, as they'd have to do it many times.


I wonder if this is something a hardware wallet provider could solve on their end in the software. Like one signature is a go for subsequent needed signatures as long as nothing changes with the transaction or something like that.


Possibly, it still has the expectation that all parties are online to some degree which isn't something we have in Bitcoin today, where signatures can be added even years after the fact when needed. None of this is killer or a reason to not use Schnorr, it's just not quite as much of a magic bullet as people originally expected. To my knowledge this wasn't a very well known property until anybody had implemented it for bitcoin, I doubt it was ever used once it was patented.


"where signatures can be added even years after the fact when needed"

Why would you need this to be the case? In my mind (im not an expert) I just imagine schnorrs batching signatures into one tx on the chain. And then its done. Why would you need to add years after?


Signature aggregation would be only on a transaction level, not on a block level as you require interaction between all signing parties, and any party can block the signature. You would also have to have some system of making a block, then everybody re-signing their transactions to make the block aggregated- it's just not happening.

In Bitcoin today we can do things like make a conditional signature in a multi signature. With three parties, one can pre-sign a transaction and lock it until a future date, then hand it to the other parties who can sign it at their leisure when that time is elapsed. This would not be possible with schnorr unless you also had the expectation that all parties would be online when the lock time expires.


Your comments are unintentionally misleading people, see vmception's comments above.

Yes, to get the space/validation improvements you can get from schnorr you need interaction. But it's perfectly possible to use it in the same way as ECDSA, it only adds options, it doesn't remove them. For some applications the requiremetn that the participants isn't a big deal and they can enjoy those benefits, otherwise they don't.


It is sad that bitcoin's solutions have a liveness expectation, whereas other chains have a lot of competing solutions where only some of those solutions have a liveness expectation

It is like watching a state-capital system versus a free-er market compete.

People in the state-capital system have completely binary things to argue about, with dissidents being shunned while everyone is stuck in a quagmire of false dilemmas. Third and fourth and additional options are not considered.

Whereas in the free-er market, people are allowed to take risks and fail, fail with LOTS of money and value, and iterate en masse towards solutions that are most "useful" ideally, but also service a variety of use cases.



>...that could enhance bitcoin

It does not its irrelevant it chances nothing about bitcoin or its limits. Its a client side it does not speed up usage or something the CPU just useless less cycles and idles more.


It reduces synchronization time substantially, as it involves literally billions of signature verification operations.


So what? It changes nothing at all. Block time/confirmation time is still the same/fees still explode if transaction reach the limit. Its completely irrelevant from a user PoV.


Given that the network is checking constantly from numerous sources. It's a pretty significant improvement in efficiency.


Users still need to be able to verify data independently.


Not really, but they can if they want and still can with the "new" code it changes nothing.


ECC patents killed ECC, before quantum computers do it.


Uhh, ECC powers most cryptographic stacks out there. Most TLS connections use DH over some elliptic curve, for example.


Why was a patent even respected with a decentralized system that doesnt even have cash flow/profits?


Many of the core developers live in the US jurisdiction under a public identity. Many of the major corporations in the space such as BitGo and Coinbase also are in the US jurisdiction.

If everyone is anonymous, you can probably ignore the patent. But if you want legitimate businesses to be able to use the software, you need to respect the laws in which those businesses operate.


Yeah that makes sense. Better to play by the rules even though they could so easily just push it through anonymously and there's nothing anyone could do about it. But its better for the image of Bitcoin and of course the known teams behind the updates.


No, the point is that "there's nothing anyone could do about it" is absolutely not true.

Sure, somebody could anonymously push a patent-encumbered solution and make it available to the public, but there's a lot that could and would be done to prevent the public from using that solution if the patent owner (or whomever they sold the patent to) wanted. That would just create a "poisoned" version of the software that's taboo for every legitimate user because it opens them up to a cease&desist + requirement to pay fee+penalties for previous use.

For starters, if running a full node required to run patent-encumbered software then (no matter if that software was published on the internet) all the legitimate exchanges would be prohibited to use the software, and any US merchants would be unable to accept bitcoins, since they can't use the software anymore and any USA payment service providers who could handle the transactions for them would also be prohibited to use the software without licensing the patent.


Because violating it would nevertheless cause very real problems for the developers, businesses, and perhaps even users with public identities living in jurisdictions that might come after them for it?


Because businesses use the software as well? If you want to promote the usage of bitcoin, the last thing you want to do is scare away businesses from using your software.


Can anyone speak to the possible energy savings this change may provide?

Or is BTC too fundamentally tied to CPU-bound work?


There will be energy savings for the nodes that have a copy of the blockchain and need to verify transactions but not for the miners.

Market forces fundamentally tie the energy consumption of the miners to the price of bitcoin.


You can't save energy in bitcoin, because proof-of-waste is intrinsic to it's functioning and the difficulty adjusts to keep it that way.


Bitcoin miners are utilizing excess energy that would otherwise have gone to waste. So there's nothing wasteful about it. In fact, miners must be as energy efficient as possible in order to remain competitive and profitable. Typically excess power is the cheapest source because there's no demand for it, hence why efficient miners use it. Check out great American mining[1] for example. They harvest wasted energy from gas flares to power bitcoin mining rigs.

1. https://gam.ai/


This is basically false (some miners might do this but they're a minority). Almost all bitcoin mining happens in China, and happens in an area where a large fraction of grid power comes from coal. Using excess power doesn't work well for bitcoin mining because the power draw is constant: miners are generally not powered on or off over the coarse of a day: they're turned on and not turned off until they're decommissioned.


Even with free electricity, the embodied energy of the computers used is basically wasted. A simple notary service that signed transactions with a timestamp and published a record to a public data storage bucket could handle worldwide bitcoin transaction volume running on a single machine, if you traded proof-of-waste for a simple root trust store.

(I mean, if I wrote it it would probably take several hundred machines but I'm sure Satoshi or some other brilliant programmer could fit it on a single machine. It only processes what, 5 transactions per second? My first dumb cellphone might be able to do that many signatures per second if someone could figure out how to compile the relevant libraries to run on it.)


Goodluck with that idea. I'll be sure to check back on this next year to see if anyone has made progress on it.


Personally, I prefer to use a variety of proven private ledgers with a variety of trust roots, independent audits, and insurance. Using a public ledger is not something I would invest in. I'm just saying Bitcoin is a wildly, incredibly inefficient public ledger service.


Bitcoin miners are the ones that use the energy calculating the SHA256 functional. The cost of the function is not relevant to energy use as competition between miners means the energy used will match the value of the block reward.

This optimizing is for the users of the bitcoin network that must validate that the rules are being followed so they can reject any miners that do not follow the consensus rules


This only helps nodes verify blocks, the mining is what uses huge amounts of power and that won't change.


ecdsa speed is related to client performance, it has nothing to do with the power consumption of proof of work.


This is not relevant to bitcoin mining. Just synchronization.

The mining is no longer (for 7 years or so) done by traditional CPUs. People use ASICs


Note that this is not mining, just running a full node. When running one, signature verification is most of what your CPU is doing.


[flagged]


They can't scale to replace fiat, but they can scale a lot more with off-chain (so called 2nd layer) solutions.

Not all PoW based coins have rewards going to zero; some have so called tail rewards and others even have constant reward like 1 coin per second forever.


Literally no one uses lightning network.


False. Tons of people do.

Post an invoice of 1,000 sats here and I'll send some Sats your way.


Let me rephrase the previous statement that the other person made.

Very few entities of any important use the lightning network.

And by "of any important" I am referring to actual, real life merchants and point of sale devices.

Let me know when actual physical locations are accepting lighting transactions, in the same quality as however many merchants are on BitPay.

The whole point of this stuff, is to actually be able to buy and sell real life goods. And on that metric, the lightning network is indeed used by very few people.


Number of people who use lightning network and don’t know how to use a terminal is probably less than 10.


Not even darknet markets - the original (and only?) bitcoin use case - use it.



"in the same quality as however many merchants are on BitPay."

On that metric, the link that you posted fails.


[flagged]


Paid or unpaid is the real question.


lnbc10u1p0hpjd0pp5v24thtajfjqgdsjf8csmmd5d0u3hm5a2rmnl69x4gyeh2ldg7nwsdqu2askcmr9wssx7e3q2dshgmmndp5scqzpgxqyz5vqsp5g54ym04gnxufkq59vqg7a0l3gtvmyah7xal2qkdg9stcmqe4x9ws9qy9qsqk5pxlr2prtn87zjxrrqu5h3m3q02y0ds7vufh07rcs6h0uwqxz28tfcylrrxkzq98stvz8wh3zzzzxmahaf97k2x34xv7xls04h4n4gq9c6d49

send me one for the same amount and ill send them back :)


No thanks. I don't have any use for it nor do i want to deal with that capital gains tax nightmare.


I do, if anyone wants a 100 satoshis just paste your lightning invoice request below as a comment and I'll pay you 100 satoshis. (download the wallet of satoshi app)


I've been wanting to try this: lnbc1u1p0hphp0pp5dp6fyfuttast7jnxd2qf3sd2q7lwsw6xwsfr3ng5ajz3qfsajrzsdqqcqzpgxqyz5vqsp5pqzhlpxnlu86aa5g9rw6wwzddfwx9jex7enft689vxtu62n9f2rq9qy9qsq08ncw74lylcsy2ehn3ymfj4mfj667n0gnhgl8q6xsvyven77n67kvx3vga4v0c97cyatv292w3p5zagm7japmgvajtqezwy42j659mcpxnndzv


looks like this website is shit at pasting long strings of unbroken text correctly. try messaging me on twitter or reddit with a new payment request

https://twitter.com/F_D_KB https://www.reddit.com/user/Fiach_Dubh/


How do I cash out those 100 sats?


gotta close the channel with your own full node lightning wallet setup, or your custodial wallet. or collect enough sats to buy something from someone like bitrefill


Imagine having such a minimal understanding of Bitcoin yet feeling entitled to post your inconsequential opinion online.


I wonder many miners have already been using this optimization for the advantage.


Probably none, as it has little to do with mining.


I like to use Bitcoin as cash. Bitcoin Cash. BCH. BTC has been stifled at the base layer so that the devs can make money off layers on top of the base layer.


1 BCH = 0.02098481 BTC




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: