0

I would like to apply blockchaining on unstructured data (any kind of data). I have seen BlockSign use similar concept to sign a document by storing a hash of the document in OP_RETURN block of Bitcoin. I was wondering how to do something similar but for a non-structured data type to ensure privacy and verification of the data in question.

Any links, articles or papers to programmatically do this would be ideal. I searched myself and found something called as ethereum but I don't think that satisfies my requirements.

  • 1
    I'm not really clear what you are trying to achieve here. Can you give a specific example? – Nate Eldredge Jul 23 '15 at 01:23
  • Okay. To put it simply, there are a few products in the market which use 'blockchain' for trust and verification. Some examples are http://democracyos.org/ or https://blocksign.com/ or http://www.verisart.com/ . I am trying to understand what they do and how and replicate it for my own work with any kind of data (not just documents as in the case of blocksign). – andthereitgoes Jul 23 '15 at 08:23
  • With OP_RETURN you can only store a HASH (mostly 32bytes) of a file in the bitcoin blockchain. Every BLOB (=file) independent of its size can be hashed. – Jonas Schnelli Jul 23 '15 at 10:19
  • Thanks @JonasSchnelli. But I want to understand the anatomy of how to go about doing something like that. I am new to blockchain programming as such, so a beginners guide to do the above or some paper would be very helpful. – andthereitgoes Jul 23 '15 at 10:54
  • Note that the blockchain is meant for (value) transactions: storing data in the blockchain is considered spam. You will need to pay a transaction fee, which will possibly be going up soon as the blocksize limit is hit. And even if you pay a fee, you're not paying for other people having to store and reproduce your data, so they will likely start discarding that data at some point. (Which shouldn't be a problem for you if you design your system accordingly.) – Jannes Jul 23 '15 at 12:16

2 Answers2

1

Chainpoint is a standard for maximizing the scalability of recording data in the blockchain and generating blockchain receipts. Each receipt contains all the information needed to verify the data without relying on a trusted third party.

You can read our white paper and download a Python implementation of a Chainpoint server at http://github.com/chainpoint.

Tierion and Storj are the first to implement this new standard.

  • Thanks for the link. I have looked at Storj and I am in one of their beta tests. I have also been in talks with the storj devs and they mentioned Chainpoint. The repo seems fairly new. Are you one of the devs? – andthereitgoes Aug 23 '15 at 23:39
  • I'm the founder of [Tierion](http://tierion.com) - an engine for collecting data and recording it in the blockchain. Shawn and I worked together to develop the Chainpoint protocol and write the white paper. – Wayne Vaughan Aug 24 '15 at 12:54
0

You can use the blockchain to store up to 80 bytes in a OP_RETURN transaction. Mind, that you need to pay a fee for this transaction (value is depending on fast you like to get you OP_RETURN TX confirmed/mined).

Storing files on the blockchain is obviously not possible, though, you can store a hash of a file to create a guarantee that this particular file has existed at this point in time.

Every file has its unique hash (you could use SHA256 as hashing algorithm).

Jonas Schnelli
  • 5,992
  • 1
  • 20
  • 33