Live data from Hacker News

AWS and Blockchain

tbray.org

211–220 of 724 posts

Re: AWS and Blockchain

#211

I think the cost of trust is underestimated. All those shiny skyscrapers that the banks build? It's for trust, along with a good deal of banking licensing requirements and regulation. The example with the farmers' fields is quite valid. We forget in our relatively well-governed western nations that some governments really can't be trusted to simply keep records straight and not 'lose' vital documents, in cases where…

Trust is expensive, lack of trust is even more so.

Say, how would you build a skyscraper without trust? Are you going to set up an on-premises laboratory to test the quality of the concrete and steel? Are you going to personally verify the entire building's plans? Check whether the geological study was accurate? Follow every worker around to make sure they don't cut corners anywhere?

The less you can trust that the many people involved did their job, the harder and more expensive it gets to actually get the work done, until it turns out it just can't be practically done.

A lack of trust gets you a place like Afghanistan -- where the moment you stop looking stuff starts disappearing.

Re: AWS and Blockchain

#212
post #167

Blockchain was invented to solve one particular problem: distributed consensus on a sequence of transactions, where the choice of which transaction to include from a set of conflicting transactions is irrelevant. The latter property here is key to understanding where blockchain is useful. It was created to solve the "double spend problem", ie. two transitions that spend the same coin but send it to different recipien…

What you are referring to is a distributed ledger, built on top of a blockchain data structure. The word Blockchain is so overloaded, people forget you can build a "blockchain" in 50 lines of code if not less. "Mining" new blocks is added on top of that, it's not a hard requirement - you can just create new blocks and link them up. You can choose to "mine" on CPU (slow) or on the GPU, if you want "mining" at all. You…

Yeah, basically everyone. "Blockchain" as commonly understood was brought into being by Bitcoin, and encapsulates far more than just a linked list with a cryptographic component.

If it doesn't contain a mechanism for trustless, distributed consensus, then it's not really a blockchain in the sense that HN or the wider industry understands it.

Your definition is wide enough to cover a lot of things that are well outside of normal discussion of blockchains. I'm not insinuating this is your goal, but it is a common argumentation tactic of people desperately trying to defend the sector, to widen the definition until they can include within it things like git, and then say "so of course blockchain tech is useful! You're using it!"

Re: AWS and Blockchain

#213
post #24

