Research
OhiaVault
Biometric access control that proves identity without storing it
- Role
- Systems architect and lead developer, client engagement
- Built with
- Python
- FastAPI
- Solidity
- React
- Three.js
- IPFS
- CatBoost
- Hardhat
An access control system that combines two biometrics with risk scoring, then verifies the decision without ever holding the biometric itself. Built as an enhancement to a published risk based access control model, for a doctoral research programme.
01
Why it exists
The published system it builds on scores risk well and adapts to behaviour, but it takes the identity behind a request largely on trust, which leaves it open to an attacker who presents someone else's credentials.
Adding biometrics is the obvious fix and it creates a worse problem. A stolen password can be changed. A stolen fingerprint cannot. Any design that stores biometric templates centrally is building the exact database that must never leak.
02
What was built
The full pipeline from enrolment through authentication: biometric capture and matching, liveness detection, the risk estimator, the policy engine, the proof based verification, distributed storage, on chain anchoring, and the operator interface over all of it.
A comparison against the system it enhances, documented with architecture, flow, and benchmark material, since the work had to defend itself academically as well as run.
03
Architecture
Two biometric factors, a fingerprint and a face with liveness detection, so a photograph is not a face and a lifted print is not a finger.
The risk layer keeps what the original model got right: context, resource sensitivity, action severity, and history feeding a gradient boosted estimator, with a policy engine deciding on the score rather than on the raw signals.
The identity layer is where it departs. Verification uses a zero knowledge proof, so the system confirms that the person is who they claim without the template itself being presented or stored. Records go to distributed storage rather than to one server, and verification is anchored on chain so a decision can be audited afterwards without trusting whoever kept the log.
The interface renders the vault in three dimensions, so a remote operator can see state rather than read it.
04
My contribution
Systems architect and lead developer. The architecture, the biometric and risk pipeline, the verification layer, the contracts, and the interface.
05
Engineering challenges
Liveness detection is the part that decides whether the rest is worth anything. A biometric system that accepts a printed photograph has not added a factor, it has added a formality.
Proving a match without revealing the template, which is the constraint the entire identity layer is organised around.
Keeping it demonstrable on ordinary hardware, a consumer scanner and a webcam, because a defence that requires a laboratory is not a defence anyone can see.