A permanent, self-computable, globally unique identifier for any property on earth. Derived from the address. No central registry required. Built into the OpenTwin standard.
The literal string hin. Registered URI scheme. Makes every NestCode a resolvable resource identifier. Platforms implementing OpenTwin parse this as the property namespace.
The algorithm version. v1 means SHA-256 of the NFC-normalised, lowercase, whitespace-trimmed address string. If the address canonicalisation algorithm changes, the version increments — existing codes remain valid.
Namespaces the hash by country. Prevents collision between properties at the same relative address in different countries. Required for cross-border portability. IN = India, AE = UAE, GB = UK.
The first 32 hex characters of the SHA-256 digest of normalise(country_code + address). 128 bits of collision space. Self-computable by anyone with the address. RFC-0019 defines the arbiter protocol for the rare hash collision edge case.
Same address → same NestCode, every time, everywhere. No API call needed to compute it.
hin:v1:{CC}:{hash[0:32]}. This is the NestCode.async function computeNestCode(country, address) { // Step 1: normalise const norm = address.normalize('NFC') .toLowerCase() .trim() .replace(/\s+/g, ' '); // Step 2: prefix const input = country.toUpperCase() + ':' + norm; // Step 3: SHA-256 const buf = await crypto.subtle.digest( 'SHA-256', new TextEncoder().encode(input) ); const hex = Array.from(new Uint8Array(buf)) .map(b => b.toString(16).padStart(2, '0')).join(''); // Step 4: compose return `hin:v1:${country.toUpperCase()}:${hex.slice(0,32)}`; }
No data leaves your browser. SHA-256 runs on the Web Crypto API, exactly as specified in RFC-0008.
Anyone with the address can derive the NestCode — no API, no registry, no account. The computation is deterministic and open.
128-bit hash space, country-namespaced. Two different addresses produce different NestCodes. RFC-0019 handles the sub-1-in-10¹⁸ collision probability.
If a property's address is officially renumbered by municipal authorities, the old NestCode and the new one can be linked via the lifecycle log — both resolve to the same physical property.
Self-issuable. Governments can print NestCodes on title deeds by running the algorithm themselves. No dependency on SeekYourNest's servers.
The NestCode is the subject DID in the did:opentwin DID method defined in RFC-0015. Verifiable Credentials attach to it directly.
Guard kiosks, field agents, and banking apps can compute and verify NestCodes without a live internet connection. No lookup required.
One SQL migration: ALTER TABLE properties ADD COLUMN nestcode VARCHAR(48). Compute and backfill for existing rows. Zero new dependencies.
Include the NestCode on new property documents as a standard field. Owners can quote it to any OpenTwin-compliant platform. Surveyors verify it in the field offline.
Issue Verifiable Credentials anchored to the NestCode. RFC-0015-compliant. The registry DID is published to the DID Universal Resolver. Full chain-of-title in one scan.
Apache 2.0. Self-computable. Part of the OpenTwin standard. Runs on any platform.