Skip to content

Support Chromium v12 ciphertexts (SecretPortal / Flatpak) on Linux #580

Description

@moonD4rk

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:

  1. New SecretPortalRetriever populating keyretriever.Retrievers.V12
  2. HKDF + AES-256-GCM primitive in crypto/
  3. MasterKeys.V12 slot + decryptValue dispatch case
  4. RFC-006 §5 update

References

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    browser: chromiumIssues related to Chromium-based browsersfeatureNew feature or requestplatform: linuxIssues specific to Linux

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions