Hacker Newsnew | past | comments | ask | show | jobs | submit | eoo's commentslogin

Bitcoin is as obsolete as POSIX. It's ossified, and not changing is a feature.


Terrible POSIX, 50+ years later it's everywhere. Any project can only hope yo be as successful


…that was the parent poster’s point, I think?


It is actually terrible and outdated, and very few systems implement all of it.


Systems such as Linux, MacOS and windows? All terribly broken and unusable. Seriously you need better sources or more experience. POSIX is alive and doing better than ever.


> Systems such as Linux, MacOS and windows?

Of them, only MacOS implements POSIX fully. Windows doesn't. Linux implements a subset.


Now we're splitting hairs, Linux is POSIX compliant, but not certified as certification costs money. Windows is also compliant through Linux subsystem. On Linux side there are also distributions which are POSIX certified which then makes Linux certified as well. It's just the windows, which also was certified at one point, early 1990s and air force. So that makes me right?


Linux is mostly compliant, which doesn't mean fully compliant (but there are distributions that are fully compliant).

Windows isn't compliant, and "compliant through WSL" doesn't really make it compliant.

So that makes me right. Your opinion may differ, of course.


Bitcoin isn't POSIX, it's UNIVAC.


On the contrary, Bitcoin is the only cryptocurrency innovating right now.


Not exacly posix isn't 100 times slower and 100 more expensive that other is more inconvenient standard, becouse is simply old standard, bitcoing is a product in itself not a protocol,and this product don't fulfill the need for fiat currency becouse is expensive to transact, and slow te best you can say is that is difficult to make changes but bitcoin isn't exactly the one of 10 years ago, protocol change to acomodate for more transactions and most votes are concentrated in few minority of big stakeholder, making kmposiblw to reduce comitions or change significantlythe protocol.


- Why is KyuWeb limited to HTTP/1.1?

- This might be a silly question, but could you explain to me why did you pick a new header, instead of something like `Accept: text/kyu`?


> Why is KyuWeb limited to HTTP/1.1?

Because HTTP/2 requires encryption. … Or so I thought. As I was double-checking my answer, I found that it looks like that is actually no longer the case: https://http2.github.io/faq/#does-http2-require-encryption

Given that, I might re-evaluate stopping at 1.1 in the future. But let's keep it there for now.

Why do we not want to force encryption? Because modern encryption algorithms can be dog slow on old 16-bit systems and effectively impossible on 8-bit ones.

But for clients and servers that support it, SSL/TLS encryption will work the same way as it does for HTTP.

> This might be a silly question, but could you explain to me why did you pick a new header, instead of something like `Accept: text/kyu`?

Because that header is supposed to specify a content type(s). If I were creating a new content type as part of this, I might use it, but the idea is that KyuWeb documents are just Markdown documents, nothing more. Thus `text/markdown` a more correct value for the `Accept` header.


Regarding the distribution of users on Mastodon servers, the article seems a little biased. The author complains about how "an average of six hundred users per server" doesn't look like "every user knows the system admin where their data is stored". The median users per server would have been a fairer metric than the mean, specially because it later points out that three servers have over 50% of the users in the Mastodon ecosystem...


Needs cost-based querying paid for with lightning network to be viable at scale.


Why is that uniquely the case here?


AFAIK Digital Ocean blocks outbound connections to port 25. Has the author actually tried this setup?

Source: https://docs.digitalocean.com/support/why-is-smtp-blocked/


I run a production email server on Digital Ocean and have not experienced this issue.

An issue I have experienced is that one email provider (who provides a white label service so that small regional ISPs can include a free email account to their customers) has blocked anything coming from DO's IP block. Ultimately my solution is to route those emails (and only those emails) through mailgun.com. The other 99.9% of my outbound email gets delivered directly to the final email server with no issues.


> one email provider has blocked anything coming from DO's IP block.

Me. It is my consistent experience that traffic from DO's netblock rarely (actually never IRL) brings good tidings.


It works perfectly yes. Maybe it’s not fully blocked, or DO restrict the amount of traffic over :25


> Even on accounts where SMTP is available

I don't know what those accounts are but you shouldn't make statements that are only partially true.


I heard that truffle is a little outdated unfortunately, and doesn't add much value nowadays over hardhat.


Do any frameworks add essential components over bare web3js?


The two coolest things about truffle, IMO, is the debugger, which lets you debug/step through past transactions, even ones on mainnet, and the --dry-run feature, which lets you run your deployment against a local copy of a real network, without syncing the whole blockchain.

Both those features lean heavily on the work I do on Ganache, an Ethereum simulator that has all sorts of nice development features that a public node doesn't.


ganache is the standard, thanks for building ;)

