Goblin
Free & open source

Send grin like a text.

Goblin is a private wallet for GRIN with encrypted messaging. Reach a username or an npub and it travels as an end-to-end encrypted message over nostr, through Tor. No files to swap. No need to both be online.

Get the builds
App StoreComing soon SOON Google PlayComing soon SOON

Linux · macOS · Windows · Android. Apache-2.0, sha256 checksums on every build.

How a payment travels

Payments are NIP-44 encrypted; relays only ever see ciphertext — never the amount, sender, or recipient. Privacy is Mimblewimble on-chain + Tor on the wire.
Youtype an amount, pick a name
Gift wrapslatepack sealed, NIP-17
Toronion-routed, linked in-process
themunwrapped, verified, applied

Private by construction

Pay anyone instantly and directly — an addressless, confidential chain underneath.

Confidential by design

GRIN is confidential digital cash — every amount is cryptographically hidden. Like handing someone cash, what you send stays between the two of you.

Pay a username

Handles are NIP-05 identities at goblin.st. Pay alice — or any raw npub on nostr.

Sealed delivery

The slatepack travels as a NIP-17 gift-wrapped DM (kind 1059) and is applied automatically by the recipient's wallet — no files, no meetups.

Tor, built in

Your payments and identity — nostr messages, names, price and avatars — ride Tor, embedded right into the app. Tor hides your IP from the relay; the relay and encryption hide the rest — content, sender, timing. (The grin node connects directly — public chain data, not tied to you.) Nothing to set up.

Separate from your wallet key

Your nostr payment key is deliberately separate from your funds. Rotate it any time to stay unlinkable — your grin never moves.

Your numbers, your way

Off by default. Opt into a world currency, Bitcoin, or sats and the rate is fetched over Tor — nothing leaves your device otherwise.

Security you can check

Every claim here lives in the open-source code. Here is what protects you, layer by layer.

Double-encrypted messages

Every message is wrapped twice. A NIP-44 seal encrypts it to the recipient, then an outer gift wrap re-encrypts it with a throwaway key that also hides who sent it. Relays only ever see ciphertext.

Your seed stays encrypted

The recovery seed is encrypted at rest with your wallet password before it ever touches disk. It is derived on demand and never held in the clear.

Your relays, your choice

Run on the defaults, pick your own set, or point Goblin at a relay you host yourself, localhost included. You decide who carries your messages.

Everything over Tor

Nostr messages, name lookups and price data all ride Tor, embedded right in the app. The relay never learns your IP; the encryption hides the rest.

Be yourself.

Claim a free handle in the app and friends can pay you by name. Your handle resolves through the open goblin.st identity service — standard NIP-05, one name per key, yours until you release it.

Or remain anonymous and reset your identity whenever you want.

New to nostr? nostr.how is a friendly primer.

$ curl 'https://goblin.st/.well-known/nostr.json?name=alice'
{
  "names": {
    "alice": "7d2f19c0…a4c41a"
  }
}

Downloads

Fresh from the forge. Verify with the checksums file — every build ships one.

Download on theApp Store SOON Get it onGoogle Play SOON

Store listings are on the way. Until then, grab the APK on the left — it's the same wallet.