For my Master research I want to make a proof-of-concept of decentralized data storage for an IoT scenario. My idea is to receive measurement values from a raspberry pi and to store them using sia. I think this minio gateway can allow me to realize this: https://github.com/minio/minio/blob/master/docs/gateway/sia.md

I’m only aware of bluzelle that is aiming to build such a decentralized database, but i think it’s not available yet. Also I’m thinking to later use an Ethereum smart contract to enable people to buy the anonymized data or to trigger certain actions depending on the measurement values. Can someone give me some feedback to what I’m trying to achieve? Is it possible? Is it useful or are there better approaches or projects that I should use?

Just to clarify: The common way to store IoT data is currently to store it in the cloud for example by using AWS. This has the drawback that I trust a single entity with my data. Decentralized storage such as Sia stores pieces of my data on different hosts redundantly, so that a single host is not able to make any sense of the data junks that he stores. Also if a host disappear my data is still available because it’s stored redundantly.

1 Answer 1


There are three aspects in your post:

  1. storing the sensor data to a decentralised storage
  2. selling this data (via smart contract)
  3. triggering function in smart contracts based on the data

Theoretically it can work, but in each aspect you'll be facing challenges. Some examples are:

About 1: How many data can you push to SIA (scalability)?

About 2: How to hand over the data access on payment? How to protect the data from unauthorised access?

About 3: How to trigger the contract function from outside (keyword -> oracle services)?

  • Commonly IoT data is stored in a cloud service. Sia claims to be cheaper than Amazon and co for data storage. However, because the data processing (split and store on several nodes) is more complicated I expect it to be slower than e.g. using AWS. Bluzelle aims to optimise this. 2 and 3 are also my open questions. I could store the key to access the data on Sia in the smart contract and then retrieve the data on demand, but that might be too much overhead and costly operations on Ethereum. That's why I wonder if there might be a better way to achieve this...
    – Mindful
    Feb 22, 2018 at 4:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.