🧠 ReMemory Guide

How to create bundles and recover files

There is also a CLI guide.

Overview

ReMemory is a digital safe with multiple keys. You choose who holds them and how many must come together to open it.

Under the hood, it encrypts your files with age, splits the key among people you trust, and gives each person a self-contained bundle for recovery.

Recovery is opening a file in a browser.* No servers, no need for this website to exist.

If you hold a piece for someone, start at Recovering Files.

* Time-locked archives need a brief internet connection at recovery time.

Tip: No one person can access your data. They need to bring together enough pieces β€” say, 3 of 5.

Why ReMemory

You probably have digital secrets that matter: password manager recovery codes, cryptocurrency seeds, important documents, instructions for loved ones. What happens to these if you're suddenly unavailable?

Think of it like a safe deposit box that needs two keys to open β€” no single person holds enough to get in alone.

Traditional approaches have weaknesses:

  • Give one person everything β€” a single point of failure and trust
  • Split files manually β€” confusing, error-prone, no encryption
  • Use a password manager's emergency access β€” similar to "give one person everything", also relies on the company existing
  • Write it in a will β€” becomes public record, slow legal process

ReMemory takes a different approach:

  • No single point of failure β€” requires multiple people to cooperate
  • No trust in any one person β€” even your most trusted friend can't access your secrets alone
  • Offline and self-contained β€” recovery works without internet or servers*
  • Designed for anyone β€” clear instructions, not cryptographic puzzles

Creating Bundles

Three steps. Everything happens in your browser β€” your files never leave your device. Open the bundle creator to get started.

Step 1: Add Friends

Add the people who will hold pieces of your recovery key. For each, provide a name and optionally contact information.

Adding friends in Step 1
Each person here will hold one piece of the key

Then choose how many of them must come together to open your files.

Choosing how many:
  • 2 of 3 people: The simplest setup
  • 3 of 5 people: A good balance
  • 4 or 5 of 7 people: More secure, more coordination
High enough that a few people can't open it without the others. Low enough that it still works if one or two can't be reached.

Step 2: Add Files

Drag and drop the files or folder you want to protect.

Adding files in Step 2
Add the files you want to protect

Good candidates:

  • Password manager recovery codes
  • Cryptocurrency seeds/keys
  • Important account credentials
  • Instructions for loved ones
  • Legal document locations
  • Safe combinations
Note: Avoid files that change often. This is designed for secrets you set once and leave.

Step 3: Generate Bundles

Click "Generate Bundles" to lock your files and make a bundle for each person.

Generating bundles in Step 3
Download each bundle, or all at once

Each bundle includes the full recovery tool. It works even if this website is gone.

Distributing to Friends

Send each person their bundle however you prefer:

  • Email: Attach the ZIP file
  • Cloud storage: Share via Dropbox, Google Drive, etc.
  • USB drive: Physical handoff
  • Encrypted messaging: Signal, WhatsApp, etc.

If you send bundles by email or messaging, delete the messages from your sent folder once each friend confirms receipt. Otherwise your account ends up holding a copy of every piece β€” defeating the point of splitting them.

After Creating Bundles

Once your bundles are ready, there are a few things worth doing before you put this out of your mind:

  • Ask each person to open recover.html once. It shows "Your piece is here" when it can read their piece.
  • Tell each person what this is, why they have it, and that they should keep it safe. They cannot use it alone β€” they will need to coordinate with others.
  • Save the locked files with "Save the locked files (MANIFEST.age)" and keep that copy somewhere safe. It holds no piece, so it's useless to anyone without enough of them.
  • Save your project.yml so you can regenerate bundles later
  • Print README.pdf as a paper backup before sending the digital bundle. Paper doesn't need adapters or power.
  • Set a yearly reminder to check in β€” see Keeping Bundles Current
  • Consider running a recovery drill β€” it's the only way to know your plan actually works

Recovering Files

This part is for the friends who hold a piece. Most of the time, all a friend does is keep their bundle safe. One day, someone may ask them for their piece, or they may be the one who brings the pieces together.

If you're here because someone you care about can't be reached anymore, there's no hurry. Nothing here expires. You can take as long as you need β€” if you close the recovery page partway, you'll add the pieces again when you come back.

What's a Piece?

A piece is one part of the key that locks the files. On its own, it opens nothing and reveals nothing.

Your README holds your piece as a block of text and as 25 words. The printed README.pdf also has it as a QR code. These are all the same piece β€” any one of them is enough to pass on.

