Skip to content

release-2026-03-06: Identity switcher redesign

Choose a tag to compare

@github-actions github-actions released this 06 Mar 21:19
· 40 commits to main since this release
6f0ee38

This is Internet Identity release-2026-03-06 for commit 6f0ee38e0b6fc04666163aca61877c3f19b02d77.
The sha256 of production asset internet_identity_production.wasm.gz is 24199ec7f565f1be68c7d52b55591ad92cadf99e70c21168925237461f62ae94.

This release includes the following frontend improvements:

  • An improved identity switcher (supports any number of identities, not just the three latest-used ones)
  • Possibility to remove legacy passkeys (when it's safe to do so)
  • Minimal guided upgrade flag

and the following backend improvements:

  • Enforcing that new passkeys cannot have public keys that were already used by other passkeys
  • Fixed sharing certified attributes for the Microsoft OpenID scope

What's Changed

  • chore: Fix candid encoding for II upgrade args by @aterga in #3641
  • feat: Switch from window.opener to BroadcastChannel by @sea-snake in #3642
  • fix: OpenID popup blocked in Safari by @sea-snake in #3643
  • test: Refactor fixture to allow for multiple identities by @sea-snake in #3644
  • chore: Publish internet_identity_frontend.wasm.gz in CI by @aterga in #3646
  • test: Refactor manage access e2e tests by @sea-snake in #3645
  • Update Passkey AAGUID data by @pr-automation-bot-public[bot] in #3627
  • chore: Support --end <front|back> in PR-to-staging deployment script by @aterga in #3650
  • fix: Ensure Microsoft attribute scope is not instantiated with a tenant ID during certification by @aterga in #3649
  • Add OISY to direct OpenID flow attributes allowlist by @sea-snake in #3654
  • feat: Redesigned identity switcher by @sea-snake in #3652
  • feat: Enable removal of legacy passkeys by @sea-snake in #3647
  • feat: Add minimal guided upgrade flag (collapsed by default) by @sea-snake in #3653
  • feat: Remove for developers button from landing page by @sea-snake in #3656
  • feat: Show identity switcher directly on mobile identity manage page by @sea-snake in #3655
  • feat: Ensure passkeys cannot have duplicate pubkeys by @aterga in #3626
  • chore: Adjust release process after II canister split by @aterga in #3648

Full Changelog: release-2026-02-28...release-2026-03-06

Build flavors

For more information please see the Build flavors section of the README.

Filename sha256 (links to CI Run)
internet_identity_production.wasm.gz 24199ec7f565f1be68c7d52b55591ad92cadf99e70c21168925237461f62ae94
internet_identity_dev.wasm.gz 640fecd6d70a5c22dda0615b2c73390abfb4648014e39d8557fa92bb37752425
internet_identity_test.wasm.gz 230491873dbf03a0cd3da044db8745c51b23fbd55266c7f3d680c564c7d62631
internet_identity_frontend.wasm.gz a5d4ee62433c92ae23769a52443675c56cf4eb964a818d5d4c118f73570cc6f7
archive.wasm.gz 974402c903a7ffda36208bcc5e059ddf2ab0d0fa8bef19a31ad8c9991f5bdb9a
vc_demo_issuer.wasm.gz f9e513b5c8136ff62b87a30acf3a1954a15c1a5719f2d08d7c8ebf688932a1a7

Wasm Verification

To build the wasm modules yourself and verify their hashes, run the following commands from the root of the Internet Identity repository:

git pull # to ensure you have the latest changes.
git checkout 6f0ee38e0b6fc04666163aca61877c3f19b02d77
./scripts/verify-hash \
    --ii-hash 24199ec7f565f1be68c7d52b55591ad92cadf99e70c21168925237461f62ae94 \
    --iife-hash a5d4ee62433c92ae23769a52443675c56cf4eb964a818d5d4c118f73570cc6f7

Make sure to compare the hashes also with the proposal payload when verifying canister upgrade proposals.