Implementing History Aware IPNS Via Certificate Transparency Log Data Structure Trillian

I previously proposed IPNS Blockchain as a means to make IPNS history-aware. Current IPNS implementation only returns the most recent mapping of a URI to its content-hash. Adding Memento support to IPNS would enable IPFS to facilitate a self-archiving web.

Last year, I gave a talk entitled, “InterPlanetary Wayback: The Next Step Towards Decentralized Archiving”, at the IPFS Lab Day after the DWeb Summit 2018. In that talk I outlined current limitations of web archiving and potential solutions that a decentralized web can bring to the table. However, IPNS not being history-aware was a blocking issue.

Recently, I was looking at the Trillian, a verifiable, tamper-proof, append-only, and Merkle tree-based data structure proposed by Google for Certificate Transparency (CT), which is being used by many Certificate Authorities (including Let’s Encrypt). I think we can use it as a supplementary system to push selected IPNS records into it that we want to be history-aware. Then we can implement Memento endpoints on top of it.