Recoverable Decentralized Wallet based on Social Service

Main Article Content

Jongseok Choi, Hyejin Park

Abstract

The landscape of blockchain wallets has evolved significantly, offering various options such as non-custodial, self-custodial, and custodial solutions. While non-custodial wallets, typified by platforms like Metamask, initially dominated the scene, instances of users losing access to their assets due to misplaced wallet keys have underscored the need for more robust alternatives. Consequently, custodial wallets emerged, entrusting the management of private keys to centralized servers. However, this centralized approach poses vulnerabilities, particularly to insider attacks. In response to these challenges, self-custodial wallets have emerged as a middle ground, employing Multi-Party Computation (MPC) to manage users' private keys while empowering users to retain control over their restore keys. Nevertheless, the encryption of keys on MPC raises concerns regarding the irretrievability of wallets in the event of restore key loss. Both custodial and self-custodial solutions rely on designated entities, potentially leading to wallet inaccessibility or failure. To address these issues, we propose the concept of a non-custodial recoverable wallet. This protocol leverages OpenID and smart contracts to establish a foundational identity framework, with all entity-dependent information transparently documented in smart contracts. The proposed scheme unfolds in three distinct phases: setup, key generation, and key recovery. During the setup phase, users initialize their global identity via OpenID, establishing unique identities through respective providers. Service providers then configure secrets to facilitate domain-specific key generation for their users. Key generation involves the computation of domain-specific keys using the service provider's secret and the user's random number, with proof hints stored on the smart contract using homomorphic encryption. Additionally, this phase entails the creation of a recovery key stored in the user's private storage, associated with the global identity provider. Authentication and authorization of users are enabled during key generation through key computation and message signing. In cases of emergency, users can initiate the key recovery phase, facilitating the restoration of domain-specific keys while validating their correctness through proof hints on the smart contract. This approach offers three significant contributions. Firstly, it pioneers the development of non-custodial wallets integrated with social services such as OpenID. Secondly, it introduces fully server-independent key recovery mechanisms. Lastly, it establishes hierarchical identity structures, enabling global identities to retain control over domain-specific identities even in the event of domain-specific key loss. In conclusion, the recoverable non-custodial wallet, underpinned by social services, presents users with a convenient and familiar avenue for managing their keys. By leveraging trusted service providers, we aim to democratize access to blockchain services while enhancing security through the distribution of restore key fragments across multiple storage locations, akin to MPC principles.

Article Details

Section
Articles