Ethereum and IPFS


I'm interested in integrating IPFS and Ethereum, i.e. by putting metadata in the blockchain / contract, and underlying assets in IPFS.

Has anyone done any work bridging the two? The only way I can think of doing it is to write a nodejs server that makes web3 calls and also simultaneous IPFS api calls - but there is no 2-phase commit between these.

Would love to hear from anyone who has experimented in this area. Please reply here or get in touch [email protected]




  • cryptoboycryptoboy Member Posts: 74
    That is a fantastic idea. I've been pondering usage of BitTorrent, in this way, since it is more established. But IPFS is really promising.
  • o0ragman0oo0ragman0o Member, Moderator Posts: 1,291 mod
    Eris has been doing this since IPFS came out.

    Ethereum will have swarm which will be a usable for DAPP assets storage (and anything else).
  • jwgcarlylejwgcarlyle Member Posts: 29
    @o0ragman0o, I know that Eris have been using IPFS - but their use of it is baked into their stack and toolset. I was wondering if anyone has built either a library for Ethereum, either a bridge running on top of both IPFS and Geth/Eth, or somehow baked into the clients themselves.

    I haven't looked into Swarm and don't know if it is addressable separately, in the way that IPFS is, but thanks for the pointer - will take a look

  • jdmarescojdmaresco Brooklyn, NYMember Posts: 4
    Was playing around with this last weekend. IPFS is really cool, but I definitely was also trying to figure out the best design pattern for this. Would love to know if you decide to tackle something...
  • jwgcarlylejwgcarlyle Member Posts: 29
    Haven't been able to do any more work on it. In discussion yesterday, it is also clear that IPFS doesn't manage permissions - so somehow the contract would need to handle that.

    The limit of my thinking was to write a server in nodejs that managed a transaction - i.e. write to contract via web3.js, write to IPFS at the same time using a IPFS client (see, and rollback the other if the first is not successful
  • pnagpalpnagpal Member Posts: 7
    jwgcarlyle - I like the pattern that you are suggesting. A node js server inside the front end of DApp could orchestrate the flow of metadata on Smart Contract and the unstructured document on IPFS. Did you make any further progress on this? I am not sure what's proposed to be built inside Swarm - have not spent time investigating on it. But the use case that I am exploring has similar requirements.
Sign In or Register to comment.