Privacy-First Approach
This document outlines the comprehensive privacy approach implemented in the Avian FlightDeck Wallet.
Table of Contents
- Core Privacy Principles
- Data Protection Measures
- Wallet Address Privacy
- Notification Privacy
- Audit Logging Privacy
- User Control
- Testing Your Privacy
Core Privacy Principles
The Avian FlightDeck Wallet implements these fundamental privacy principles:
- Data Minimization: We collect and store only what’s absolutely necessary
- No User-Wallet Linking: We avoid creating permanent links between user accounts and wallet addresses
- Cryptographic Verification: Wallet ownership is verified through signatures, not database records
- Local Verification: Critical security checks happen locally on the device
- Data Truncation: Identifiers are truncated or hashed when stored in audit logs
- No User Tracking: We do not track users across different sessions or devices
- Transparent Data Handling: All data collection and processing is documented
Data Protection Measures
Client-Side Security
- Private keys never leave the user’s device
- Encryption with user-provided passwords
- Local storage with strong encryption
Client-Side Security
- No storage of unencrypted private keys or seeds
- Secure local storage for all sensitive data
- Minimal storage of sensitive information
Wallet Address Privacy
Privacy-Preserving Storage
The application implements several privacy-preserving techniques:
- Local Only Storage: Wallet addresses and keys never leave your device
- Password Encryption: User-provided passwords encrypt sensitive data
- Ownership Verification: Cryptographic signatures verify ownership locally
Implementation
The wallet privacy implementation uses:
// Example of local signature verification
const isOwner = verifyWalletSignature(walletAddress, message, signature);
Local Storage Structure
The IndexedDB storage structure is designed for privacy:
- Separate object stores for different data types
- Encrypted wallet data in secure stores
- No linkage between sensitive data points
Notification Privacy
The client-side notification system provides enhanced privacy through:
- All notification preferences stored locally in the browser
- No server-side storage of notification settings or preferences
- No transmission of wallet addresses for notification purposes
- Fully local processing of notification triggers via browser’s Notification API
For complete details on the notification system, see Notifications.
Audit Logging Privacy
Our local security audit logging implements these privacy protections:
- Identifier Truncation: All identifiers (wallet addresses, device IDs) are truncated to show only enough information for debugging.
- Minimal Context: Audit logs only record that a change happened, not the specific values changed.
- Local Storage Only: Security logs are stored only on the user’s device.
- User Control: Users can clear logs at any time through the security settings.
User Control
Users have comprehensive control over their data:
- Option to use encrypted or non-encrypted wallets
- Control over which wallets have notifications enabled
- Ability to clear local storage and reset the application
- Transparent activity logs showing recent security events
- Full control over data persistence with options to delete any stored data
Testing Your Privacy
To verify the privacy protections are working:
- Check the security audit logs to ensure no full identifiers are being stored
- Use browser developer tools to examine IndexedDB storage content
- Confirm that notification preferences are stored locally
- Use browser network tools to verify that no sensitive data is transmitted