What Friends Receive

Each bundle contains:

README.txt What this is, who else holds a piece, and your piece itself
README.pdf The same, ready to print. Your piece is on it as a QR code and as words.
MANIFEST.age The locked files. Only in some bundles β€” most carry them inside recover.html instead.
recover.html The recovery page. It opens in any web browser, with your piece already in it.

Each bundle is made for one friend: their piece is already inside their recover.html, along with the names of the others and how to reach them.

Keeping Your Bundle

Keep it somewhere safe, and a printed copy of README.pdf too if you can. There's nothing else to do until the time comes.

To check it, open recover.html. It shows "Your piece is here", which piece you hold, how many are needed to open the files, and whether the locked files are there too.

If Someone Asks for Your Piece

First, make sure the request is real. If you can, check with the person who made the bundle. If you can't reach them, check with another friend who holds a piece.

Then send it whichever way is easiest:

  • The whole bundle (the ZIP file) β€” the simplest.
  • Your README.txt β€” it holds your piece on its own.
  • Your recovery words, read aloud over the phone.
  • Your printed page, by post β€” the QR code on it holds your piece.

Bringing the Pieces Together

One person gathers the pieces. It can be any of the friends β€” whoever takes it on.

1

Open recover.html

Double-click the bundle to open it, then double-click recover.html. It opens in your web browser, like a web page, with your own piece already in it. If you don't have a bundle, any friend can send you their recover.html, or you can use the recovery page here.

2

Reach out to the others

If you have a bundle, its recover.html and README list who else holds a piece and how to reach them β€” unless the bundles were made without names. Tell them what has happened and ask for their piece. Some will want to check with you first that the request is real β€” their instructions ask them to.

3

Add each piece as it arrives

Drag their bundle or README.txt onto the page, paste their text, type the recovery words they read to you, or scan the QR code on their printed page. If names are listed, a checkmark appears next to each one.

4

The files unlock on their own

Once there are enough pieces, the page opens the files without you doing anything. Download them and keep them somewhere private.

If the page asks for the locked files: drag MANIFEST.age from a friend's bundle onto it β€” or, if their bundle has none, their recover.html. Most bundles carry them already, so you won't see this step.
Recovery page with pieces gathered so far
The pieces gathered so far, and who to contact
Recovery page after the files are unlocked
Once there are enough pieces, the files are unlocked and ready to download

Typing Recovery Words

Each printed page has the piece as a list of numbered words. If a friend reads you theirs over the phone, or all you have is paper, type the words into the recovery page. Press "Paste a piece or type recovery words" and type them in, separated by spaces. Only the words matter, not the numbers.

Typing recovery words from a printed page into the recovery page
Type the words from the printed page
Recovery page after the words were entered, showing the piece was added
The page recognizes the words and adds the piece

Scanning a QR Code

On a computer or phone with a camera, press "Scan QR code" on the recovery page and hold the printed page up to it.

Browser asking for permission to use the camera
Your browser will ask to use the camera
Scanning a QR code from a printed page
Hold the QR code up to the camera to add the piece

Scanning the QR code with a phone's camera app works too: it opens the recovery page on this website, with the piece filled in.

About recovery:
  • Works without an internet connection*
  • The pieces and the files stay on your device
  • Friends can be anywhere β€” each one only needs to get their piece to you

Best Practices

Choosing Friends

  • Longevity: People likely to be reachable in 5–10 years
  • Geographic spread: Not all in the same place
  • Technical ability: People don't need to be technical. Their instructions walk them through it, and a recovery drill will show you where anyone gets stuck.
  • Relationships: Will they cooperate with each other?
  • Trust: A single piece reveals nothing, but you're trusting them with responsibility

Security Considerations

  • Don't keep all bundles together β€” that defeats the point of splitting
  • Consider printing README.pdf β€” paper survives digital disasters
  • Save project.yml if you want to regenerate bundles later

Storing Bundles Safely

Bundles are small (under 10 MB) and designed to be stored in everyday places. Here's what works well:

  • Email works well. Most people keep the same email address for decades, and bundles are small enough to attach. Many email providers retain messages indefinitely.
  • Cloud storage (Google Drive, Dropbox, iCloud) works well as a secondary copy.
  • USB drives can work, but keep in mind that connectors change over time (USB-A is already giving way to USB-C) and flash memory can degrade if left unpowered for years. Not ideal as the only copy.
  • Paper is the most durable option. Printing README.pdf gives your friends a copy of their piece that doesn't need adapters, power, or any working device.

