## 2 Background and Related Work
### Digital Identity Models with Blockchain  
[PERSON] [10] presented BIDaaS (Blockchain ID as a Service), a digital identity management infrastructure for mobile users on a private blockchain platform. BIDaaS involves three entities: a mobile user, a BIDaaS provider, and a partner. The user creates a credential (public and private key) and a virtual ID by using their mobile device. The credentials and the virtual ID are sent to the BIDaaS provider for registration. When a user wants to access a service offered by a partner, the user signs a message and includes their virtual ID. The partner carries out an authentication process with the BIDaaS provider using the virtual ID of the user and the signed message. This is an interesting solution, but it has disadvantages in various aspects: (a) omits information about how the BIDaaS provider is created; (b) types of users are not possible to be created; (c) BIDaaS provider is only used to validate the virtual ID; (d) any user can be registered without a government or a legal authority. Sora [2] is a mobile app used to store ciphered personal information within a blockchain. It aims to be used as a remote self-sovereign identity mechanism. To demonstrate identity, a user partially signs their personal information, and the result is stored in the blockchain, which can be consulted or verified by an external entity. This system does not have a government entity able to certify the user creation, although it has the figure of a legal authority certifier. [PERSON] and [PERSON] [12] proposed a model for digital identity that uses blockchain technology to store attributes that define the identity of a subject. In this model, the user's private key is the essential information linked to the identity, leaving it to be stored on any device outside the blockchain. The model is a mechanism in which a user can sign messages using a smart contract, resulting in an authenticity proof. The model can also validate if a specific subject signed an authenticated proof. The implementation was carried out on Ethereum and was accessed with Python programming, using the web3 library to access the smart contracts developed with Solidity. That solution does not provide the existence of an entity created by a government, as we have proposed. The paper mentions that trusted authorities are responsible for creating and authenticating digital identities. However, the paper does not explicitly explain how trusted institutions (such as governments) are created or designated. Instead, it expects that trusted authorities are already predefined. [PERSON] et al. [11] presented a role-based access control model to provide a mechanism to manage user-role assignments. To do that, they developed two smart contracts on the Ethereum blockchain. The first is to issue or revoke the user's roles and permissions, and the second is to grant or deny access based on the user's roles. These mentioned works collectively underscore the growing importance of digital identity in today's digital society. In particular, [PERSON] et al. [4] provide a comprehensive review of existing literature, identifying current trends, challenges, and future directions in the field of identity management (IdM). Their study emphasizes the integration of blockchaintechnology with IdM systems, recognizing its potential to enhance security, privacy, and user control over personal data. The authors conclude that blockchain can overcome many limitations of conventional IdM frameworks. Nonetheless, they highlight several persistent challenges--including scalability, interoperability, transaction costs, data protection, authentication, data storage and replication, and the lack of skilled professionals--that must be addressed for broader adoption. Complementing this view, [PERSON] et al. [31] stress that blockchain-based identity systems, especially self-sovereign identity (SSI) models, present a promising shift from traditional centralized approaches.