kind 35128 · 2026-10-13 05:58 UTC
₿ Monolith — BIP352 Silent Payments Generator and Paper Wallet
README — for the nsite manifest and for anyone who opens the page This is ₿ Monolith, a self-contained Bitcoin wallet for Silent Payments. Silent Payments are defined by BIP352. They let a sender pay a recipient without any prior interaction, using a single reusable address. Every payment lands at a fresh on-chain output that only the recipient's wallet can detect. The sender does not need to know anything about the recipient except the address they published. Monolith is one HTML file. It contains every cryptographic primitive it needs, written in plain JavaScript: SHA-256, SHA-512, HMAC-SHA512, PBKDF2, RIPEMD-160, secp256k1, bech32m, Base58Check, BIP32, BIP39, a QR encoder, and a small vector PDF writer. There are no script tags pointing at remote origins, no fetch calls, no WebSockets, no analytics, and no telemetry of any kind. When you open the file from disk with your Wi-Fi radio off, every feature still works. What you can do in Monolith: Generate a new wallet. Draw 256 bits from the browser's cryptographic random number generator, produce a 24-word BIP39 mnemonic, optionally protect it with a BIP39 passphrase, and derive the BIP352 scan and spend keys at m/352'/0'/account'/1'/0 and m/352'/0'/account'/0'/0. See your silent payment address. The address is bech32m, starts with sp1q, and encodes your scan public key followed by your spend public key. The same string can be posted publicly and reused indefinitely. Simulate a sender. Provide transaction inputs — txid, vout, and the corresponding input private keys — and Monolith will compute the summed input public key, the tagged input hash, the shared secret, and each derived P2TR output key. Every intermediate value is shown with its byte length so you can audit the math by hand. Detect incoming payments. Paste a transaction's summed input public key and smallest outpoint, along with candidate output x-only keys. Monolith will derive each candidate output and tell you which ones belong to your wallet, together with the matching k index. Recover a wallet. Four methods are supported. You can restore from a BIP39 mnemonic, with up to two words marked with a question mark so partial phrases can be searched. You can restore from an extended private key — xprv, yprv, zprv, tprv, uprv, or vprv. You can restore from a WIF private key pair. Or you can restore from a raw hex private key pair. Five derivation presets are included so you can match wallets built by Cake Wallet, Sparrow, Silentium, BitBox02, and other implementations. Print a paper wallet. Monolith renders a genuine vector PDF paper wallet entirely on the client. The public side carries your silent payment address, a QR code, both public keys, and the derivation paths. The private side carries your 24-word mnemonic, a QR code of the mnemonic, the passphrase status, and the raw scan and spend private keys. Both A4 and US Letter are supported, and you can print up to eight copies in one PDF. Nothing leaves your machine. There are no fonts, images, or analytics fetched over the network. Verify the math. A built-in conformance panel runs known-answer tests against published vectors: SHA-256 of the empty string, SHA-256 of "abc", SHA-512 of "abc", the secp256k1 generator and its double, the BIP32 test-vector-1 master key, the BIP39 TREZOR seed, an address round-trip through bech32m, a full sender-to-receiver consistency check, WIF decoding, xprv decoding, partial-mnemonic recovery, and the paper wallet PDF structure. All tests must pass on every load. Because Monolith is one file, it can be published as an nsite under NIP-5A. The nsite manifest maps the file's path to its SHA-256 hash, which makes the deployment verifiable and content-addressed. Once the blob is on Blossom and the manifest event is signed, the site is served at a subdomain derived from your pubkey. No server, no DNS, no CDN. The file is the site. Security posture. Monolith is a review and derivation tool, not a signing device. It never touches the network and never writes private keys to persistent storage. The seed, the mnemonic, and the passphrase live only in memory and are cleared on dispose. Reveal and copy actions require explicit user confirmation. A session auto-lock timer zeroes every cached secret after ten minutes of inactivity. Do not rely on Monolith as a substitute for an audited hardware wallet. Verify every address against a second independent implementation before receiving funds. Silent payments are still a young standard; wallet support and derivation paths can vary between implementations, and the conformance panel is designed to help you notice that.
Missing files
These files were checked. They were not on the hosts listed here.
| path | sha256 | missing on |
|---|---|---|
| /__MACOSX/._index.html | 62727fce604080a52d2fe0a551c651db83bc8c1b6b98dd1f1ea80af4b0f01487 |
https://nostr.download · missing
|
Manifest
- event id
- f3cfc9cc76cc729221484bda36cd7f539b2ff4e4a7a0a5fd0c66d1a69357944a
- aggregate x
- None
- d tag
- silent-paper
Paths
| path | sha256 | hosts | |
|---|---|---|---|
| /index.html | c81536b6bdf38aa6fcf93c65b4b7591bd30086a55ae8fcd556ee752369673071 |
https://nsite.run · degraded
https://nostr.download · degraded
https://blssm.us · degraded
https://blossom.yakihonne.com · degraded
https://zencrown.relay2aeon.quest/ · degraded
|
preview |
| /__MACOSX/._index.html | 62727fce604080a52d2fe0a551c651db83bc8c1b6b98dd1f1ea80af4b0f01487 |
https://nsite.run · degraded
https://nostr.download · missing
https://blssm.us · degraded
https://blossom.yakihonne.com · degraded
https://zencrown.relay2aeon.quest/ · degraded
|
preview |
| /404.html | c81536b6bdf38aa6fcf93c65b4b7591bd30086a55ae8fcd556ee752369673071 |
https://nsite.run · degraded
https://nostr.download · degraded
https://blssm.us · degraded
https://blossom.yakihonne.com · degraded
https://zencrown.relay2aeon.quest/ · degraded
|
preview |