Paper holds the pieces, but not the locked files themselves β€” those only live in digital copies. So the best approach is redundancy β€” email plus paper, or cloud plus paper. More than one copy, in more than one form.

Keeping Bundles Current

Set a yearly reminder to check in with your friends. Confirm they still have their bundles and update contact details if anything has changed.

When your files change, create new bundles and send them. The old bundles won't open the new archive, so there's no risk in leaving them around β€” but ask friends to replace theirs to keep things tidy.

When contacts change β€” someone moves, changes their phone number, or you want to add or remove someone β€” same thing: new bundles, ask people to delete the old ones.

Between updates, keep your source files in an encrypted vault β€” tools like Cryptomator or VeraCrypt work well. Don't leave plaintext copies sitting in a regular folder.

Think of it like updating your emergency contacts. Brief, periodic, worth doing.

Recovery Drills

Nobody tests their backup plan. A recovery drill changes that β€” and it plays a little like an escape room.

Create a test bundle with a harmless secret (a photo, a message, a recipe). Hand out pieces to your friends. Set a timelock if you want a real countdown. Then step back and let them figure it out: coordinate, combine pieces, unlock the files β€” without your help.

What you learn:

  • Can your friends actually find their bundles when they need them?
  • Do they understand the instructions, or do they get stuck?
  • Can they reach each other without you coordinating?

A drill that goes smoothly means your real plan will too. A drill that goes badly is a gift β€” you found the problem before it mattered.

Revoking Access

Once a piece has been distributed, it cannot be revoked. This is by design β€” there is no server, no central authority.

If you need to change who holds pieces:

  1. Create new bundles with a new set of friends and a fresh key
  2. Send new bundles to the friends you still trust
  3. Ask every remaining friend to delete their old bundle and replace it with the new one
Important: Old pieces still work with old archives. When you send a new bundle, be clear: delete the old one, keep only the new one. No version history, no "just in case."

The same applies when secrets change. New bundles mean a new key and new pieces. Old pieces won't open the new archive, but they still work with the old one. Make sure friends aren't holding on to old copies.

About project.yml

When you create bundles, your project is saved in a project.yml file. This file stores:

  • Friends' names and contact information
  • Your chosen threshold (e.g., 3 of 5)
  • A verification hash for checking if bundles match
  • Share checksums for verifying bundle integrity

It does not store any secrets β€” no passphrase, no key material, no file contents. It's safe to keep with your other records.

With project.yml, you can regenerate bundles, verify existing ones, and check the status of your setup.

Understanding the Security

ReMemory composes well-established cryptographic tools rather than inventing its own. Here's what that means in practice.

What Protects Your Data

Your files are locked with a modern encryption tool (age) β€” widely reviewed, no known weaknesses.

The key that locks them is 256 bits long, generated from your operating system's random number generator. For scale: guessing it would take longer than the universe has existed.

Even if someone tried every possible password, scrypt makes each guess deliberately slow β€” millions of times slower than a naive attempt.

The key is then split using Shamir's Secret Sharing. Any fewer than threshold pieces contain zero information about the original. Not "very little." Mathematically zero.

Each bundle also lists checksums of its files, so rememory verify-bundle can tell you if one was damaged along the way. Checksums catch accidents, not deliberate changes: whoever alters a file can update its checksum too. The encrypted archive is protected on its own β€” if it's altered, it won't open.

What Could Go Wrong

A friend loses their bundle Fine, as long as enough other friends still have theirs. That's why you set the threshold below the total.
A friend leaks their piece publicly A single piece is useless without the others. Someone would still need threshold-1 more pieces to do anything.
Some friends can't be reached That's why you set the threshold below the total number of friends. If you chose 3-of-5, any three will do.
ReMemory disappears in 10 years recover.html still works β€” it's self-contained. No servers, no downloads, no dependencies on this project.
Browsers change dramatically The recovery tool uses standard JavaScript and the Web Crypto API β€” browser fundamentals, not trends.
You forget how this works Each bundle's README.txt explains everything. Your friends don't need to remember anything β€” it's all written down for them.

The things that do need to be true: your device is trusted when you create bundles, and the browser used for recovery isn't compromised. These are the same assumptions you make any time you use a computer for something important.

For a detailed technical evaluation, see the security self-review.

How It Compares

