Skip to content
GrowScope
Open app

Your grow diary, unreadable to anyone but you — including us.

As of September 2026, every GrowScope account encrypts its grow diary end-to-end and by default. Plant data, logs, notes, and saved AI-history text are encrypted on your own device before they ever reach the server, using a recovery-phrase-derived key hierarchy — not a policy promise, a mechanism.

The problem

Most grow-diary and cannabis-tracking apps store your plants, notes, and photos as plain text on their own servers. That means staff can read it, a data breach exposes it, and a legal request can compel it — all without you ever knowing your data wasn't actually private in the first place. For anything cannabis-related, that's not a hypothetical risk.

Why it's hard to solve alone

A privacy policy is a promise about intent. Encryption is a mechanism that makes the promise true even if intent changes — a new owner, a subpoena, a compromised database, or a curious employee. The difference matters most for exactly the kind of data a grow diary contains.

How GrowScope helps

GrowScope encrypts your diary on your own device before it's sent anywhere, using a recovery-phrase-derived key hierarchy: Argon2id derives a key from your 12-word recovery phrase, which unwraps an AES-256-GCM master key, which in turn derives per-record keys (HKDF) used to encrypt each piece of content with AES-256-GCM. The server only ever stores ciphertext, plus a wrapped copy of your master key it cannot use without your recovery phrase. This is mandatory for every account — there is no way to opt out and store your diary unencrypted.

How it works

  • On signup (or on first login after the September 2026 migration), you generate a 12-word recovery phrase on your own device — it is never transmitted or stored anywhere in usable form.
  • Argon2id derives an encryption key from that phrase, which unwraps an AES-256-GCM master key.
  • The master key derives per-record encryption keys via HKDF, so a compromise of one record's key doesn't expose others.
  • Every plant, log entry, note, and saved AI-history text is encrypted with AES-256-GCM on your device before it's sent to the server — the server only ever receives and stores ciphertext.
  • The one disclosed exception: when you explicitly trigger an AI feature (photo analysis, fertilizer advisor, Grow Coach), the specific data that request needs is decrypted on-device and sent once to the AI provider to generate that one response — nothing is decrypted automatically or in the background.

In the app

What you get

Your grow diary is unreadable at rest to GrowScope's own server, by default, for every account — with one honestly disclosed exception for AI features you explicitly trigger, and no exception for storage or sync.

Frequently asked questions

What happens if I lose my 12-word recovery phrase?

Because GrowScope never stores your recovery phrase or a usable copy of your key, losing it means your encrypted diary cannot be recovered by GrowScope or anyone else. This is the direct trade-off of true zero-knowledge encryption — write your phrase down and store it somewhere safe.

Is encryption optional, or can I turn it off?

It's mandatory for every account as of September 2026 — there is no setting to store your diary unencrypted. Accounts created before that date are migrated to encryption automatically the next time they open the app.

Does GrowScope's AI ever see my unencrypted data?

Only for a specific action you explicitly trigger — like requesting a photo analysis or a fertilizer recommendation. In that case, only the data that request needs is decrypted on-device and sent once to the AI provider (Anthropic Claude, or via OpenRouter, Google Gemini) to generate that response. Nothing is decrypted automatically, in the background, or for storage.

Can GrowScope staff read my grow diary?

No. The server only ever stores ciphertext and a wrapped copy of your master key that's useless without your recovery phrase. There's no support-side "reset password and read your data" path, because there's nothing readable to reset into.