Skip to content

AAuth .NET SDK gap analysis, remediation plan, and research#8

Merged
dasiths merged 5 commits into
mainfrom
copilot/analyze-net-sdk-gaps
May 22, 2026
Merged

AAuth .NET SDK gap analysis, remediation plan, and research#8
dasiths merged 5 commits into
mainfrom
copilot/analyze-net-sdk-gaps

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 20, 2026

Comprehensive spec-conformance gap analysis of the .NET AAuth SDK against draft-hardt-oauth-aauth-protocol, draft-hardt-aauth-bootstrap, and draft-hardt-aauth-r3, with a sequenced remediation plan and supporting research.

Contents

All documents live in .agent/plans/2026-05-20-aauth-sdk-gap-remediation/:

  • gaps.md — Catalogues every unimplemented spec feature across 14 categories (protocol flows, endpoints, token types, signature-key schemes, crypto algorithms, governance, R3, bootstrap, error handling, verification, discovery, identifiers, conformance tests, misc claims). Includes a priority ranking.

  • implementation-plan.md — 7-phase standalone plan (numbered from 1, references but does not extend the prior 2026-05-13 plan). Each phase includes proposed fix, alternatives considered with rejection rationale, and downstream implications. Phases ordered by security-first principle: verification hardening → server-side discovery + 4-party → scheme expansion + ECDSA → bootstrap → missions → R3 → 2-party + specialised flows.

  • research.md — Deep-dives into library options, spec-text citations, reference-implementation precedents, and design proposals. Key findings that amended the plan:

    • JsonCanonicalizer NuGet (by RFC 8785 author) exists and is maintained → use it instead of hand-rolling JCS
    • IAAuthKey interface recommended over polymorphic struct for algorithm extensibility (Ed25519, ECDSA, future PQC)
    • BouncyCastle for RFC 6979 deterministic signing, BCL ECDsa for verification (hardware-accelerated, deterministic-K irrelevant for verifiers)

Notable design decisions

  • AAuthServerId / AAuthAgentId as readonly record struct with ISpanParsable<T> — validates the spec's strict identifier rules at parse time
  • Three disjoint error enums (SignatureErrorCode, TokenErrorCode, PollingErrorCode) matching the spec's three error surfaces
  • DeferredPoller gains spec-mandated slow_down (+5s) and invalid_code (abort, no retry) semantics
  • act chain depth capped at 10 (configurable) to prevent DoS via recursive delegation

Copilot AI changed the title docs: AAuth SDK gaps analysis against draft spec docs: add AAuth .NET SDK gap analysis and remediation plan May 20, 2026
Copilot AI requested a review from dasiths May 20, 2026 15:20
Copilot AI changed the title docs: add AAuth .NET SDK gap analysis and remediation plan docs: add gap-remediation plan for AAuth .NET SDK May 20, 2026
Copilot AI changed the title docs: add gap-remediation plan for AAuth .NET SDK Add gap-remediation plan alongside SDK gaps analysis May 20, 2026
Copilot AI changed the title Add gap-remediation plan alongside SDK gaps analysis AAuth .NET SDK gap analysis, remediation plan, and research May 20, 2026
@dasiths dasiths marked this pull request as ready for review May 22, 2026 09:15
@dasiths dasiths merged commit b1c9b56 into main May 22, 2026
@dasiths dasiths deleted the copilot/analyze-net-sdk-gaps branch May 22, 2026 09:15
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