Skip to content

feat: Use deterministic marshal for digest hashing - GRPC node auth.#1621

Merged
anirudhwarrier merged 1 commit intomainfrom
feat/nodeauth-deterministic-digest
Oct 17, 2025
Merged

feat: Use deterministic marshal for digest hashing - GRPC node auth.#1621
anirudhwarrier merged 1 commit intomainfrom
feat/nodeauth-deterministic-digest

Conversation

@seanwangsmartcontract
Copy link
Copy Markdown
Contributor

@seanwangsmartcontract seanwangsmartcontract commented Oct 17, 2025

PRODCRE-1085

Purpose

We are seeing intermediate auth failures between WfEngineNodes and billingSerivce.

The issue is the hashing function is non deterministic when the request contains a map, during which the key-ordering is not guaranteed. Go randomizes map iteration order on each marshal.

This PR uses https://pkg.go.dev/google.golang.org/protobuf/proto#MarshalOptions
Golang's proto's native support for deterministic map ordering

@github-actions
Copy link
Copy Markdown

👋 seanwangsmartcontract, thanks for creating this pull request!

To help reviewers, please consider creating future PRs as drafts first. This allows you to self-review and make any final changes before notifying the team.

Once you're ready, you can mark it as "Ready for review" to request feedback. Thanks!

@github-actions
Copy link
Copy Markdown

✅ API Diff Results - No breaking changes


📄 View full apidiff report

@anirudhwarrier anirudhwarrier merged commit 7b83233 into main Oct 17, 2025
20 of 22 checks passed
@anirudhwarrier anirudhwarrier deleted the feat/nodeauth-deterministic-digest branch October 17, 2025 07:57
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.

3 participants