1. we're starting to see the emergence of next-gen managed crypto cloud, so one can just start building on alchemy free tier for example, i can still use truffle in my dev env, but i can also just roll the functionality i need natively to the cloud

2. solidity packs a lot of fintech logic in a concise amount of code. an experimental auction dapp came in at like 150 lines. i'm not exactly building Compound here (yet)!


Truffle gives you a local Blockchain to develop on. Web3js gives you a way to interact with a Blockchain.


Breaking down Google is not gonna work.

I guess that the simplest solution is to forbid Google from being in the ad exchange business. Take down AdX and most of the monopolizing effects they have on the ecosystem would be dampened.


Splitting Android and Chrome would be good enough for a start.


Better to split off YouTube so it has to compete with search for ads.


I think this will potentially be the lawsuit of the year. Really interesting read.

A lot of the monopoly advantages seem to focus on AdX. I wonder if demanding that Google shall not participate in the ad exchange business could slowly open up competition in all the other markets...

For example, they were concerned that header bidding would make AdX fees go down to 5% instead of 22%, thus they used their advantage in the ad server market to stifle this (plus the FB deal). They are able to do this because they control both markets and can modify the data protocols between these two pieces. Same applies to scrambling IDs (ad servers and display markets)


An NFT is a virtual title of ownership on a blockchain, that's it. You don't own neither a string or an image or a JSON.

https://eips.ethereum.org/EIPS/eip-721


It's actually simpler than that. It's just an entry in a database with your name attached to it. It's like an autograph.

Why do database entries have value? Well, usually because there are processes attached to them. Often it is as simple as having a court enforce the process.

I don't know why but the whole cryptocurrency space feels like a philosophical parody of the real world. Money without people. Contracts without enforcement. Ownership without property.


They have value because people agree they have value. Trusted third parties (like courts) help people come to that agreement, by providing transparent, objective processes to settle legitimacy and ownership disputes (in the happy case, in the not-happy case they use physical force to reach agreement).

Personally I don't understand the controversy, blockchains are a different kind of trusted third party that also help people come to agreements, by also providing "transparent, objective processes to settle legitimacy and ownership disputes". These third parties aren't mutually exclusive, and the role of blockchains/NFTs aren't fundamentally different, they just use novel means to help people come to agreements, within the same social constructs we've always had.


The problem with using NFTs to verify ownership is that they actually make it much harder to resolve any disputes. An NFT can't be transferred or modified without explicit permission from the owner of the NFT, which means that any dispute is impossible to resolve without bypassing the NFTs entirely.

For example, let's say you have an NFT that represents something tangible (and not just some link to an image download). What happens if the owner of the NFT dies without setting up a way to transfer their NTSs? What if multiple, seemingly valid NFTs point to the same object? What if the NFT was never truly valid in the first place? What if an NFT is stolen?

In all of these situations, a third party (like a court) would have no actual power to fix anything within the NFT space. A hard fork is theoretically possible, but that becomes impractical to do every time someone has an NFT dispute. The only option is to just declare an NFT invalid. But if you have some third party that controls the validity of NFTs, then you might as well cut out the NFTs and just rely on the third party.


I think you're misunderstanding my stance here, I'm not arguing that NFTs are always better than other trusted third parties. I don't know enough about their details to make a claim like that.

In the terms of what you're saying, I'm arguing that the space of scenarios in which people can't come to an agreement is different for NFTs vs. legal systems, because NFTs provide some self-service mechanisms for proving ownership and legitimacy. I'm sure those come with tradeoffs, as you've mentioned. I'm not in a position to weigh those tradeoffs yet, nor claim that one is always better than the other. I think it's too early for that.

More concretely, courts, NFTs, et al are tools for reaching agreements. There's no reason to dogmatically cling to "on-chain" if it's not helping reach an agreement, and there's no inherent reason things can't be mixed between on-chain and off-chain, just as agreements can be made in court vs. out-of-court.


Right! Which is why NFTs are specifically not representing anything physical (despite certain people within the space admittedly pushing this misguided notion). They work because the NFT itself, the ledger entry, is valuable.


>I don't know why but the whole cryptocurrency space feels like a philosophical parody of the real world. Money without people. Contracts without enforcement. Ownership without property.

The common denominator between these being: process without purpose.

And this is why the parody works so well. The world is already like you describe, though it's hard to notice if you view it through the rose-tinted glasses that the ever-shrinking in-group is more than happy to sell to you for good "old" fiat money. (If 50 years ago is old.) Neoliberal "infinite growth" capitalism is already an inter-generational MLM, sanctioned by a global monopoly on violent enforcement. All power grows out of the barrel of a gun, and we have all become so delightfully non-violent... The logical conclusion: Oceania, Eurasia and Eastasia locked in perpetual war upon the background of a collapsed ecosystem?

