Skip to content

Fix Ed25519 strictness parity#73

Merged
OkeyAmy merged 8 commits into
mainfrom
fix/issue-12-ed25519-strictness
May 25, 2026
Merged

Fix Ed25519 strictness parity#73
OkeyAmy merged 8 commits into
mainfrom
fix/issue-12-ed25519-strictness

Conversation

@OkeyAmy
Copy link
Copy Markdown
Owner

@OkeyAmy OkeyAmy commented May 25, 2026

Summary

  • add shared Ed25519 strictness conformance vectors for Rust and Go
  • classify non-canonical Go receipt signatures as SIGNATURE_MALLEABILITY before stdlib verification
  • document Rust/Go strictness parity in source-of-truth and docs-site security guidance

Closes #12.

Verification

  • go test ./pkg/verify
  • cargo test --test test_ed25519
  • cargo test
  • mdbook build docs-site
  • gofmt check on changed Go files
  • rustfmt --check tests/test_ed25519.rs

Notes

  • cargo fmt --check still reports unrelated pre-existing formatting diffs outside this PR; the changed Rust file passes rustfmt --check.

OkeyAmy and others added 3 commits May 25, 2026 09:25
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Copy link
Copy Markdown

@amazon-q-developer amazon-q-developer Bot left a comment

Choose a reason for hiding this comment

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

This PR successfully establishes Ed25519 strictness parity between Rust and Go implementations. The changes are well-structured and include:

  • Shared conformance vectors for cross-language testing
  • Proper signature malleability detection in Go (matching Rust's verify_strict behavior)
  • Comprehensive documentation updates
  • Extensive test coverage for both implementations

The implementation correctly rejects non-canonical Ed25519 signatures (S >= L) as SIGNATURE_MALLEABILITY before stdlib verification, ensuring consistent security behavior across both languages. No blocking issues found.


You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.

OkeyAmy and others added 5 commits May 25, 2026 09:33
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
@OkeyAmy OkeyAmy merged commit 08137b0 into main May 25, 2026
14 checks passed
@OkeyAmy OkeyAmy deleted the fix/issue-12-ed25519-strictness branch May 25, 2026 13:58
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.

Finish Go/Rust Ed25519 strictness parity contract

1 participant