Hamster Authenticator — Privacy Policy
Effective date: October 13, 2025
This Privacy Policy explains how Hamster Authenticator ("we", "our", "the App") collects, uses, stores, and shares
information when you install and use the App on iPhone, iPad, macOS, and Apple Watch. If you have questions about
this policy or our practices, contact us at: hamster+support@omitlens.com
Summary
- The App is a local authenticator for generating time-based one-time passwords (TOTP). All critical operations
(TOTP generation, QR parsing) happen on your device.
- Secrets (TOTP shared secrets) are stored in the device Keychain. Keychain items are marked synchronizable, which
allows iCloud Keychain synchronization across your devices if you have iCloud Keychain enabled.
- The App may request access to the camera to let you scan QR codes to add accounts. The camera feed is used only
for scanning QR codes and is not stored or uploaded.
- The App does not collect analytics, crash reporting, advertising identifiers, or other telemetry by default, and
it does not send authentication secrets to any external servers.
Data we collect and why
1) Information you provide directly
TOTP shared secrets, account labels, and issuer names: These are provided when you add an account to the App
(manually or by scanning a QR code). We store these secrets locally in the Keychain so the App can generate one-time
passwords.
2) Device data and settings
Keychain metadata: The App uses the Keychain to persist entries. The Keychain entries include an
identifier (UUID) and the account data encoded as JSON. The App sets the Keychain items as synchronizable. This
allows iCloud Keychain to sync your accounts between your devices if you have iCloud Keychain enabled; enabling
syncing is controlled by the user’s iCloud settings, not by the App.
3) Camera access
Purpose: The App requests camera permission solely to scan QR codes when you choose to add a new
account by scanning. The QR image or camera frames are not saved to disk and are not uploaded to any server.
4) Safari extension interaction
The App includes a Safari web extension component that can request one-time tokens from the main app via
inter-process messages. The extension communicates locally with the host App to read stored account entries and
generate tokens on demand. These communications are local to the device. The extension code in the repository does
not send data to remote servers.
What we do NOT collect or share
- We do not send your TOTP secrets, labels, or generated tokens to any external servers.
- We do not include third-party analytics, crash-reporting SDKs, advertising, or behavioral tracking in the App
(based on the present source code).
- We do not access contacts, location, photos, or other personal data beyond the camera (for QR scanning) and the
Keychain entries you explicitly add.
How your data is stored and protected
- Keychain: Account secrets and related metadata are stored encrypted in the device Keychain
using the system Keychain APIs (the project uses the KeychainAccess library). The App marks items synchronizable
which may allow iCloud Keychain to back up and sync them across the user's devices.
- Local-only generation: TOTP generation is performed locally on the device using CryptoKit.
Secrets are never serialized and transmitted to external servers by the App.
- App sandboxing and entitlements: On macOS and iOS the App runs in the platform sandbox and
declares app group and keychain-access entitlements to support secure storage and extension-host communication.
Third-party services and libraries
The App uses open-source libraries (for example, KeychainAccess) to interact with the Keychain. These libraries
operate locally. No networked third-party services are used for telemetry or secret storage in the App code
inspected.
User choices and controls
- Camera access: You can enable or disable camera access in your device settings. If you deny
camera access, you can still add accounts manually by entering the secret and issuer.
- iCloud Keychain sync: Whether Keychain items synchronize across your devices is controlled by
your iCloud Keychain settings. To prevent syncing of your authenticator accounts via iCloud, disable iCloud
Keychain in your device settings.
- Deleting accounts: You can remove any stored account from the App; removal deletes the
corresponding Keychain item. Note that if iCloud Keychain sync is enabled, deletion will propagate to other
devices using the same iCloud account.
Retention
We retain the account data you store for as long as it remains in your Keychain. If you delete the App or remove an
account, the App will remove the corresponding Keychain entries. Backups or iCloud-synced copies may persist
according to Apple’s backup and iCloud retention policies.
Children
App Store age rating: 4+. The App is appropriate for users aged 4 and older according to App Store
guidelines.
We do not knowingly target or collect personal information from children under 13.
Changes to this privacy policy
We may update this policy from time to time to reflect changes in the App or legal requirements. If we make
material changes, we will update the Effective Date above.
Contact us
For questions, requests, or concerns about privacy, please contact: hamster+support@omitlens.com