quillkeep
locked

-

A private notebookthat only youcan ever read.

Write notes in your browser and lock them with your crypto wallet or a password. Each note is scrambled before it is saved, so nobody else can read it, not even us.

For the tech-minded: your wallet signs one fixed message (not a transaction, no fee) and HKDF-SHA256 turns that signature into an AES-256-GCM key; a passphrase uses PBKDF2 instead. No account, no server: only ciphertext is stored, in this browser.

AES-256-GCM · fresh key in this tab

How it works in 3 steps

  1. You give it your wallet's approval, or a password you choose.

  2. It turns that into a secret key that scrambles every note.

  3. You get notes only you can open, on this device.

Free. Unlocking with a wallet is a signed message, not a payment: nothing is moved or charged, and there is nothing else to sign.

i.

The notebook

What this does: keeps your notes scrambled with a key that only your wallet or your password can make.

Unlock with your wallet, or with a passphrase if you have none. The key lives only in this tab's memory and disappears when you lock or close it.

Unlock with wallet

Your wallet approves (signs) one fixed message that names this site. The same wallet always gives the same answer, so it always makes the same key. No transaction, no fee.

Show the exact message

Use a passphrase

Your password is stretched into a key (PBKDF2-SHA256, 310,000 rounds, random salt). This is a separate notebook from the wallet one. Forget the password and the notes are gone; that is the point.

estimated strength: -

Opens a separate sample notebook with a public password, so you can look around. It is not private.

iii.

Hide secrets before you share

What this does: finds passwords, wallet keys and recovery phrases in any text and blacks them out before you share it.

Paste a log, chat or screenshot text. It spots private keys, seed phrases, API keys, tokens and addresses. Public addresses can be looked up on Solana mainnet (the real network).


    
The example uses a freshly made throwaway key and phrase, never a real one.
    iv.

    Lock a message with a password

    What this does: turns a short message into scrambled text you can paste anywhere; only the password opens it.

    Open it here with the same passphrase, or with your wallet key if you locked it to yourself.

    Locks a sample message with the password "example-pass", then opens it again.

    
        

    v.

    Back up your notebook

    What this does: saves your notebook as one file, still scrambled, so you can keep a copy elsewhere, or load one back.

    Loading a file opens it with the key you have unlocked; notes it cannot open are refused, never stored half-read.

    Unlock first. The file holds ciphertext, salt and KDF parameters only.

    Shows what the backup file of the example notebook contains.

    vi.

    What has left this page

    What this does: lists every connection this page has made, so you can see your notes never leave your device.

    Read from the browser's own log. The wallet balance check and an occasional slot read go to our read-only Solana mainnet proxy.

    -

      Solana slot - · mainnet-beta · read once a minute while this section is on screen

      vii.

      From one signature to a sealed page

      1. Sign. Your wallet signs a fixed message that names this site, your address and the purpose. 64 bytes come back.
      2. Stretch. HKDF-SHA256 turns the signature plus a random vault salt into a 256-bit AES key. The signature itself is dropped.
      3. Seal. Each note is encrypted with AES-GCM, a fresh 12-byte IV, and its own id as authenticated data.
      4. Store. Only ciphertext reaches local storage. Lock the tab and the key is gone from memory.
      wallet signature64 bytes · Ed25519 HKDF-SHA256salt + info "quillkeep/notes/v1" AES-256-GCM keynon-extractable your noteplaintext, in memory localStorageiv · ciphertext · tag
      ?

      Words used on this page

      Plain meanings for the technical words above.

      Encrypt / scramble
      Turn text into gibberish that only the right key can turn back.
      Key
      The secret that locks and unlocks your notes. Here it is made from your wallet's signature or your password, and kept only in this tab.
      Signature / sign
      Your wallet stamping a message to prove it is you. Signing a message is not a payment and moves nothing.
      Ciphertext
      The scrambled form of your note. It is all this browser stores.
      Salt
      Random bytes mixed in so the same password gives a different key for each notebook.
      Private key
      The secret that controls a crypto wallet. Anyone who sees it can empty the wallet.
      Seed phrase
      12 or 24 words that rebuild a wallet. Never type it into a website or share it.
      Address
      A wallet's public ID, safe to share, like an account number.
      Slot
      Solana's clock tick, about every 0.4 seconds.
      Mainnet
      The real Solana network, where real money lives.
      viii.

      Questions

      What is this, in one sentence?

      Quillkeep is a free notebook in your browser that scrambles every note with a key made from your wallet or your password, so only you can read it.

      Is it safe? Does it touch my money?

      It never touches your money. Unlocking with a wallet asks you to sign a plain message you can read first; it is not a transaction, so nothing is moved or charged, and there is nothing else to sign. Never type your seed phrase into Quillkeep or any site. One honest limit: if you lose your password or wallet, or clear this browser's data without a backup, the notes cannot be recovered. It is an independent tool with no audit.

      Can Quillkeep read my notes?

      No. There is no server that receives them. Notes are encrypted in your browser and stored in this browser's local storage as ciphertext. The only network calls are fonts, the wallet's read-only balance check and a slot height read, all visible in section vi.

      What exactly does my wallet sign?

      A plain text message, shown in full before you sign, that names this site, your address and the purpose. It is not a transaction, moves nothing and costs nothing. Never sign a message from a site you do not trust; a signature over a fixed message is exactly what lets a site derive a key.

      Will the same wallet always open the same vault?

      For standard Ed25519 wallets, yes: the signature over the same message is deterministic. A check value in the vault confirms the key before anything is decrypted, so a wallet that signs differently is told so instead of corrupting notes.

      What if I lose my passphrase or wallet?

      The notes cannot be recovered. Keep an exported vault file plus the means to unlock it.

      How good is the redactor?

      It catches the common shapes: base58 and byte-array Solana keys, BIP-39 phrases with a valid checksum, 64-hex keys, popular API key prefixes, JWTs, emails and addresses. It cannot recognise every secret. Read the output before you share it.

      Is clearing my browser data a risk?

      Yes. Clearing site data deletes the encrypted vault from this browser. Export a vault file if the notes matter.

      Honest notes

      Everything here is real cryptography from your browser's Web Crypto API: HKDF-SHA256, PBKDF2-SHA256 and AES-256-GCM. Search, redaction and sealing run locally. Live mainnet reads: your SOL balance, account types in the redactor and the slot height. Quillkeep holds no funds, sends no transactions, has no accounts or analytics, and claims no audits, partners or users. It is a concept built to be inspected.