credential verification · rust
OpenID4VP verifier
An OpenID4VP-compliant service that verifies ISO 18013-5 mobile driving licences with sub-15 ms p99 latency.
Context
A relying party that accepts a mobile driving licence (mDL) needs to request it from a wallet, check it cryptographically, and answer fast enough to sit inline in a user flow.
What I built
I architected and built a credential verification service in Rust using Axum, spruceid/openid4vp and rustls. It speaks OpenID4VP to wallets and verifies ISO 18013-5 mDL credentials.
Engineering
- Protocol compliance. The presentation request/response flow follows OpenID4VP, so any compliant wallet can present to it.
- Latency. Verification runs at sub-15 ms p99.
- Transport. TLS is handled in-process with rustls, keeping the dependency surface Rust-native.