Well, fuck that. Techno-capitalistic nation-states are an early-stage performance optimization. And since violent uprisings lead nowhere, we're doing the sane thing. We're refactoring 'em the fuck out of existence.

If "having a court enforce [a] process" is "simple", how come so many people already have "avoid courts", "distrust lawyers" as rules of thumb, and "don't side with authority" as a general life principle? For the marginalized majority, every state is a failed state, and every system is hostile and oppressive. The thing everyone's getting out of crypto is the same thing they've been getting out of all the other silly pyramid schemes, from Tupperware to contraband. Which is to say, the same things they've been aggressively denied by the state-sanctioned economic mainstream.

Hope. Opportunity. A voice.

A functioning parody of existing economical processes gives people the hope that there's a better economic system right around the corner. Maybe we just have to collectively sort of stumble into it.

Of course, it's only that simple if you have a simplified view of human creativity. But that's OK, too. Every invention that truly revolutionized our way of life was a somewhat accidental result of thousands upon thousands person-hours of organized research. And that's exactly what we're doing here - about as haphazardly as virtually any other kind of software development, but at the same time crowdfunded on a global scale.

Today, we're offering people the same sort of economic "junk food" that the current system has gotten them addicted to for the better part of the 20th century. Tomorrow, someone finally sneaks distributed consensus technology into the mainstream, and makes the world a little less corrupt.

It's beautiful.


thats too simple, its more than that given some people attach varying value to it.


It’s a very expensive, publicly broadcasted and “socially agreed upon” (by everyone who thinks they are worth money) version of calling “dibs”.


There's a non-sequitour in your depiction of an attack. Gaining 50% of hashing power is not that interesting unless you really want to prevent someone from using their Bitcoin. And you can only prevent them from using it while your attack is sustained. When someone has gained ~50% of the hashing power, they only can do a small number of attacks [1], that are only profitable under external conditions, and even then, extremely risky unless you have a lot more than 50%.

There really are no arguments for a race-to-the-bottom boundless energy spenditure. The equilibrium point is the market's appreciation of the service of securing a network of inflationless, politically neutral money, which is a pretty cool thing to have in our world of tyrannic governments.

[1]: https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_...


I didn't say 50%.

Simply, there is some level at which an attacker has enough computational power to pull off an attack, and such an attack is fought off by the legitimate participants in the network having enough computational power to make the attack unfeasible. Whether that's 50%, or even lower as the section you linked to suggests ("someone with only 40% of the network computing power can overcome a 6-deep confirmed transaction with a 50% success rate"), or higher as you claim, that point exists.

The service of securing the network, as you put it, consists solely in having enough non-malicious computational power to make attacks unfeasible. Right? Or is it something else?

If it does, then my argument stands. In order to be secure, Bitcoin needs the legitimate participants of the network to out-compute the illegitimate ones. Whether that's a one-to-one race, or a ten-to-one, or anything else, doesn't matter. The euphemism "securing the network" means nothing other than amassing computational power.

If it is really true that attacks from attackers having lots of computational power are infeasible, and that it's not necessary for the network to have lots of computational power in order to "secure the network," then, quite simply, proof-of-work Nakamoto-style mining isn't necessary at all. You can do something like Stellar or (as I understand it, which I admit is not well) Lightning where transactions are confirmed and protected against double-spend by defining the problem in a different way that doesn't require mining. If that approach indeed works, then the objection in TFA stands - the spec should not encourage proof-of-work systems.

Frankly, given that we're talking about decentralized identity and not about currency, and there's no double-spend equivalent in proving one's identity (I think?), it seems like Nakamoto consensus should be totally irrelevant here. Maybe inflationless, politically-neutral money is a great thing to have as a form of money, but what makes it a great form of decentralized identity?


1. My point is that you lost me here:

> This immediately produces an incentive for both the network to make use of as much computational capacity as possible to keep itself safe, and for any attacker to amass enough computational capacity to mount an attack

This seems false to me. Could you elaborate on what incentives you see at play here?

On another note, I feel one of the finest design details of Bitcoin is that its "decentralization-failure-mode", a.k.a. under a 50ish-percent-attack, is technically indistinguishable from normal operation.

2. The DID spec doesn't require the use of Bitcoin. So we agree with your last statement-disguised-as-question. Thus, it shouldn't have been listed as a reason for the rejection of the proposal (which spawned this thread)


