In the datamarket project


we would like to guard access to digital assets (data, services) which will not be stored on the Ethereum ledger. We will guard access to these assets using smart cotnract.

Is there a mechanism within the Ethereum ecosystem which would support the creation of unique links to a digital asset only available to the party for which the contract succeeded?

I am thinking of something based on maybe Swarm where I can upload data to and once a contract succeeds, a unique link can be created through which access to the guarded resource is provided. Forwarding this link to another one should not result in access to this shared resource and ideally be tracked as a violation.

1 Answer 1


When you upload a resource (file, directory) to swarm, it will return a hash, which will allow to access that resource again. This hash is generally public and unique.

You can encrypt your data though. The logic of encrypting/decrypting it would have to be in your code.

Keep in mind though that swarm aims to be an incentivized distributed p2p storage. A node keeps data stored, but it may decide to drop it if the content is rarely accessed and more popular content is being stored and diffused in the network. Implying a risk that the data may become unavailable in the network. A unique link with encrypted data doesn't really sound like popular content.

Swarm will offer a solution to this when the incentives system (SWAP, Swarm Accounting Protocol, https://github.com/ethersphere/swarm/wiki/Swap) is fully implemented, which is aimed for POC 0.4. At that point, it will be possible to insure your data against loss and erasure, by paying nodes to store it.

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.