kind 35128 · don't trust, verify
f3cfc9cc76cc729221484bda36cd7f539b2ff4e4a7a0a5fd0c66d1a69357944a
{
"id": "f3cfc9cc76cc729221484bda36cd7f539b2ff4e4a7a0a5fd0c66d1a69357944a",
"pubkey": "c2f1ab4e6a577dd8980b57e15986ed92830b95a94f374192235563532b5cac20",
"created_at": 1791871084,
"kind": 35128,
"tags": [
[
"path",
"/index.html",
"c81536b6bdf38aa6fcf93c65b4b7591bd30086a55ae8fcd556ee752369673071"
],
[
"path",
"/__MACOSX/._index.html",
"62727fce604080a52d2fe0a551c651db83bc8c1b6b98dd1f1ea80af4b0f01487"
],
[
"path",
"/404.html",
"c81536b6bdf38aa6fcf93c65b4b7591bd30086a55ae8fcd556ee752369673071"
],
[
"server",
"https://nsite.run"
],
[
"server",
"https://nostr.download"
],
[
"server",
"https://blssm.us"
],
[
"server",
"https://blossom.yakihonne.com"
],
[
"server",
"https://zencrown.relay2aeon.quest/"
],
[
"relay",
"wss://nsite.run"
],
[
"relay",
"wss://nostr.bitcoiner.social"
],
[
"relay",
"wss://purplepag.es"
],
[
"relay",
"wss://relay.primal.net"
],
[
"relay",
"wss://zencrown.relay2aeon.quest"
],
[
"d",
"silent-paper"
],
[
"title",
"\u20bf Monolith \u2014 BIP352 Silent Payments Generator and Paper Wallet"
],
[
"description",
"README \u2014 for the nsite manifest and for anyone who opens the page\n\nThis is \u20bf Monolith, a self-contained Bitcoin wallet for Silent Payments.\n\nSilent Payments are defined by BIP352. They let a sender pay a recipient\nwithout any prior interaction, using a single reusable address. Every\npayment lands at a fresh on-chain output that only the recipient's wallet\ncan detect. The sender does not need to know anything about the recipient\nexcept the address they published.\n\nMonolith is one HTML file. It contains every cryptographic primitive it\nneeds, written in plain JavaScript: SHA-256, SHA-512, HMAC-SHA512,\nPBKDF2, RIPEMD-160, secp256k1, bech32m, Base58Check, BIP32, BIP39, a QR\nencoder, and a small vector PDF writer. There are no script tags pointing\nat remote origins, no fetch calls, no WebSockets, no analytics, and no\ntelemetry of any kind. When you open the file from disk with your Wi-Fi\nradio off, every feature still works.\n\nWhat you can do in Monolith:\n\nGenerate a new wallet. Draw 256 bits from the browser's cryptographic\nrandom number generator, produce a 24-word BIP39 mnemonic, optionally\nprotect it with a BIP39 passphrase, and derive the BIP352 scan and spend\nkeys at m/352'/0'/account'/1'/0 and m/352'/0'/account'/0'/0.\n\nSee your silent payment address. The address is bech32m, starts with\nsp1q, and encodes your scan public key followed by your spend public key.\nThe same string can be posted publicly and reused indefinitely.\n\nSimulate a sender. Provide transaction inputs \u2014 txid, vout, and the\ncorresponding input private keys \u2014 and Monolith will compute the summed\ninput public key, the tagged input hash, the shared secret, and each\nderived P2TR output key. Every intermediate value is shown with its byte\nlength so you can audit the math by hand.\n\nDetect incoming payments. Paste a transaction's summed input public key\nand smallest outpoint, along with candidate output x-only keys. Monolith\nwill derive each candidate output and tell you which ones belong to your\nwallet, together with the matching k index.\n\nRecover a wallet. Four methods are supported. You can restore from a\nBIP39 mnemonic, with up to two words marked with a question mark so\npartial phrases can be searched. You can restore from an extended private\nkey \u2014 xprv, yprv, zprv, tprv, uprv, or vprv. You can restore from a WIF\nprivate key pair. Or you can restore from a raw hex private key pair.\nFive derivation presets are included so you can match wallets built by\nCake Wallet, Sparrow, Silentium, BitBox02, and other implementations.\n\nPrint a paper wallet. Monolith renders a genuine vector PDF paper wallet\nentirely on the client. The public side carries your silent payment\naddress, a QR code, both public keys, and the derivation paths. The\nprivate side carries your 24-word mnemonic, a QR code of the mnemonic,\nthe passphrase status, and the raw scan and spend private keys. Both A4\nand US Letter are supported, and you can print up to eight copies in one\nPDF. Nothing leaves your machine. There are no fonts, images, or\nanalytics fetched over the network.\n\nVerify the math. A built-in conformance panel runs known-answer tests\nagainst published vectors: SHA-256 of the empty string, SHA-256 of\n\"abc\", SHA-512 of \"abc\", the secp256k1 generator and its double, the\nBIP32 test-vector-1 master key, the BIP39 TREZOR seed, an address\nround-trip through bech32m, a full sender-to-receiver consistency check,\nWIF decoding, xprv decoding, partial-mnemonic recovery, and the paper\nwallet PDF structure. All tests must pass on every load.\n\nBecause Monolith is one file, it can be published as an nsite under\nNIP-5A. The nsite manifest maps the file's path to its SHA-256 hash,\nwhich makes the deployment verifiable and content-addressed. Once the\nblob is on Blossom and the manifest event is signed, the site is served\nat a subdomain derived from your pubkey. No server, no DNS, no CDN. The\nfile is the site.\n\nSecurity posture. Monolith is a review and derivation tool, not a\nsigning device. It never touches the network and never writes private\nkeys to persistent storage. The seed, the mnemonic, and the passphrase\nlive only in memory and are cleared on dispose. Reveal and copy actions\nrequire explicit user confirmation. A session auto-lock timer zeroes\nevery cached secret after ten minutes of inactivity.\n\nDo not rely on Monolith as a substitute for an audited hardware wallet.\nVerify every address against a second independent implementation before\nreceiving funds. Silent payments are still a young standard; wallet\nsupport and derivation paths can vary between implementations, and the\nconformance panel is designed to help you notice that."
],
[
"client",
"nsite.run"
]
],
"content": "",
"sig": "6145eed20aaec3aec3e076e945caaf7adb4e0aaf7a03400651c65924cd5d8306b881c7b723fa05758df0aa8a29a2c1f4dacc1a65b8a219970c2f9c6678ffa47b"
}