1. Are we agreed that "securing the network" means "having enough computational power that an attacker cannot out-compute us," and conversely that the security threats that Bitcoin protects against are via attackers out-computing the legitimate network? And that these measurements of computational power are opposed to each other (i.e., if the legitimate participants have more and more computational power, attacks are harder, and if an attacker has more and more power, the network is less secured)?

If yes, doesn't it follow that there's an incentive for the people who want a secure network to secure the network - by gaining more computational power - and for the people who want an attacked network to prepare to conduct attacks - by gaining more computational power?

(If no, again, why Nakamoto consensus instead of something else?)

2. Correct, but there seem to be multiple "blockchain" methods listed at https://w3c.github.io/did-spec-registries/#did-methods , and the spec itself suggests that you can verify a signature from a revoked key if the signature was timestamped via a ticking blockchain (like Bitcoin's).

If it's true that the spec doesn't require the use of Bitcoin or other Nakamoto-style blockchains, which I agree seems to be the case, then I agree with you that it shouldn't be a reason to reject the spec - but also it seems like the reviewer's comment could be easily addressed. Just say that the W3C won't standardize any Nakamoto-consensus-based specs because the technology is wasteful and not specifically helpful for this particular purpose. (The reviewer is also asking the W3C not to standardize any centralized specs, like the ccp/Baidu one or the GitHub one, which also seems like a reasonable request and an easy thing to fix.) Then the reviewer could withdraw those objections.

(Note that for timestamping, Certificate-Transparency-style logs can address that without mining: https://transparency.dev/ Right now the spec says "for example, it was anchored on a blockchain," without defining the word "blockchain," which most people interpret as a Nakamoto-style one. IMO it would be good if the spec instead mentioned CT-style logs. It's a small change, it wouldn't change the semantic content of that sentence, and it would address the objection that the spec encourages technologies that require mining - it's the only mention of blockchains in the core spec.)


1. I'm not sure we agree on that... Bitcoin doesn't protect against attacks, it provides you with a relatively simple model to measure the cost of attacks.

At equilibrium, any Bitcoin network participant will look for two fundamental things: (a) being able to move their own assets and (b) relative market price stability of their bitcoin. In case of a sustained 50% attack, both properties start to crack, but not completely. But after the attack, they are regained -- (a) immediately, and (b) eventually.

Consider the attacker to be a government, for example, an actor with a relatively high amount of resources, and the Bitcoin participant a dissident citizen of such government. The dissident wouldn't like to have its assets frozen by the government (through strict censorship of the dissident's transactions), so the market value for Bitcoin drops comparatively to how wealthy was the dissident selling its bitcoin savings. But, also, the dissident might avoid selling if they have enough financial capacity to withstand the attack.

In order to carry out such attack, the government needs to increase its energy spending on Bitcoin, up to the point where the attack is successful for a prolonged period of time. Bitcoin production is intrinsically bound to energy generation, thus to its economic realities (variability of demand, climate conditions, political affairs, just to name a few).

It would cost a government X dollars a day, or Y watts a day, every day, minus the price of the coins generated to attack the network. I estimate X to be the total miner rewards: at the time of writing, 38M USD [1]. Y seems to be at around 456 GWh [2]. Is it worth it for your adversary? That number is the dissident's security parameter. As long as their savings are less valuable than the cost of the attack and they can sustain the attack financially, the dissident should be fine (or really scared about an enemy irrationally spending a lot of energy/money with the purpose of just preventing them to access their money temporarily).

In the end both miners and users just want the chain to move forward. If one particular actor or coalition potentially prevents it, users/miners outside the coalition (if they detect it) would raise their investment to continue chugging blocks.

I think there are no "legitimate" vs "attacker" uses of hashing power. It's more about coalitions between miners and how costly/profitable would it be for them to centralize the network, and how hard is it on the other participants to coordinate a decentralized counter-attack (which ends up profiting them). But eventually, the equilibrium between all participants is to spend as little money/energy as possible. And if it's not decentralized it becomes censorable: next, it loses its value: now who's gonna want to mine something worthless?

2. We see it the same way. I'd add that if Bitcoin is staying around (I don't think it can be shut down), one solution is to use Open Timestamps or other hacks that don't require "block real estate", thus in no way compete with transactions, essentially piggybacking the PoW and getting the timestamp for free.

[1] first result I got for "block rewards Bitcoin last 24 hours": https://bitinfocharts.com/bitcoin/

[2] first result for "24 hour bitcoin consumption watts": https://digiconomist.net/bitcoin-energy-consumption


Which is why, almost tautologically, it doesn't matter the power expense of blocks or even individual transactions.

If a micro-coin becomes possibly promising, someone will dump 12gW into it a year until the consumption matches it's appreciation. May as well have the work be useful or artificially difficult for good or better reasons.


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

Search: