2

When it's considered, like here

a project where a user needs to store a (small piece of data) on a blockchain

what does that really mean from a cryptographer's perspective? What security guarantees does it give? Things like availability (to which entity, under what condition and delay, with selection according to what criteria/tag), proof of origin (for one who finds that data), non-repudiation.

Is there a formal definition of a blockchain's expected properties, like we have for e.g. PRG, or a key exchange protocol?

Update: Emmanuelle Anceaume, Antonella del Pozzo, Romaric Ludinard, Maria Potop-Butucaru, Sara Tucci-Piergiovanni's Blockchain Abstract Data Type attempt that. But it flies too high above my head. In retrospect I should have first asked: what's a blockchain, with a simple example?


Update: these NIST slides give a visual illustration of a minimalist blockchain:

minimalist blockchain

They also make a basic but essential distinction between

  • Permissionless Blockchains, decentralized and often tied to cryptocurrencies.
  • Permissioned Blockchains, involving trusted participants or perhaps an authority.
fgrieu
  • 140,762
  • 12
  • 307
  • 587
  • 1
    "blockchain" is vague. Is git a blockchain? In a trivial/literal sense, yes, but it's not necessarily able to provide any availability guarantees beyond that of the underlying storage. And it doesn't require commit signing, so no non-repudiation or proof of origin. – SAI Peregrinus Nov 19 '20 at 19:20
  • I'm pretty sure there is one (or more) papers with formal definitions of what a blockchain is on ePrint. However I don't have time right now to dig through the papers to find the "commonly accepted one". – SEJPM Nov 19 '20 at 19:24
  • @SEJPM: yet after touring a few of these, I still don't get it. That one states "With slight abuse of terminology we use the words ledger and blockchain inter-changeably", which is marginaly more precise than transcending the barriers of language, we assimilate smurf and schtroumpf. – fgrieu Nov 30 '20 at 13:52

2 Answers2

2

What security guarantees does it give? Things like availability (to which entity, under what condition and delay, with selection according to what criteria/tag), proof of origin (for one who finds that data), non-repudiation.

In respect of data storage the blockchain itself (in a decentralised form) gives us very few guarantees. When it is coupled with a cryptocurrency (eg. Ehtereum) then it isn't the blockchain that provides security primarily, but the cryptocurrency via the blockchain. In such cases it is the miners of the cryptocurrency that have a vested interest to keep your data. And it costs money.

The blockchain is useful as a means to deliver something worthwhile. Much like torrents if there is no one seeding, then it isn't a useful means of delivery.

Modal Nest
  • 1,443
  • 4
  • 18
1

what does that really mean from a cryptographer's perspective? What security guarantees does it give? Things like availability (to which entity, under what condition and delay, with selection according to what criteria/tag), proof of origin (for one who finds that data), non-repudiation.

None of that. Those are not part of the blockchain itself - at best they are part of what is stored in the blockchain.

Basically the only guarantee is: If and only if no person (or group with common interest) controls more than half the computation power of all participants, then the blockchain protects integrity (content can't be changed).

tylo
  • 12,654
  • 24
  • 39