Support Chromium v12 ciphertexts (SecretPortal / Flatpak) on Linux
Author: moonD4rkCreated Apr 20, 2026Updated Apr 20, 2026
Labelsfeatureplatform: linuxbrowser: chromium
Context
Chromium on Linux has a third cipher tier we don't yet support: v12, used by SecretPortalKeyProvider for Flatpak / sandboxed installs that retrieve secrets via org.freedesktop.portal.Desktop.
Profiles from Flatpak-installed Chromium can carry v12-prefixed ciphertexts we cannot decrypt.
Current behavior
After #579, decryptValue emits a known-gap error rather than a generic one:
unsupported cipher version v12 (Chromium SecretPortal / Flatpak; not yet implemented)The corresponding cookie.value / password.password fields end up empty.
What's needed
v12 uses a different algorithm from v10/v11/v20:
- Secret source:
org.freedesktop.portal.Desktop.RetrieveSecret(not libsecret) - KDF: HKDF-SHA256 with salt
"fdo_portal_secret_salt"(not PBKDF2-HMAC-SHA1) - Cipher: AES-256-GCM (not AES-128-CBC)
Implementation would add:
- New
SecretPortalRetrieverpopulatingkeyretriever.Retrievers.V12 - HKDF + AES-256-GCM primitive in
crypto/ MasterKeys.V12slot +decryptValuedispatch case- RFC-006 §5 update
References
Source: moonD4rk/HackBrowserData