Keys in secure hardware
Cryptographic keys are kept in your phone’s secure hardware.
Everything about CodeB Wallet in short – the facts, the standards it follows and how it protects your data.
Not yet. CodeB Wallet is not an official government wallet and it has not been certified. It is built by Aloaha Limited to the EUDI Wallet Architecture and Reference Framework (ARF 3.0) and works with its protocols and formats: OpenID4VCI, OpenID4VP, SD-JWT VC, mdoc and ISO 18013-5. Certification is ahead of us. As of November 2026, the EU certification scheme for these wallets is still a draft, and no wallet has completed it yet. We will only call CodeB Wallet certified once a certification has actually been completed.
What does this mean? The CodeB issuer is the service that puts cards into your wallet – your digital ID, membership and sign-in cards. The verifier is the service that checks those cards when you sign in with them. So that issuers, wallets and services across Europe understand each other, they all have to follow the same rulebook – like a plug and a socket: if one side is built differently, nothing fits.
The official test lab checks exactly that. It plays the part of a wallet and runs more than 250 tests against our live service – whether every step follows the rulebook, and whether forged, tampered or replayed requests are refused. In November 2026 our issuer passed all four test plans for issuing cards, and our verifier passed both test plans for checking them, with no failed test.
We are proud of this. It shows what more than 20 years of development in PDF, smart cards and digital identity – and always building strictly to the standards – are worth: when the rulebook is followed from the first line, the tests confirm it.
For you this means: your cards speak the same language as every wallet and service that follows the European rulebook, instead of being locked to one app, and their protection has been tested, not just promised. Which cards a wallet or service accepts is still decided by certificates and trust lists.
Technically: OpenID4VCI 1.0 and OpenID4VP 1.0 with the HAIP 1.0 profile – the standards on which the EUDI wallets are built. The test plans are the same independent test suites that are used for the official certification of these protocols. These are tests of our servers on phone.codeb.io, not a certification of CodeB Wallet itself. Each result can be viewed read-only via its link.
| Test plan | Format | Result |
|---|---|---|
| Issuer: OpenID4VCI 1.0 + HAIP 1.0, wallet-initiated | SD-JWT VC | Passed · 63 tests, no failure · view results |
| Issuer: OpenID4VCI 1.0 + HAIP 1.0, wallet-initiated | mdoc | Passed · 63 tests, no failure · view results |
| Issuer: OpenID4VCI 1.0 + HAIP 1.0, issuer-initiated (credential offer) | SD-JWT VC | Passed · 63 tests, no failure · view results |
| Issuer: OpenID4VCI 1.0 + HAIP 1.0, issuer-initiated (credential offer) | mdoc | Passed · 63 tests, no failure · view results |
| Verifier: OpenID4VP 1.0 + HAIP 1.0, direct_post.jwt | SD-JWT VC | Passed · 14 tests, no failure · view results |
| Verifier: OpenID4VP 1.0 + HAIP 1.0, direct_post.jwt | mdoc | Passed · 7 tests, no failure · view results |
Standards
CodeB Wallet follows the EU Architecture and Reference Framework (ARF) and is designed to comply with eIDAS 2.0. It is not certified and it is not an official government wallet.
Standards profile
ARFSecurity & privacy
Security is Aloaha’s core business: we have worked on PKI, PDF and digital signatures since 2003. What stays on your phone: your documents, their keys and showing them in person. What goes through phone.codeb.io: reading a passport or ID card chip for an account, issuing documents, and signing with the CodeB signing service – which receives only a fingerprint (hash) of your PDF.
Cryptographic keys are kept in your phone’s secure hardware.
CodeB Wallet checks itself every time you open it: if it was changed, or another program is inspecting it (a debugger or a hooking tool), it stops and does not use your keys or documents until that is gone. These checks are our own code, without third-party libraries, and nothing about them is sent anywhere. For the same reason CodeB Wallet does not run on rooted phones, and it needs a phone with the Google Play Store.
When you add a card from the CodeB issuer, CodeB Wallet proves to our own wallet provider that it is the genuine app on a phone with a locked, verified system: the phone’s security chip certifies a fresh key for every request (Android Key Attestation). Google’s Play Integrity check is used as well, but issuing can keep working when Google’s service is unavailable. Only key certificates are sent – never your documents.
The wallet is locked with a PIN and, if you wish, biometrics. Every share and every signature needs your confirmation.
When the PID Provider’s server reads your ID card or passport, the chip and the server set up their own encrypted, authenticated channel (PACE, Chip Authentication, Secure Messaging). Your phone only forwards the messages: neither the phone nor anyone in between can read them or change them unnoticed – at most the reading can be interrupted. The server also checks the issuing country’s signature on the data (Passive Authentication).
When you sign with your own card, the key never leaves the card and every signature needs your PIN.
Issuer trust is checked against EU trusted lists (ETSI) and your list of trusted issuer certificates.
Document status is checked automatically, so revoked documents are recognised. Where the issuer supports it, documents can be renewed automatically before they expire.
Your documents and your history are stored on your phone, not in a CodeB cloud.
The app shows no advertising and contains no tracking and no analytics.
Every server endpoint watches itself while it runs: anomaly detection, rate limits and refusal when in doubt.
Server state lives in encrypted, access-restricted files per customer, with a full restore from a single backup – a design choice for simple operation and a small attack surface, not a certification. All CodeB server software runs on Windows Server with Microsoft IIS.
No third-party analytics and no tracking on the server side.
No analytics, no cookies, no external requests. Fonts and images are served from this site itself.