ZKPPrivacy / VerificationBBaton Protocol

Even we cannot know who our users are.

We are evaluating adoption of zero-knowledge proofs (ZKP), which verify only the fact a service needs.

PROVE WHAT MATTERS. REVEAL NOTHING ELSE.

01 · ZKP Fundamentals

Why ZKP matters.

ZKP checks true or false without revealing identity.

01

Completeness

Completeness

Only a correct proof should pass.

02

Integrity

Integrity

Proof values must not be forged or bypassed.

03

Anonymity

Anonymity

The verifier should not be able to infer who the user is; we are evaluating adoption of this principle.

02 · Verification Structure

Verification, from the
service perspective.

The point: your service gets the result without the raw data.

STEP 01
SECRET
PROVER / User side

Original data stays with the user.

We are evaluating a structure in which IDs and personal identifiers stay on the user’s device.

Sample inputbirthdate = 1985-06-14
nationality = KOR
STEP 02
PROOF
PROOF / Attestation

The verifier checks only proof validity.

We are evaluating an approach in which the verifier checks only that the proof is genuine.

Claim requested by serviceclaim = age ≥ 19
proof = 0x8f3a...b2e1
STEP 03
VERIFIER / Service

The client sees only the result.

In a ZKP design, the client receives just true or false — no personal data.

Resultverify(proof) → true
knowledge leaked → none
BBATON · Evaluating adoption

The design we are evaluating: originals stay on the device.
Your service gets only the result.

We are evaluating a design in which the device generates the proof and BBaton verifies it and returns the result.

01 · ENROLL
DEVICE / User device

Enroll once, keep it on-device.

In the design we are evaluating, proof material is created and kept on the device at first enrollment.

Created on devicepassport_data
biometric_template
secret_key (device-only)
02 · CUSTODY
CUSTODY / Local storage

The device is the vault.

In the design we are evaluating, original IDs do not go to a server or the blockchain.

Not transmitted (design under evaluation)Passport image, birthdate, name
Selfie, facial features
Secret key
03 · PROVE
PROVE / Result delivery

On request, prove the claim only.

In the design we are evaluating, BBaton verifies only the device’s proof, and original data is not transmitted.

What the service receivesclaim: age ≥ 19
result: true
leaked info: none
03 · In Practice

Verify only
what you need.

BBaton confirms conditions, not identities.

BEFORE / Conventional

Show the whole ID.

What the clerk sees
NAMEMinsu Kim ID NO.950614-1****** ADDRESSTeheran-ro, Gangnam-gu, Seoul···
Exposed: name, ID number, address, photo, issue date

Adult status was all that was needed, yet personal data is exposed.

AFTER / With ZKP

Confirm adult status. Nothing else.

What the clerk sees
CLAIM
Age 19 or older
◆ VERIFIED
Private: name, ID number, address, birthdate

The service confirms what it needs without seeing the original data.

Check out the developer guide.