SolHush

Read it anywhere

Find it on Solscan. Open it here.

Every SolHush message is a public Solana memo. Anyone can see it. Only you can read it. Copy the memo from any explorer and decrypt it with your key, right in your browser.

  1. Click "Solscan" under any message in SolHush, or paste the transaction signature into solscan.io.

  2. Scroll down to "Instruction Details".

  3. Open the Memo Program instruction. Its data is the memo.

  4. Copy everything starting at hush1: and paste it in the box.

solscan.io/tx/…

Instruction Details

#1Memo Program: Memo
Datahush1:AYq3Rk0vWm9eT2xH…c8Fh
The highlighted text is what you copy. To anyone else it looks like noise.

Messy copy is fine. We pull out the hush1: part.

2 · Your key

Your key never leaves this tab. Decryption runs in your browser.

Works even if SolHush disappears.

Download one HTML file. It has the full decoder inside and needs no internet and no SolHush server. Open it, paste a memo and your recovery key.

Offline decoder

Every message carries its full ciphertext on Solana, so the memo from Solscan is all the offline file needs.

Or write it yourself · the full recipe

  1. 1

    Strip the prefix

    Remove hush1: and base64url-decode the rest. Byte 0 is the version (1).

  2. 2

    Derive your key

    HKDF-SHA256 over your 32-byte recovery seed, info "hush/v1/box", gives your X25519 secret.

  3. 3

    Shared secret

    X25519(your secret, bytes 1–32). HKDF it with salt = ephemeral key + your public key (concatenated), info "hush/v1/wrap".

  4. 4

    Unwrap

    Use that key with XChaCha20-Poly1305 and a zero nonce to open bytes 33–80 (recipient) or 81–128 (sender).

  5. 5

    Open the body

    Use the message key with nonce = bytes 129–152 and AAD = bytes 0–152 to decrypt the rest.

  6. 6

    Read it

    Inside: sender key (32), signature (64), time in ms (8), then your UTF-8 text.