Contact Exchange¶
Exchange contact cards securely by scanning QR codes in person.
How It Works¶
Vauchi uses in-person exchange to establish contact relationships. Both parties must be physically present to complete an exchange.
sequenceDiagram
participant A as You
participant B as Contact
Note over A,B: Meet in person
A->>B: Show QR code
B->>A: Scan QR code
Note over A,B: Proximity verified
A->>B: Scan their QR code
Note over A,B: Exchange complete!
Note over A,B: Both have each other's cards
Why In-Person?¶
The in-person requirement is a privacy and security feature:
| Threat | How In-Person Prevents It |
|---|---|
| Spam | Can't be added by strangers |
| Impersonation | You verify identity yourself |
| Man-in-the-middle | Direct device communication |
| Screenshot attacks | Proximity verification |
Exchange Methods¶
QR Code (Primary)¶
The main method for exchanging contacts:
- Open the Exchange tab
- Show your QR code
- Have the other person scan it
- Scan their QR code
- Exchange complete
QR codes expire after 5 minutes for security.
One-Way Sharing¶
Share your card without receiving theirs:
- Enable Share Only mode
- Show your QR code
- They scan and receive your card
- You don't receive their card
Useful for sharing business cards at events.
Video Call Exchange¶
For contacts you can't meet in person:
- Start a video call
- Share your screen showing the QR code
- They scan it from the video
- Switch roles
- Exchange complete
Note
Video call exchange is less secure than in-person because you can't verify physical proximity.
Proximity Verification¶
On mobile devices, Vauchi verifies physical proximity using ultrasonic audio:
- Both phones emit and listen for an audio handshake (18-20 kHz)
- Range: approximately 2 meters
- If verification fails, exchange is blocked
- This prevents screenshot attacks
Troubleshooting Proximity¶
If proximity verification fails:
- Ensure both phones have working speakers/microphones
- Move closer together (within 1-2 meters)
- Reduce background noise
- Disable any audio-blocking apps
- Try again
On desktop, proximity verification is skipped — manual confirmation is required instead.
After Exchange¶
Once exchange completes:
- The new contact appears in your Contacts list
- You can see their contact card (fields they've shared)
- They can see your contact card (fields you've shared)
- Future updates sync automatically
Security Properties¶
| Property | Mechanism |
|---|---|
| Proximity required | Ultrasonic audio handshake |
| No man-in-the-middle | X3DH key agreement with identity keys |
| Forward secrecy | Ephemeral keys discarded after exchange |
| Replay prevention | One-time token, 5-minute expiry |
| Card authenticity | Ed25519 signature on contact card |
Related¶
- How to Exchange Contacts — Step-by-step guide
- Privacy Controls — Control what they see
- Encryption — How exchange data is protected