
Show HN: Interactive implementation of the NIST Blockchain use case flow chart - brucemacd
https://brucemacd.github.io/You-Dont-Need-A-Blockchain/
======
cwyers
I think there's a bug in this. If I answer "Will data records ever need to be
updated or deleted once they are written?" with "No" it says "You Don't Need a
Blockchain Blockchains do not allow for modification of historical data.
Consider a database." It seems like blockchains actually meet that requirement
per my entry?

~~~
brucemacd
Just fixed the wording to match the actual NIST flowchart. Thanks.

~~~
davidy123
I realize this isn't a life's work, but can you support the back button? Some
of the questions are double-negative-ish, or maybe I'm just not a morning
person, either way the back button to revise answers without having to go
through the whole thing again would be useful.

------
Theodores
Brilliant. I have found a use case for blockchain thanks to this tool. Who
wants to go co-founder on my YC application for...

"Blockchain for nuclear weapons"

Any fan of Dr Strangelove should know that there is a problem with the system,
it is not just the president's nuclear football that can bring on the omnicide
that the people in CND are so scared of.

Blockchain for nuclear weapons - where could it go wrong?

It is an obvious use case, not a solution in search of a problem. I stand
corrected with all my scepticism regarding blockchain. We don't need pesky INF
treaties, we can just go with smart contracts and have only the president able
to launch that decapitation strike rather than some rogue general.

------
randaouser
although sensitive data should never be written to a public ledger, that does
not automatically disregard the need for a blockchain technology. Take a
supply chain scenario where multiple control points would input data, however,
none of the contributors trust any single touchpoint to maintain the
datastore.

The senstivity issue can be overcome by submitting a cryptographic hash of the
information (say sha256) and storing the encrypted data on ipfs. In future
audits, one can reveal the unencrypted data and ensure the hashes match.

~~~
aeijdenberg
Not quite as simple as a cryptographic hash alone - remember that if the set
of possible inputs can be easily enumerated, then it's trivial to find the
input data by brute force.

There are ways to work around this, for example objecthash[0] describes a
small modification that prepends the input data with 32 bytes of random data
before hashing in order to prevent this.

[0]
[https://github.com/benlaurie/objecthash#redactability](https://github.com/benlaurie/objecthash#redactability)

~~~
randaouser
yes precisely, you must include a random value that remains secret until the
appropriate reveal time.

------
mistrial9
is this NISTIR 8202 -- Blockchain Technology Overview ?

[https://doi.org/10.6028/NIST.IR.8202](https://doi.org/10.6028/NIST.IR.8202)

~~~
klenwell
That's what I found, too. It looks like the flowchart in question is on p. 42.

This is really helpful by the way. My sister is completing her MBA and I think
IBM is a program sponsor or something and has really been pushing their
blockchain product. Whatever the case, she's drank the Blockchain Kool-Aid.
I'm going to point her to this (this site and the NIST doc) the next time she
brings it up.

------
nootropicat
>Data records, once written, are never updated or deleted?

>Blockchains do not allow for modification of historical data. Consider a
database.

If that was true it wouldn't even be possible to send any tokens. _Log_ of all
past actions can't be deleted or updated, which is a quite different thing.

~~~
village-idiot
The log entries in a blockchain are supposed to be immutable. You can add new
entries, but not change old ones.

~~~
browsercoin
so what's wrong with Datomic? why do people insist on using blockchain?

~~~
village-idiot
To be fair, you _can_ modify datomic, there’s a mutable delete operation so
that you can comply with legal requirements to delete data.

~~~
moocowtruck
can't you technically modify block chain in the same way, rollback and fork or
something? i feel like this was done for bitcoin at one point

~~~
browsercoin
yes. but obviously common sense goes out the window as soon as blockchain and
crypto comes into play.

