| Version | Supported |
|---|---|
| 1.0.x | ✅ |
This application implements several security measures to protect your data:
-
HTTPS Enforcement: The app enforces HTTPS connections by default to protect bearer tokens and vehicle data from interception
- HTTP is only allowed for localhost (127.0.0.1) and .local domains (mDNS/Bonjour)
- For Home Assistant instances on private networks with IP addresses, please use HTTPS
-
Backup Security: Sensitive authentication data (bearer tokens, API credentials) is excluded from Android backups
- This prevents credentials from being exposed through backup mechanisms
- Other app data can still be backed up normally
-
Self-Signed Certificate Support: The app trusts user-added Certificate Authorities
- This allows you to use self-signed certificates for local Home Assistant instances
- You can add your certificate to the Android trusted certificate store
-
Location Permission: The app requests location permission (
ACCESS_FINE_LOCATIONandACCESS_COARSE_LOCATION)- Purpose: Required by Android for WiFi scanning on Android 6.0+
- Usage: Only used to detect WiFi network presence for SSID-based transmission modes
- NOT used for: Tracking your location, collecting location data, or sharing location with any service
-
Network Permissions:
- INTERNET: Required to communicate with Home Assistant
- ACCESS_NETWORK_STATE: Used to check internet connectivity before transmission
- ACCESS_WIFI_STATE: Used to detect current WiFi network
- CHANGE_WIFI_STATE: Used for automatic WiFi switching feature (optional)
-
No Data Collection: This app does not collect, store, or transmit any data except:
- OBD vehicle data sent directly to YOUR Home Assistant instance
- Only the data you choose to send
- No analytics, tracking, or third-party data sharing
To ensure maximum security when using this plugin:
-
Use HTTPS: Always configure your Home Assistant URL with HTTPS
- Example:
https://homeassistant.local:8123 - Use Let's Encrypt for free SSL certificates, or self-signed certificates for local use
- Example:
-
Secure Tokens:
- Use long-lived access tokens with limited scope
- Rotate tokens regularly
- Never share tokens publicly
-
Network Security:
- Use a VPN for remote access instead of exposing Home Assistant to the internet
- Keep Home Assistant updated
- Use strong passwords and enable two-factor authentication in Home Assistant
-
Local Network Setup:
- If your Home Assistant is on a local network only (recommended), it will not be accessible from outside your network
- Consider using mDNS (.local domain) for easy local access
If you need to use HTTP with a private IP address (not recommended), you have two options:
Set up HTTPS on your Home Assistant instance using:
- Let's Encrypt with DNS challenge
- Self-signed certificate (add to Android trusted certificates)
- Nginx reverse proxy with SSL
Configure your Home Assistant with a .local domain name:
- Example:
http://homeassistant.local:8123 - This is supported by the network security configuration
If you must use HTTP with an IP address, you can modify the network security configuration:
- Fork this repository
- Edit
src/main/res/xml/network_security_config.xml - Add your specific domain pattern to the
domain-configsection - Build and install your modified version
Warning: Using HTTP with bearer tokens exposes your credentials to network interception attacks.
If you discover a security vulnerability in this application, please report it by:
- Email: Contact the repository owner directly (see GitHub profile)
- Private Security Advisory: Use GitHub's security advisory feature (if available)
- Do NOT: Create a public issue for security vulnerabilities
Please include:
- Description of the vulnerability
- Steps to reproduce
- Potential impact
- Suggested fix (if available)
We aim to respond to security reports within 48 hours and will keep you updated on the progress.
Security updates will be released as soon as possible after a vulnerability is confirmed. Updates will be:
- Tagged with version numbers
- Documented in release notes
- Announced in the repository README
This application follows modern Android security and privacy policies:
- Targets Android API 33 (Android 13)
- Implements network security configuration
- Excludes sensitive data from backups
- Documents all permission usage
- Follows Android best practices for data protection