Logo Lanfrica

mpairwe7/LandGuardUganda

Domaine:

digital infrastructure

Type de record:

software
Créateur:
mpa
Hôte:
Blockchain-Enhanced Land Administration & Titling Support System — Uganda MoICT&NG National Innovator Registry 2026 submission # LandGuard Uganda **Blockchain-Enhanced Land Administration & Titling Support System** A prototype submission to the **Uganda MoICT&NG National Innovator Registry** — showcase date **25 June 2026**. > Land records that no one can fake. Verified by anyone, anywhere — from a smartphone, a feature phone, or a printed certificate. ## Why this exists Roughly **60% of Uganda's land is unclear or contested in ownership** (UN-Habitat, 2024). Double-titling, ghost owners, and forged signatures drive disputes that can take decades to resolve in court. The existing National Land Information System (NLIS) is a database — if someone alters a record, only that database knows. Citizens have no way to prove their title's authenticity to a buyer, a bank, or a journalist without paying a registrar. LandGuard fixes this by making land records **cryptographically tamper-evident** and **publicly verifiable** — without putting personal data on a public chain, without smartphone-only access, and without single-key custody. ## The five claims (and the receipts) | Claim | Where to look | |---|---| | **1. Tamper-evident at national scale** | `backend/app/audit/ledger.py` — per-district hash-chained ledger. Every state change writes one row; `row_hash = sha256(prev_hash + payload_hash)`. Walk-verifier in `audit/verifier.py`. | | **2. Anchored on a public blockchain at pennies per batch** | `contracts/src/LandRegistryAnchor.sol` — every 5 min or 100 events per district. Sorted-pair keccak Merkle, matched byte-for-byte by `compute_merkle_root_evm` in Python and `verifyMerkleProofEvm` in TypeScript. See ADR-0001. | | **3. No single key can anchor** | `contracts/src/MultiSigRegistrar.sol` — 3-of-5 named signers (MoLHUD, NITA-U, District Land Board, LandGuard, Independent Observer). See `docs/CUSTODY.md`. | | **4. AI flags, humans decide** | `backend/app/fraud/worker.py` writes to `fraud_review_queue`; the parcel is frozen **only** when a Land Officer affirms via `POST /api/v1/fraud/review …