ReMemory isn't the first tool to use Shamir's Secret Sharing. There are many others, from command-line tools to web apps. Here's what sets ReMemory apart:

  • Handles files, not just text. Most Shamir tools only split passwords or short text. ReMemory encrypts entire files and folders.
  • Self-contained recovery tool. Each friend receives recover.html β€” a complete recovery tool that runs in any browser, offline.* No installation, no CLI needed.
  • Contact details included. Each bundle includes a list of other friends and how to reach them, so coordination doesn't depend on you being available.
  • No server dependency. Everything runs locally. There's no service to sign up for, no account to maintain, nothing that needs to stay online.

For a detailed comparison with other tools, see the full comparison table on GitHub.

CLI Alternative

There is also a command-line tool for those who prefer a terminal or need to automate bundle creation.

Read the CLI Guide

The CLI provides the same functionality, plus batch operations and scripting.

Advanced: Anonymous Mode

When holders should not know each other's identities, use anonymous mode:

  • People are labeled as "Share 1", "Share 2", etc.
  • No contact information is collected or stored
  • READMEs skip the "Other Share Holders" section
  • Bundle filenames use numbers instead of names

When to Use Anonymous Mode

This is useful when:

  • Holders should not know each other
  • You're testing quickly without entering names
  • You have another way to coordinate recovery
  • Privacy is a higher priority than ease of coordination

How to Enable

In the bundle creator, enable the Anonymous toggle in the Friends section:

  • The friend list is replaced by a share count
  • Set how many shares and the threshold
  • Bundles are named bundle-share-1.zip, bundle-share-2.zip, etc.

Recovery in Anonymous Mode

Recovery works the same way, but without the contact list. Holders see generic labels like "Share 1" instead of names.

Important: Without a built-in contact list, make sure holders know how to reach each other when recovery is needed.

Advanced: Multilingual Bundles

Each person can receive their bundle in their preferred language. Seven languages are supported: English, Spanish, German, French, Slovenian, Portuguese and Chinese (Taiwan).

How It Works

  • Each friend entry has a Bundle language dropdown
  • "Default" uses the current UI language
  • Override per person to mix languages
  • recover.html opens in the selected language
  • Anyone can switch languages at any time
Friend entry showing the bundle language dropdown in the web UI
Each friend has a language dropdown to set their bundle language
recover.pdf opened in Spanish
The recovery tool opens in the friend's selected language
recover.pdf opened in Spanish
Word lists are translated too (both languages work)

Advanced: Time-Delayed Recovery

You can set a waiting period when creating bundles. Even if your friends combine their pieces early, the files stay locked until the date you chose β€” 30 days, 6 months, a specific date.

How to Enable

In the bundle creator, switch to Advanced mode and check Add a time lock. Choose how long the files should stay locked β€” up to two years.

The two-year limit is deliberate. Time locks depend on the League of Entropy continuing to operate, and we don't think it's responsible to lock your files behind a longer bet on external infrastructure. If you need a longer duration and understand the trade-off, the CLI has no cap: rememory seal --timelock 5y.

Time lock setup in Advanced mode
The time lock option appears in Advanced mode

Recovery

When someone opens a time-locked bundle before the date, the recovery tool shows a waiting notice. Once the time passes, recovery proceeds normally.

Recovery tool showing a time lock waiting notice
The recovery tool waits until the time lock expires

Opening a time-locked archive requires a brief internet connection. Your files aren't sent anywhere β€” the connection verifies that enough time has passed. Without the time lock, recovery is fully offline.

Experimental. Time-delayed recovery depends on the League of Entropy, a distributed network operated by serious organizations around the world. If this network stops operating before a time lock expires, that archive becomes unrecoverable. Bundles without a time lock are not affected.

How It Works

The League of Entropy produces a new cryptographic value every 3 seconds. Each value is numbered. You can predict which number corresponds to a given time, but the value for that number can't be produced early β€” not by anyone, including the network operators.

When you create a time-locked bundle, the archive is encrypted to a specific future value. The key to open it doesn't exist yet. It will come from the network when that moment arrives.

For a deeper look at the cryptography behind this, see the drand timelock encryption documentation.

Self-Hosting

ReMemory can also run as a web app on your own server using rememory serve. The server provides the same creation and recovery tools through a browser. Friends only need their share β€” the encrypted archive is served automatically.

This is an advanced option for people who already run a homelab or want a shared web UI. The offline bundles remain the primary way to use ReMemory and work without any server. See the self-hosting guide on GitHub for details.