Skip to content

Migration path for signer identities #255

@puerco

Description

@puerco

Problem:

We are about to release the new version of sourcetool that uses the new standalone actions repository. When we do this all the new source attestations will begin to get signed with the new repo identity. On the other hand, all existing attestations stored in the tracked repositories have attestations signed with this repo identity.

This means that once we start using the new release, sourcetool will not be able to find older VSAs and provenance attestations as it will look for statements signed with the new ID. This breaks verification of commits, generating new attestations and more.

Temporary Solution

In order to bridge the old a new identities, we will add a hack that double verifies attestations when verification fails with the new identity. If the signer identity matches the new ID (the new repo), source tool will attempt to verify the attestation using the old one (this repo).

This is a temporary hack. I will drop the commit once all repos attest new commits and their latest signatures are done by the new repo.

Reference

For reference, these are the IDs involved:

Old repository SAN value:
https://github.com/slsa-framework/slsa-source-poc/.github/workflows/compute_slsa_source.yml@refs/heads/main

New repository SAN value:
https://github.com/slsa-framework/source-actions/.github/workflows/compute_slsa_source.yml@refs/heads/main

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions