Design Patterns for Blockchain-based Self-Sovereign Identity
This work addresses the steep learning curve for architects in emerging blockchain and self-sovereign identity technologies, offering practical design patterns to facilitate system development.
The paper tackles the complexity of designing blockchain-based self-sovereign identity systems by proposing 12 design patterns categorized into key management, decentralized identifier management, and credential design, providing a systematic guide for architects to apply these concepts.
Self-sovereign identity is a new identity management paradigm that allows entities to really have the ownership of their identity data and control their use without involving any intermediary. Blockchain is an enabling technology for building self-sovereign identity systems by providing a neutral and trustable storage and computing infrastructure and can be viewed as a component of the systems. Both blockchain and self-sovereign identity are emerging technologies which could present a steep learning curve for architects. We collect and propose 12 design patterns for blockchain-based self-sovereign identity systems to help the architects understand and easily apply the concepts in system design. Based on the lifecycles of three main objects involved in self-sovereign identity, we categorise the patterns into three groups: key management patterns, decentralised identifier management patterns, and credential design patterns. The proposed patterns provide a systematic and holistic guide for architects to design the architecture of blockchain-based self-sovereign identity systems.