Skip to content

feat: Support Rekor v2 tiles and HashedRekord v0.0.2 - #167

Open
Hayden-IO wants to merge 1 commit into
mainfrom
rekorv2
Open

feat: Support Rekor v2 tiles and HashedRekord v0.0.2#167
Hayden-IO wants to merge 1 commit into
mainfrom
rekorv2

Conversation

@Hayden-IO

Copy link
Copy Markdown
Contributor
  • Fetch entries dynamically from a C2SP tile-based tlog
  • Added settings overrides and URL parameters for togging Rekor v2 contexts
  • Added HashedRekord002Viewer to handle new spec schema. In trying to minimize the number of changes, all certs are PEM-wrapped to use the same parsing logic
  • Various UI cleanups to deal with v1 vs v2 differences, e.g. no entry UUID, no integrated timestamp

Summary

Release Note

Documentation

@Hayden-IO

Copy link
Copy Markdown
Contributor Author

Tested locally with npm run dev. You can see it working by hitting http://localhost:3000/?logIndex=3150280&rekorV2=true&rekorUrl=https%3A%2F%2Flog2025-alpha3.rekor.sigstage.dev%2Fapi%2Fv2, or toggling "Rekor v2 API" and adding a Rekor v2 URL override.

Note, this was 100% Gemini-generated. I reviewed all of the code and tested as many edge cases as I could think of, but I have almost no knowledge of TS so apologies in advance if there's any stylistic weirdness.

* Fetch entries dynamically from a C2SP tile-based tlog
* Added settings overrides and URL parameters for togging Rekor v2
  contexts
* Added HashedRekord002Viewer to handle new spec schema. In trying to
  minimize the number of changes, all certs are PEM-wrapped to use the
  same parsing logic
* Various UI cleanups to deal with v1 vs v2 differences, e.g. no entry
  UUID, no integrated timestamp

Signed-off-by: Hayden <8418760+Hayden-IO@users.noreply.github.com>
name: "Subject Alternative Name",
toJSON(rawExtension: Extension) {
return new SubjectAlternativeNameExtension(rawExtension.rawData).toJSON();
return new SubjectAlternativeNameExtension(

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parsing was not working without .names - I'm not certain why, but this causes no issues for Rekor v1.

actualRekord.verifier ||
actualRekord.Verifier;

const rawKey =

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this block handling too many permutations of field names?

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That looks fine 👍

@ejahnGithub ejahnGithub left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

actualRekord.verifier ||
actualRekord.Verifier;

const rawKey =

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That looks fine 👍

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants