Privacy Policy
Last updated: 2026-01-15
Introduction
Solid(ar)ity is a privacy-first, peer-to-peer application that prioritizes your privacy through a local-first architecture and zero-knowledge cryptography.
Our core principle: your data belongs to you. Everything stays on your device. We operate with zero servers and zero data collection.
Information we do NOT collect
Solid(ar)ity is designed to operate completely offline with zero data collection. We do not:
- Collect personally identifiable information (PII)
- Track your usage or behavior
- Store data on remote servers
- Share data with third parties
- Use analytics or advertising services
- Require account creation or login credentials
- Access your contacts without explicit permission
- Transmit your card data over the internet
Information stored locally on your device
All data generated by Solid(ar)ity is stored exclusively on your device using Apple's secure storage mechanisms.
1. Business card information
- What: name, title, company, email, phone, social handles, and other fields you choose to add
- Where: encrypted local file storage on your iOS device
- Encryption: AES-GCM (256-bit)
- Control: edit or delete at any time
2. Received contacts
- What: cards shared with you via proximity, QR, or AirDrop
- Where: encrypted local file storage
- Control: delete at any time
3. Zero-knowledge identity
- What: cryptographic keys generated using the Semaphore protocol
- Where: stored in the iOS Keychain (inaccessible to other apps)
- Purpose: privacy-preserving group membership verification without revealing your identity
- Security: private keys never leave your device
4. Group memberships
- What: list of Semaphore groups you've created or joined
- Where: encrypted local file storage
- Privacy: membership verified via ZK proofs without exposing your identity
How information is shared
Solid(ar)ity enables peer-to-peer sharing directly between devices without any intermediary servers.
Proximity sharing (MultipeerConnectivity)
- Direct WiFi or Bluetooth between nearby iOS devices
- Only the fields you explicitly choose to share at your selected privacy level
- Encrypted by Apple's MultipeerConnectivity framework
QR code sharing
- QR code contains only fields marked as shareable
- Access revoked by closing the QR screen
AirDrop / ShareLink
- Standard iOS sharing as a vCard contact file
- You initiate every share action
Apple Wallet (PassKit)
- Export your card as an Apple Wallet pass
- Data remains on your device within Apple's secure Wallet app
Selective disclosure & privacy levels
Solid(ar)ity implements selective disclosure so you control exactly what is shared:
- Public: minimal information (e.g. name and title only)
- Professional: work-related info (e.g. company email, LinkedIn)
- Personal: full information including personal contact details
Before sharing, you select the level. Only fields marked for that level are included.
Zero-knowledge proofs
Solid(ar)ity uses zero-knowledge proofs (ZKPs) via the Semaphore protocol and Mopro framework for privacy-preserving group verification.
What ZKPs are
Cryptographic methods that let you prove a statement is true (e.g. “I am a member of this group”) without revealing anything else about yourself.
Local identity generation
- A unique identity commitment is generated on-device
- Private key lives in the iOS Keychain (never leaves the device)
- Public commitment is a hash that represents your identity without revealing it
Group membership verification
Prove you're a member of a group without revealing which specific member, your personal info, or your device identifier. e.g. “I am one of 500 conference attendees” — without disclosing which one.
Privacy guarantees
- Anonymity: your identity within a group is protected
- Unlinkability: different proofs cannot be linked to the same person
- Local computation: all proofs generated on-device
- No server dependency: verification works peer-to-peer, offline-first
Permissions
Solid(ar)ity requests the following iOS permissions:
- Local network: discover nearby devices for P2P sharing (required for proximity)
- Camera: scan QR codes (optional)
- Photo library: save QR images (optional)
- Contacts: export received cards to your iOS Contacts (optional)
You can deny any of these. The app continues to function with reduced features.
Data security
- AES-GCM encryption with 256-bit keys for local data
- Keychain protection with device-level security for cryptographic keys
- No cloud sync: no iCloud, no external backups
- Secure P2P: MultipeerConnectivity uses TLS-level encryption between devices
- No server exposure: there is nothing to breach remotely
Third-party services
What we do not use:
- No analytics (Google Analytics, Firebase, etc.)
- No advertising networks
- No tracking SDKs
- No cloud databases
- No authentication providers (no Web3Auth, no OAuth)
- No crash reporting services
Apple native frameworks
- MultipeerConnectivity (local network only)
- PassKit (Apple Wallet, data stays local)
- Keychain (hardware-backed key storage)
- Core Data / FileManager (encrypted local storage)
Children's privacy
Solid(ar)ity is not directed at children under 13. Since the app operates entirely locally and collects no data, there is no risk of inadvertently collecting children's information.
International users
All data stays on your device. No information is transmitted to servers, so no data crosses international borders. You maintain full control regardless of your location.
Your rights
- Access: all your data is accessible inside the app
- Correction: edit your card or contacts at any time
- Deletion: delete any or all data within the app settings
- Export: export data as backups or vCards
- Portability: standard formats, no lock-in
Because we don't collect data on servers, there is no need to request data deletion or access from us — you already have direct control.
Changes to this policy
We may update this policy from time to time. Changes are reflected in the “Last updated” date above. We will notify users of significant changes via in-app notifications and updates to this page.
Export control and cryptography
Solid(ar)ity uses cryptography (AES-GCM and zero-knowledge proofs) strictly for privacy and security, not for financial transactions or cryptocurrency.
- No cryptocurrency wallet functionality
- No financial transactions or blockchain integration
- Compliant with iOS App Store cryptography guidelines
Contact
Questions about this policy or our practices:
- Email: [email protected]
- GitHub: github.com/p2p-solidarity
Transparency
Solid(ar)ity is open source. You can audit the code to verify these claims. We believe in privacy by design, not just by policy — our architecture makes it impossible for us to collect your data, because there are no servers to send it to.
Your data stays on your device. Period.