diff --git a/public/nip-49decrypt/connectivity-ping.txt b/public/nip-49decrypt/connectivity-ping.txt new file mode 100644 index 0000000..8e55469 --- /dev/null +++ b/public/nip-49decrypt/connectivity-ping.txt @@ -0,0 +1 @@ +pong diff --git a/public/nip-49decrypt/index.html b/public/nip-49decrypt/index.html new file mode 100644 index 0000000..6cd9d56 --- /dev/null +++ b/public/nip-49decrypt/index.html @@ -0,0 +1,1737 @@ + + + + + +NIP-49 — Offline Decrypt (Self-contained) + + + +
+
+ Offline-only toolkit +

NIP-49 Offline Decryptor

+

Bring your ncryptsec, pull the plug, and recover the private key entirely inside this single, auditable HTML file.

+
+ 🔌 Works without a network connection + 🧮 Built-in libsodium + scrypt helpers + 📄 Export a self-contained copy +
+
+ + + + +
+
+

Runtime status

+

Everything required for password stretching, AEAD decryption, and bech32 conversion ships directly with this page.

+
+ initialising… +
+
Loading library versions…
+
+ +
+

Decrypt your ncryptsec

+

No telemetry, no calls home, no external dependencies. Take your device offline, paste your encrypted key and password to extract the 32-byte secret HEX and its bech32 nsec.

+
YOU DEVICE IS CONNECTED TO THE INTERNET. This window will activate once no internet connection is detected.
+ +
+ +
+
+
+

Quick start guide

+

Follow these steps each time you unlock your nsec from a NIP-49 secret.

+
    +
  • + 1 +
    + Download, then go offline +

    Save this HTML file and open the page in your browswer, then disable Wi‑Fi and/or unplug Ethernet, the "Decrypt your ncryptsec" window will activate.

    +
    +
  • +
  • + 2 +
    + Paste your protected key +

    Enter the full ncryptsec string and your password. The app derives the scrypt key and attempts XChaCha20-Poly1305 decryption locally.

    +
    +
  • +
  • + 3 +
    + Record the results securely +

    Copy the 32-byte hex key or the regenerated nsec. Re-enable your connection only after you have safely stored the output.

    +
    +
  • +
+
+
+
+
+

What’s inside this page?

+

A curated bundle of battle-tested libraries, baked directly into the source so you can inspect every byte.

+
    +
  • libsodiumProvides crypto_aead_xchacha20poly1305_ietf_decrypt for authenticated decryption.
  • +
  • Scrypt derivation helpersStretch passwords into 256-bit keys using the NIP-49 parameters.
  • +
  • bech32 / bech32m toolsDecode ncryptsec payloads and emit friendly nsec outputs.
  • + +
+
+ +
+

Safety checklist

+

Keep your keys safe with these quick reminders.

+
    +
  • Always verify you trust the source of this HTML file. Review it or host it yourself.
  • +
  • Stay offline while working with secrets. Reconnect only after clearing the inputs.
  • +
  • Use a unique, high-entropy password for each encrypted key.
  • +
+
+ +
+

Don't Trust - Verify

+

You don't need to trust anyone to run this code.

+
    +
  • You can save the contents of this HTML file (File - Save As/Save Page As)
  • +
  • Read every line of code and look for yourse.f
  • +
  • Export buttonGenerates a downloadable, self-contained HTML copy for air-gapped machines.
  • +
+
+
+ + +
+ + + + + + +