4 ms·
There is absolutely 0 need to use a blockchain to sign something :facepalm:
by radicalbyte 4y ago
There is absolutely 0 need to use a blockchain to sign something :facepalm:
- legutierr 4y agoSure, you don't need a blockchain to sign something, but using a blockchain means that the signature is timestamped in an incontestable way, massively replicated and made globally retrievable. It also helps mitigate the possibility that the content will be deleted or suppressed.
- infotogivenm 4y agoNo blockchain in the world could store the hash of every post ever in a “retrievable way”. Even Elon understands this. The valid ideas that apply here are global labeling and account subkey ordering. I have never seen a solution for either that is end-to-end without a client syncing gigs of data, so various intermediaries are always trusted. In practice a federated (“permissioned” I suppose) audit log is better, cheaper, and doesn’t require your users spend tokens if you want to go down this path. Then of course there is the UX question of the validity of using the same keys you use to make irreversible financial transactions to sign your tweets.
- legutierr 4y ago> No blockchain in the world could store the hash of every post ever in a “retrievable way”. Ethereum processes about 1MM transactions per day right now; other blockchains have higher throughput. It currently manages about 100MM accounts. Sure, I suppose that might not be enough to hash and sign all blog posts ever (has anyone ever counted?) but you could timestamp a lot of them. > In practice a federated (“permissioned” I suppose) audit log is better, cheaper, and doesn’t require your users spend tokens if you want to go down this path. Someone has to pay for the servers, etc., right? What's wrong with paying for that using a token? Blockchains may be expensive, but you get orders of magnitude more redundancy, and you don't need to worry about ever losing access. You get what you pay for.
- infotogivenm 4y agoThis is not my understanding at all. Blockchains (speaking broadly) are based on an incentive economy which often historically struggles to support itself via its own transaction volume. What happens when a coin is no longer profitably mined, e.g. if no one wants to buy them? What happens if, one day, there is no node that feels like serving your request? The data is gone. All gone. There is no system that guarantees redundancy, just upload and pray that the economy sustains itself. I can appreciate this is much less of a problem for the more popular chains, but in any case, there are wayyy more than 1M tweets a day.
- legutierr 4y ago> What happens if, one day, there is no node that feels like serving your request? The data is gone. All gone. One stated objective of the Ethereum project is to ensure that a whole blockchain node can run on a consumer PC. This does limit how much data can be stored, but it also means that if you yourself are interested in keeping a copy of the data, you can run a node yourself. As it currently stands, there are tens of thousands of identical copies of the Ethereum blockchain that are distributed around the world. It seems very unlikely that the data will disappear within our lifetimes. > There is no system that guarantees redundancy, just upload and pray that the economy sustains itself. I don't know if there are any guarantees in life, but the ongoing availability of Bitcoin and Ethereum blockchain data seem to be as close to it as you can get, given how many copies are already out there, and the ongoing incentive that exists to keep them up-to-date. Do you really trust, say, Google Cloud (or any Google product) to last as long, given their history of shutting things down arbitrarily? Even AWS's services are subject to prioritization decisions made inside Amazon. How can you really know whether or not the service you depend on is profitable enough to ensure that it won't be discontinued? Or that some corporate VP whose bonus depends on the success of a competing product won't make it his mission to shut your service down? > I can appreciate this is much less of a problem for the more popular chains, but in any case, there are wayyy more than 1M tweets a day. You can't run a service like Twitter on Ethereum, but you can timestamp more valuable content that is generated at a lower volume. A specialized Layer 2 application chain that runs on top of Ethereum could conceivably be built to handle larger volumes at lower cost, however.
- acdha 4y agoSo would basic PKI or a Merkle tree, but those would be orders of magnitude less expensive to operate and more robust. For example, how many posts a day does Reddit have? It’s far from the biggest social network but would swamp any public blockchain, and none of that is necessary since you’re really just looking for a third-party to say “we verified signature X at time Y” (they’re not vouching for the content). Federation works well for that since you don’t otherwise need a global public namespace.
- legutierr 4y ago> So would basic PKI or a Merkle tree, but those would be orders of magnitude less expensive to operate and more robust. Almost every argument I have on HN with blockchain skeptics boils down to the skeptic pointing out that if you unbundle blockchain component X, Y or Z to use it independently from the rest of the blockchain system, it would save money. Yes, if you extract the PKI and Merkle tree out of the blockchain system, and operate them on your own, it may save you money in terms of infrastructure cost. But then you would have to figure out how to manage the PKI and the Merkle tree. A blockchain gives you both of those things, plus massive replication, high availability and audit-ability built right in, as well as well-defined and decentralized public interfaces that make it easy to interact with the system, and you don't need to manage any of it. And what's more, the blockchain gives you a built-in way to pay for services rendered by diverse and decentralized set of service providers, without needing to engage with a middleman, or depend on any single service provider. People complain all the time that AWS is too expensive, and that there are more economical alternatives providing comparable services—but there are still millions of people who are willing to pay Amazon for the convenience. How is that any different than paying a blockchain network for a similar convenience?
- acdha 4y agoIt comes back to how well you understand the system design. The major public blockchains impose massive penalties on the people using them because they’re trying to avoid things like trusted third parties. That’s an interesting problem from a CS perspective but it’s not a problem most people have or one which blockchains solve in scenarios where not everything is on the blockchain. That matters because the costs of transactions are much higher, overall system performance is much lower, and reliability is lower. You can no longer operate offline, maintaining your own nodes becomes expensive, and that extra infrastructure isn’t buying you things which most applications need. Going back to the AWS question, if I need immutability I can use QLDB to log my transactions. It’s cheaper, scales really well, has excellent support, and I’ll never have a business operation fail because some grifter is minting a bunch of NFTs and temporarily overloaded the network (Solana) or made it unaffordable (Ethereum). There are very few businesses where it’s not a better deal to go with a more predictable system based on your existing legal relationships, especially when it’s also the cheaper and safer option.
- yencabulator 4y agoYou don't need a blockchain for getting a signature timestamped. https://blog.cloudflare.com/roughtime/ https://blog.cloudflare.com/roughtime/ Massive replication is cheaper and easier without a blockchain.
- czbond 4y agoAgree - the signing part doesn't, the suggestion is to use Web3/blockchain as a method for others to verify secondarily the hash is from the author. It used to be email was unique, and public keys shared for verification. Author is suggesting by placing the hash of the content on chain, anyone can independently verify it. I think it is novel
- mananaysiempre 4y agoTimestamping, so that people can know whether the signature that claims to have been made before revocation actually was, is one reason you might want to. Happily, that idea has been implemented on the Bitcoin mainnet and available as a free service for several years[1,2]. [1] https://opentimestamps.org/ https://opentimestamps.org/ [2] https://petertodd.org/2016/opentimestamps-announcement https://petertodd.org/2016/opentimestamps-announcement
- radicalbyte 4y agoExactly the same thing can and is achieved with a distributed log (append-only database, distributed) controlled by different legal entities. No need for ETH there.
- mananaysiempre 4y agoNo ETH or smart-contracty stuff is used by OpenTimestamps either, FWIW, they just periodically publish tree (log) hashes in a Bitcoin transaction. But yes, a Certificate Transparency-style system works too, provided you can get someone to run it. The problem is not even really the compute, which without proof of work should be negligible, but the durability (CT logs intentionally have limited lifetimes) and availability (CT logs are publicly accessible... for now, most of the time[1]). People have even talked about literally piggybacking on top of CT[2]. I’m not saying Bitcoin is an efficient solution here. Keybase had most of the technical side figured out[3], for example, and had it succeeded (or had a business model at all besides the geek appeal) I’d happily used it instead. But it is what we have right now. There are other efforts underway to build a CT-like design[4,5], and one is even running as long as Google is feeling like it[6]. [1] https://utcc.utoronto.ca/~cks/space/blog/tech/TLSCertTransLogsAndLoad https://utcc.utoronto.ca/~cks/space/blog/tech/TLSCertTransLo... [2] https://wiki.mozilla.org/Security/Binary_Transparency https://wiki.mozilla.org/Security/Binary_Transparency [3] https://book.keybase.io/docs/server https://book.keybase.io/docs/server, see also https://book.keybase.io/docs/server/merkle-root-in-bitcoin-blockchain https://book.keybase.io/docs/server/merkle-root-in-bitcoin-b... [4] https://transparency.dev/ https://transparency.dev/ [5] https://www.sigsum.org/ https://www.sigsum.org/ [6] https://go.dev/blog/module-mirror-launch https://go.dev/blog/module-mirror-launch