Try   HackMD

To indy or not to indy?

Paul Bastian(Bundesdruckerei), Christian Bormann(Bosch), Michael Schäfer(Bosch)

  • only talking about the indy network (indy-node/indy-plenum)
  • Anoncreds/DIDComm are independant from indy (misconception!)
    • this document does not discuss AnonCreds/DIDComm (out of scope)

Requirements and needs?

  • regulatory safeness
  • longterm commitment & active developer community/contributions
  • technical stability and scalability
  • but: network is just an enabler/tool
    • business cases rely mostly on higher level functionality
    • DIDComm and AnonCreds as important building blocks independant of Layer 1

Status Quo : Indy Network & Consensus

Pros

  1. Efficient signature scheme for node consensus & State proof: Check validity of provided information as client (via efficient aggregated bls signatures)
    • this property is really important for scalability and trust relations and currently missing in other DLT
  2. Role / Permission based / configurable during runtime (via config ledger)
  3. Plenum (with own RBFT implementation)
  4. Purely for identities – no tokens involved

Cons

  1. currently not many active contributors & missing political support
  2. Throughput bottleneck (observer concept & implementation required for production)
  3. BLS is new crypto (regarding regulated use cases)
  4. Purely for identities –> no smartcontracts and requires parallel setup for payment

Path forward

Alternative 1

  • indy gets political support
  • indy contribution is driven by the IDunion SCE
  • commitment of the IDunion partners
  • fix immanent problems for production (e.g. observer pattern)
  • possible roadmap:
    • finalizing did:indy
    • build concepts and integrate observer pattern
    • build concepts and integrate deletion/tomb stoning
    • maintenance work
    • set up production network

Alternative 2a

  • commitment to an existing (permissioned) network
    • e.g. EBSI
  • add desired features to new network (mostly agent side)
    • e.g. DIDComm, AnonCreds support
  • initially additional effort with few benefits, long-term probably less effort
    • adaption of existing use cases
  • EBSI is currently a technical inferior solution and is very likely subject to change
  • possible roadmap:
    • start with evm-based EBSI (did:ethr?)
    • optional : build concepts to improve EBSI (BLS/state proof/roles?)
    • build concepts and integrate deletion
    • build concepts to integrate Aries/DIDComm/AnonCreds
    • integration into aries frameworks
    • integration into current pilots

Alternative 2b

  • commitment to building a new network
  • design new network with given requirements from scratch/re-using existing components (e.g. ethereum/tendermint/cosmos)
  • risk/reward ratio?
    • integrate experiences from current solutions
    • better programming languages
  • possible roadmap:
    • did method/specification
    • start with cosmos/tendermint
    • build role concept
    • integrate BLS/State-proofs
    • build concepts and integrate deletion
    • client libs(like indy-vdr)
    • integration into aries frameworks
    • integration into current pilots
    • set up production network

Alternative 2c

  • use TrustChain as VDR from one of the IDunion partners
  • TrustChain needs political support
  • strong focus on HL aries
  • risk/reward ratio
    • same focus like indy but learned from mistakes
    • already solved scalability and GDPR problems
    • Open Source and "made in Germany" (gets support by politicans for sovereign solution)
    • no implementation for Anoncreds yet but for VC already
    • further investigation neccessary
  • roadmap:
    • intergrate Anoncreds when standards are finalized
    • get support from BSI for regulated/relevant use cases

Alternative 3

  • do not use DLT as Verifiable Data Registry
  • use did:web(every issuer hosting his keys on his own webserver), did:keri
  • many unanswered questions as well - research necessary
    • less SSI centric - verifier contacts issuer directly (escpecially for revocation)
    • trust framework & governance

Next Steps

  • who takes the decision?
  • discussion with EBSI guys?
  • separate workshop?