I had a real experience that perfectly reflects the research presented here (safer ledgers useful, blockchains are not). I accidentally got wrapped up in a project to automate some HR functions, and the product manager demanded that it must be blockchain because blockchains are the future. It turns out that append-only databases are well-suited for HR records, and (especially when dealing with things like background…

Kind of off-topic: in what kind of weird organisation is a product manager dictating engineering decisions?!

It was a small startup, so "product manager" wasn't a narrow role with clear boundaries. Their job was to bridge the clients and the software team, and they insisted that clients would jump at the chance to have a blockchain vendor.

Re: AWS and Blockchain

#214
post #107

Earlier quoted context omitted.

> Blockchain has been around for more than 10 years. If it had any valid use cases, we'd see them in use already I think modern darknet markets use smart contracts for escrow, so that you don't have to trust the escrow arbiter to not run off with your cryptocoins.

This isn’t any difference than traditional escrow SaaS companies. They’re fully automated unless you have a dispute. In your stated case, “smart contract” means software. It can’t verify that both sides of the transaction have met their obligations unless both obligations are on-chain, in which case there’s no added value.

It is a little bit different, if you are doing it in centralised way - you have to control and secure everything - from databases to access to admin panels. It is quite complicated, requires robust processes, etc. Most of the finances are not really programmable, everything is done via simple scripts on some machine that just turns the knobs. You have to secure this part also.

It is a lot of work.

While for crypto-escrow you can just do a simple multi-sig with a hot keys that running on admin machines and they sign results there and they couldn't get the money, so no reason to try to hack the system.

Much easier setup.

Re: AWS and Blockchain

#215
post #63

Earlier quoted context omitted.

> […] compliance […]. This is the crux of the matter. In a prevailing number of cases, when people ask about a blockchain, they actually want a ledger database with the following properties: – an immutable, tamper proof, append-only transaction log; – cryptographically verifiable datasets; – certification and/or compliance validation by externally accredited auditing bodies for SOC, PCI-DSS, ISO, HIPPA etc. Use cases…

Ledgers are quite easy to build. Git is a ledger. It doesn't use a block chain but it does link commits via their hashes; which makes it an audit proof ledger. Unless you can break the hashes, you can't modify its history. And git is used between many different developers and companies working on the same projects. It was actually designed for this use case. The reason git doesn't need blockchains for this is because…

> Ledgers are quite easy to build. Git is a ledger. It doesn't use a block chain but it does link commits via their hashes; which makes it an audit proof ledger. Unless you can break the hashes, you can't modify its history.

Easy as an arm chair theory, impossible in practice without a complete rewrite of git from scratch. You are also disregarding the immutability of the data and the append-only property of stored datasets in ledger DB's: the entire temporal history of changes to a document (or a table) must be available in a ledger database. Changes are linked by virtue a Merkle tree, and the content of each node (i.e. revision) can be cryptographically proven to be untampered with. QLDB documentation provides a visualisation of the cryptographic verification process and of a sequence of steps: https://docs.aws.amazon.com/qldb/latest/developerguide/verif...

Git is absolutely the wrong tool for the job as hashes in git are used as identifiers to identify a specific change, but not to cyrptographically checksum the document/the change to the data. Git commits can also merged, rewritten, squashed or deleted – something is absolutely unacceptable in the compliance space.

So no, Git it is not easy to build a ledger database out of git if there are strict compliance requirements as I can pull out a revision M out of N revisions of my documents stored in a ledger database, run the revision N through the proof interface and use it in a court hearing as evidence or turn it over to external auditors. And no external auditing body will ever certify a git based solution.

Re: AWS and Blockchain

#216
post #167

Blockchain was invented to solve one particular problem: distributed consensus on a sequence of transactions, where the choice of which transaction to include from a set of conflicting transactions is irrelevant. The latter property here is key to understanding where blockchain is useful. It was created to solve the "double spend problem", ie. two transitions that spend the same coin but send it to different recipien…

Although I take slight issue with how you've worded it, I think I'm in agreement. I'll attempt to add clarification to the parts I find difficult to parse.

Blockchains only ensure that coins are never spent twice. They make no attempts to ensure that coins are sent to the correct recipients. At the end of the block, they only care that debits are equal to credits.

This can be confusing because the term "double spend" is also frequently used in cryptocurrency in the context of fraud prevention. In this context, you definitely do care that the coins get to the correct recipients but this concern is outside of the functional scope of the blockchain mechanism.

Instead, fraud prevention is typically satisfied through additional code, adjacent to the "blockchain stuff", which establishes signaling networks and transaction inclusion criteria.

They're very different mechanisms inside blockchain clients but, confusingly, they both make frequent use of the term "double spend".

Re: AWS and Blockchain

#217

Earlier quoted context omitted.

Someone comes out with a new database called "BigBucksDB" that uses a previously unknown technology called "blockchain." Suddenly every scammer and grifter decides to pump up this new "BigBucksDB" and emphasizes how safe and secure it is, thanks to blockchain, because all transactions are public and the ledger or whatever can't be modified in any way except to append new data. Then the companies using "BigBucksDB" de…

> Then the companies using "BigBucksDB" decide to transfer all of their customers funds into their own accounts at a real bank and declare bankruptcy. Not your keys, not your coins. If some random company that you don't trust has permission on the chain to transfer your funds, you're not doing it right. > That fraud has still managed to be committed. FTX was plain old fashioned fraud, the fraud wasn't committed on a…

> Not your keys, not your coins. If some random company that you don't trust has permission on the chain to transfer your funds, you're not doing it right.

0 caution about this was offered in the MSM. Everyone agrees that the average crypto investor was clueless about how it all worked behind the scenes, but that didn't stop them from FOMO and wanting to jump on the fail whale anyway because investment firms like Sequoia Capital pumped it up.

> FTX was plain old fashioned fraud, the fraud wasn't committed on a blockchain.

Whether it was legitimately committed on a blockchain or not is not really relevant here. It was marketed as being a way to prevent fraud for all these exchanges who claimed they were using it for its intended purpose. How is the average investor, who got shafted thinking everything was safe thanks to this emerging new technology, supposed to keep thinking that any exchanges existing presently are going to implement it the way it was intended if they got so duped by what was supposed to be the one exchange that legitimized the whole industry?

Re: AWS and Blockchain

#218
post #33

Earlier quoted context omitted.

In what sense is blockchain revolutionary? Merkle trees are many decades old.

Distributed consensus with zero trust.

Only in an extremely limited sense. You have to trust the developers, for one.

Also it's only trustworthy as far as everything happens on the blockchain. Once you step off it for even a second, it doesn't help. Eg, witness the absolutely amazing number of scams happening in the area, and the number of well known, and supposedly trustworthy services suddenly crashing and burning.

Re: AWS and Blockchain

#219
The new thing with blockchain tech is that we can now enforce invariants on state transitions in a decentralized manner. Paired with non-interactive zero-knowledge cryptography, we can also enforce those invariants while keeping the confidentiality of transactions.

The tech is rapidly improving and it’s pretty easy to see where things are going from here: soon we’ll have general purpose decentralized databases where data is open as open source code is open. In fact, state-of-the-art smart chains can be viewed as special (financial) purpose decentralized databases.

As to why decentralized databases are desirable: imagine if you could fork databases like you can fork code in a completely permission-less manner. This is how web development would look like:

You, the programmer, take a look at a public data schema (eg. a smart contract that implements the ERC-721 interface) and decide to build on top of it. Then, a user, who has already interacted with what you built on, decides that they like what you built and lets your app use their data. You, the programmer, can be sure that the data you built on remains available, and the user can be sure that they'll be able to port the data produced by your app into new apps.

Re: AWS and Blockchain

#220
> Dear Reader: I think that at some point, in a civilization, there has to be trust. I think that’s maybe the main reason we have civilizations. Call me crazy.

Dead on

Post reply on HN