ICP Wallet
Logging in with Internet Identity​
The login process with Internet Identity involves these key steps:
1. User Initiates Login​
- The user navigates to the Admin Dashboard and selects the option to "Login with Internet Identity."
2. Challenge Preparation​
- The system prepares a challenge (encoded as a session public key) before initiating the authentication process.
3. Internet Identity Authentication​
- A popup window opens, connecting to the Internet Identity service.
- The user authenticates through this popup.
- The challenge (session public key) is sent to the II service.
4. Delegation Chain Retrieval​
- Upon successful authentication, the II service creates and returns a delegation chain.
- This delegation chain includes cryptographic proofs of the user's authentication.
5. Processing the Authentication Result​
- The application receives the delegation chain from the II service.
- It processes this data, extracting necessary information like the user's public key.
6. Login Request Preparation​
- The application prepares a login request including:
- The serialized delegation chain
- The original challenge payload
- Wallet metadata (ICP canister ID and wallet name)
7. Server-side Verification​
- The login request is sent to the Calimero server.
- The server verifies the delegation chain and challenge.
8. Successful Login​
- Upon successful verification, the user is logged in and directed to the identity page.
- The user's Internet Identity becomes their unique identifier for future interactions within the Calimero ecosystem.
This process leverages ICP's delegation chain mechanism for secure, decentralized authentication.
Was this page helpful?