DocumentSigner: Tracking System using Storacha, UCANs and IPNS

DocumentSigner on Storacha proves backend-free, tamper-proof PDF signing is possible with UCANs + IPNS. Secure, verifiable, decentralized.

DocumentSigner: Tracking System using Storacha, UCANs and IPNS

This guest post comes from Akash, along with fellow builders Dhruv, Gulshan, and Devansh, a team exploring innovative ways to bring secure, verifiable workflows to life using Storacha. In this write-up, they share how they built a DocumentSigner tracking system powered by UCANs and IPNS, enabling tamper-proof, decentralized document verification. Read the original post here.

Introduction

In an era where decentralized technologies are gaining traction, the need for seamless, server-independent document workflows is rising. Enter DocumentSigner on Storacha a proof-of-concept system built atop Storacha, IPFS/IPNS, and UCANs that enables secure PDF signing and signer tracking without any backend infrastructure.

What is DocumentSigner?

DocumentSigner is a decentralized document signing application built using Storacha. It allows organizations, employees, contractors, or freelancers each identified by a DID to securely sign agreements. Permissions and access are granted via UCAN delegations, and the entire signing workflow is facilitated through decentralized storage and linking, eliminating reliance on centralized servers.

Architecture and Workflow

  1. Upload & Initial Setup:
    > The PDF agreement is uploaded to Storacha as a directory, returning an IPFS CID.
    > A UCAN delegation is created for each signer with embedded metadata DID, signing window (notBefore, expiration), and the file’s CID.
  2. IPNS for Tracking State
    > An IPNS key is generated (and stored in localStorage) to manage a mutable pointer to the current version of the document.
  3. Signing Process
    > Signers use their UCAN to open, sign, and submit updates. After signing, a new directory (containing signed.pdf, original agreement.pdf, and delegations.json) is uploaded, yielding a new CID. > The IPNS name is then updated to point to this latest CID, effectively tracking document evolution.
  4. State Resolution & Comparison
    > To check who has signed, the system resolves the IPNS name using https://name.web3.storage/name/<ipnsName> (preferred over cached resolution).
    > It fetches and parses embedded JSON from the PDFs (delegations.pdfand signed.pdf), allowing comparison of pending vs completed signatures all without a backend.

Why Storacha, UCANs and IPNS?

Storacha is used as the decentralized storage backbone for this DocumentSigner demo because it provides all the primitives required to make the signing flow completely backend-less:

  • CID Generation : Every uploaded file gets a unique, immutable Content Identifier (CID) via IPFS.
  • Space-based Uploads: Files are uploaded directly to a user’s storage space without relying on central servers.
  • UCAN Embedding : UCAN (User Controlled Authorization Networks) tokens can be generated and embedded to delegate granular, time-bound permissions to specific signers.
  • No Centralized Backend : All logic and data storage happen client-side or on decentralized infrastructure, removing the need for traditional servers.

This architecture is complemented by:

  • IPFS (InterPlanetary File System): Content-addressed storage for PDFs, ensuring immutability and verifiability.
  • IPNS (InterPlanetary Name System): Mutable pointers that can update to reference the latest signed document version while keeping a permanent reference name.
  • UCANs : Decentralized authorization tokens defining who can sign, whatthey can sign, and when.
  • DIDs (Decentralized Identifiers): Unique identities for organizations, employees, or contractors participating in the signing flow.
  • w3name: Library for generating and updating IPNS names and keys directly in the browser.

Together, these technologies make it possible to:

  • Store agreements securely on decentralized storage.
  • Delegate signing permissions without a central authority.
  • Track document signing status in real-time via IPNS updates.
  • Maintain complete transparency and version history of signed documents.

This combination of Storacha, IPFS, IPNS, UCANs and DIDs demonstrates how modern Web3 tools can power practical, secure, and self-contained document workflows without a backend.

Resources

  1. Source code: Github (Contributor: Gulshan)
  2. Storacha UCANs: storacha/ucanto
  3. Storacha Docs: docs.storacha.network
  4. Implementation Blog: Tracking System
  5. DocumentSigner Docs:
    📂 docusign/docs
    📄IPNS Management
    📄UCAN Generation
    📄Decode UCAN
    📄File Upload
    📄Signature
    📄Track