Skip to content

[feature][npm] Verify consistency between cert and provenance #493

@laurentsimon

Description

@laurentsimon
Contributor

This is currently not possible but will land once the Fulcio claims have been standardized

Activity

laurentsimon

laurentsimon commented on Feb 21, 2023

@laurentsimon
ContributorAuthor

If some fields cannot be verified because they are not present in the cert, I'm tempted to say we should remove them from the provenance that --print-provenance prints. This requires some more discussions.
pros: only trust what can be verified
cons: someone how verifies their own package know that they have not altered with the content and may want to trust it anyway. Arguably they should be using a different builder if they want this level of guarantees

/cc @ianlewis @asraa

ianlewis

ianlewis commented on Feb 22, 2023

@ianlewis
Member

If some fields cannot be verified because they are not present in the cert, I'm tempted to say we should remove them from the provenance that --print-provenance prints.

I agree but, even better, we should ask npm to remove them from the provenance they generate. We can create an issue on their repo to have them removed if we find any. We discussed this earlier and agreed in principle with the GitHub folks on this.

laurentsimon

laurentsimon commented on Feb 22, 2023

@laurentsimon
ContributorAuthor

Good idea. Please link the issue once you have created one on their repo

ianlewis

ianlewis commented on Feb 28, 2023

@ianlewis
Member

I linked to here from the issue in their repo. Anyone who has access should see it above.

laurentsimon

laurentsimon commented on Mar 15, 2023

@laurentsimon
ContributorAuthor

Example of claims and change in parsing sigstore/fulcio#754 (comment)

laurentsimon

laurentsimon commented on May 18, 2023

@laurentsimon
ContributorAuthor

Done in #572. Closing

ramonpetgrave64

ramonpetgrave64 commented on Jun 10, 2024

@ramonpetgrave64
Contributor

reopening, since (n *Npm) verifiedProvenanceBytes() is not yet implemented.

func (n *Npm) verifiedProvenanceBytes() ([]byte, error) {
// TODO(#493): prune the provenance and return only
// verified fields.
// NOTE: we currently don't verify the materials' commit sha.
return []byte{}, nil
}

5 remaining items

Loading
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

    area:npmAn issue with verification of npm packagestype:featureNew feature request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

      Development

      Participants

      @ianlewis@ramonpetgrave64@laurentsimon

      Issue actions

        [feature][npm] Verify consistency between cert and provenance · Issue #493 · slsa-framework/slsa-verifier