Skip to content

HIP: Handshake P2P Oblivious DNS Relay#77

Draft
denuoweb wants to merge 3 commits into
handshake-org:masterfrom
denuoweb:hip/odoh
Draft

HIP: Handshake P2P Oblivious DNS Relay#77
denuoweb wants to merge 3 commits into
handshake-org:masterfrom
denuoweb:hip/odoh

Conversation

@denuoweb

@denuoweb denuoweb commented Jul 21, 2026

Copy link
Copy Markdown

Summary

  • specify a two-hop Handshake P2P transport for RFC 9230 Oblivious DNS, with the proxy separated from the authenticated recursive target
  • define signed target configurations, direct Brontide locators, replay and resource bounds, automatic HPKE key rotation with overlap, cancellation, and generic error handling
  • require the prerequisite P2P DNS relay admission and validation path while preserving local Urkel, DNSSEC, TLSA, and DANE verification in the browser
  • document a complete mandatory direct-locator profile, independent JavaScript and Rust implementations, deterministic vectors, and reproducible regtest evidence

No permanent service-bit or packet-type assignments are requested by this draft. The proof of concept is disabled outside regtest and uses private experimental values only; assignments may be considered only after base-relay validation, threat-model review, and multi-operator testing.

Prerequisites and reference implementations

Verification

  • focused hsd ODoH, base-relay, and network suites: 102 passing
  • three-FullNode regtest: signed target discovery, encrypted request/response, distinct hop IDs, zero proxy plaintext, replay protection, and key sequence 1-to-2 rotation with old-key overlap
  • Rust peer/browser/platform suites: 206 passing; strict Clippy clean
  • Android Kotlin unit tests: 192 passing
  • composed four-hsd regtest: current Urkel proof, ODoH recursion, local DNSSEC and DANE validation, HTTPS 200, distinct proxy and target sockets, and no legacy resolver contact

This remains a draft while the protocol is reviewed and permanent wire assignments are discussed.

Program relationship

See the canonical program architecture and review order.

@denuoweb
denuoweb marked this pull request as ready for review July 21, 2026 03:54
@denuoweb

denuoweb commented Jul 21, 2026

Copy link
Copy Markdown
Author

Cross-reference update: the HNSR draft remains HIP PR #78:
#78

Its Phase 1 and bounded local Phase 2 implementation is draft hsd PR #960:
handshake-org/hsd#960

The current referenced HSD implementation commit is 2c26892df9fb437b1c84f39fc4ecfe329b1d4922. Native Android protocol and network-lifecycle evidence is sourced from 30137230e67f944861833ee5d6a7ac6783cf46d4. HNSR remains optional; the direct-locator ODoH profile does not depend on it.

@denuoweb

Copy link
Copy Markdown
Author

@pinheadmz — requesting follow-on privacy and protocol review after #76, especially proxy-target independence, correlation leakage, discovery, and signed target configuration. The incremental implementation stack is linked in the PR body.

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.

1 participant