Wallet recovery forensics

Crypto custody & compliance · engineering reference

Wallet recovery forensics

Recovery is constraint engineering. First prove the wallet is not merely scanning the wrong path; then divide the remaining candidate space by a measured guess rate and accept the answer.

VOLATILE CLAIMS: DATE-TAGGEDPRINT: LANDSCAPE TABLES

Start here if this is new

Most lost wallets are not cryptographically lost. They are looking in the wrong place, or missing a piece the owner still half-remembers. This sheet is about working out which case you are in before spending money on cracking.

My wallet shows a zero balance. Is the money gone?

Usually not. A wallet derives its addresses from a path, and a different wallet or a different account setting derives different addresses from the same seed. Ruling out a wrong derivation path resolves a large share of cases before any cracking starts.

I forgot part of my seed phrase. Can it be brute forced?

It depends entirely on how much you still know, and the range spans about twelve orders of magnitude. One missing word in a known position is a couple of thousand candidates. A forgotten passphrase of four random words is beyond any hardware. To the person asking, both feel like the same problem.

How do I know whether it is feasible at all?

Arithmetic. Constrain the candidate space with everything you remember, benchmark real guesses per second on named hardware, and divide. If the answer is longer than a human lifetime, that is the answer, and no tool changes it.

Someone guarantees recovery for a fee. Is that real?

No. Nobody can guarantee an outcome that depends on a search space they have not measured. Upfront fees, guarantees, and any request to send the wallet file or the seed phrase are the standard shape of the scam.

If you remember one lineDo the feasibility arithmetic first. Preserve a verified copy of the media before anything is allowed to touch it.

Feasibility before tools

Recovery is constraint engineering. Every number below is an input to one division that decides whether to start at all.

Triage steps6preserve → stop
Feasibilityspace ÷ rate= wall-clock seconds
First checkwrong pathbefore any cracking
BIP39 KDF2,048PBKDF2-HMAC-SHA512 rounds
12-word checksum~1/16accepted mnemonics
Without a secretno recoveryno exploit exists

candidate space ÷ measured guesses per second = wall-clock seconds

1 · PRESERVE

Work on verified copies; stop destructive retries.

2 · IDENTIFY

Format, wallet version, chain, script, path.

3 · SCAN

Rule out wrong path/account/passphrase state.

4 · CONSTRAIN

Write exact token/mask/position assumptions.

5 · BENCHMARK

Exact KDF on named hardware.

6 · STOP

Reject runs whose cost exceeds rational value.

No secret, no exploit, no recovery. Blockchain transparency does not let anyone derive an unconstrained private key.

Candidate space spans twelve orders of magnitude

The gap between a tractable search and an impossible one is not a matter of effort. It is visible the moment the space is plotted on a log axis.

10⁵10⁶10⁹10¹²10¹⁵
1 word, known slot2,048
1 word, any slot24,576
2 words, known slots4,194,304
12 words, reordered479,001,600
8-char lowercase208,827,064,576
4 Diceware words≈3.66×10¹⁵

Triage before tools

The third step resolves most cases. Cracking is the last resort, not the first move.

Recovery triage: rule out the wrong derivation path before any cracking Preserve a verified copy, identify the format, scan for the correct derivation path, constrain the candidate space, benchmark the key derivation function, then divide to decide whether the search is feasible at all. PreserveIdentify ScanConstrain BenchmarkStop most “lost” wallets stop here — wrong path, account or passphrase state candidate space ÷ measured guesses per second = wall-clock seconds No secret, no exploit, no recovery Blockchain transparency does not let anyone derive an unconstrained private key
Divide the constrained candidate space by a measured guess rate on named hardware, then accept the answer.

Recovery feasibility triage

Never type a seed into a website. Work on copies, isolate secrets, record every transformation, and move recovered funds to a newly generated wallet after verification. Case-by-case ratings behind these verdicts: recovery odds by scenario.

CaseSecret exposureConstraintFirst safe actionVerdict
Valid seed, wrong pathNoneKnown wallet/era/addressOffline path + script matrix scanLIKELY
One missing 12-word positionSeed candidates11 known words + checksumEnumerate 2,048 words; checksum prunesTRACTABLE
One missing word, unknown positionSeed candidates11 words + 12 positionsEnumerate positions × wordlist; checksumTRACTABLE
Two missing wordsSeed candidates10 known + positionsCompute exact combinations before hardwareMEASURE
Remembered password structureEncrypted wallet copyMask/token grammarBenchmark KDF on copy; checkpointDEPENDS
Unknown BIP39 passphraseSeed remains validNo length/word constraintsBuild honest candidate modelOFTEN INFEASIBLE
Lost seed + intact unlocked deviceLive deviceExport/transfer windowIsolate and move using native UITIME CRITICAL
Lost seed + locked/wiped hardwareDevicePIN retry/chip modelStop attempts; document device/versionSPECIALIST / NO
Deleted wallet fileDisk imageBlocks not overwrittenPower down; forensic image; carve copyUNCERTAIN
No key, seed, file, device or constraintsNoneUnconstrained key spaceDo not pay anyoneIMPOSSIBLE

The wallet is often looking in the wrong place

A restore that shows a zero balance is usually a lookup failure, not a loss. Worked diagnosis: seed phrase restored an empty wallet.

Derivation path

The same seed creates different accounts under different purpose, coin, account, change, and index values.

Concrete use: Scan m/44'/0'/0', m/49'/0'/0', m/84'/0'/0', and m/86'/0'/0' only in an offline, systematic plan.

Failure mode: Random path guessing loses coverage and evidence.

Script type

Legacy, wrapped SegWit, native SegWit, and Taproot encode different output scripts and addresses.

Concrete use: Match a known historical receive address before scanning balances.

Failure mode: A valid seed can show zero when the wallet defaults to the wrong script family.

BIP39 passphrase

Every passphrase—including empty—derives a valid but unrelated wallet.

Concrete use: Test remembered spelling, normalization, spaces, case and language from a constrained list.

Failure mode: There is no checksum that tells you the passphrase is “close.”

Account/index range

Funds can sit beyond a wallet's default account or lookahead range.

Concrete use: Persist last-used indexes and scan beyond known activity only with a bounded range.

Failure mode: An unused gap can make later addresses invisible.

Wrong chain/coin type

Shared curve/address formats do not imply shared derivation or asset state.

Concrete use: Identify wallet software/version and the actual chain transaction history first.

Failure mode: Importing into a lookalike chain can expose keys without finding funds.

BIP39 search-space math

BIP39: entropy is 128–256 bits, words index a 2,048-word list, checksum length is ENT/32, and seed derivation uses PBKDF2-HMAC-SHA512 with 2,048 iterations. Checksum pruning is not password security.

Known informationRaw candidatesChecksum effectOperational reading
12 words, one unknown at known position2,04812-word checksum accepts ~1/16~128 valid mnemonics before address check
12 words, one unknown position12 × 2,048 = 24,576Many duplicates/invalid; verify systematicallySmall
12 words, two known positions missing2,048² = 4,194,304Checksum reduces valid mnemonics ~16×Benchmark; often tractable
12 known words, order unknown12! = 479,001,600Checksum ~16× pruningLarge but constrain with remembered positions
24 words, one unknown at known position2,04824-word checksum accepts ~1/256~8 valid mnemonics before address check
8-char lowercase password26⁸ = 208,827,064,576No mnemonic checksumKDF speed decides; don't assume feasible
4 Diceware-like unknown words from 7,776 list7,776⁴ ≈ 3.66×10¹⁵No helpful checksumInfeasible at most wallet KDF rates

Format and tool register

Benchmark your exact extracted hash/KDF on named hardware. The governing equation is candidates ÷ measured guesses/second = seconds; compare cost and time with value at stake. Per-format walkthroughs with real file layouts and measured rates: Bitcoin Core wallet.dat, Blockchain.com backups, MultiBit locations and paths, Electrum files that will not open.

Format/problemCost functionTool classRequired inputGotcha
BIP39 mnemonic/passphrasePBKDF2-HMAC-SHA512 × 2,048btcrecover / custom offline verifierKnown address/xpub + constraintsEvery passphrase yields a wallet
Bitcoin Core wallet encryptionVersion/wallet dependentbitcoin2john + hashcat/John; source-specificCopy of wallet fileDo not benchmark an unknown format guess
Ethereum keystorescrypt or PBKDF2 parameters embedded in JSONhashcat/John modesKeystore copy + exact KDF paramsMemory cost limits parallelism
Browser-extension vaultVersion-dependent PBKDF2/other KDFFormat extractor + crackerVault + creating versionIteration counts change across versions
Wrong HD pathDerivation + address lookupElectrum/descriptor/xpub scannerSeed/xpub + known addressNever upload xpub for sensitive wallet privacy
Deleted fileStorage forensicsRead-only disk image + carvingImage, filesystem, time lineContinued use overwrites evidence

Device, media & estate cases

Each of these has a first action that is easy to get wrong under pressure. Longer treatments: Trezor with a lost PIN or broken screen, pulling a seed off an iPhone, deleted wallet files, estate recovery.

Dead hardware, known seed

The seed/descriptor is the wallet; replace the device and verify derived address before moving.

Concrete use: Restore on a trusted spare, confirm a historical receive address, then migrate to fresh backup material.

Failure mode: Device brand does not bind funds if the interoperable backup is complete.

Unknown PIN, no seed

Retry counters and secure elements can turn experimentation into permanent wipe.

Concrete use: Stop, photograph model/firmware/condition, and obtain a specialist feasibility opinion before another attempt.

Failure mode: Online videos for another revision can destroy the only remaining state.

Damaged backup

BIP39 wordlist, prefix uniqueness, position and checksum provide reconstruction constraints.

Concrete use: Transcribe every plausible character/word from high-resolution images of the copy, not the original under repeated handling.

Failure mode: Cleaning chemicals and heat can erase remaining evidence.

Estate access

Legal authority and technical key access are independent requirements.

Concrete use: Keep a sealed locator/instruction record outside the will; use distributed key arrangements and annual restore drills.

Failure mode: Publishing a seed in a probate document destroys secrecy.

Recovery scam red flags

Second-loss fraud is the most common outcome after a first loss. Longer checklist: telling a legitimate service from a scam, and an offline recovery scam checker that scores an approach against these signals without sending anything anywhere.

Unsolicited contact

Reply bots and impersonators target public loss reports.

Concrete use: Independently locate official contact channels; do not continue in direct messages.

Failure mode: Claimed law-enforcement affiliation is not verification.

Upfront unlock/tax fee

A fake platform displays a balance then demands payment to release it.

Concrete use: Do not pay; preserve messages, wallet addresses, domains and transaction evidence for reporting.

Failure mode: Additional payment compounds the loss and does not unlock a blockchain transfer.

Seed validator/sync site

The tool exfiltrates the only secret required to steal funds.

Concrete use: Use reviewed open-source tools offline on an isolated system and a copy.

Failure mode: A professional-looking domain and TLS do not make seed entry safe.

Guaranteed recovery

No one can recover a mathematically unconstrained private key.

Concrete use: Require a written feasibility model: candidate count, measured rate, time, cost and stop condition.

Failure mode: Confidence without constraints is sales fraud, not forensics.

Second-wave recovery

Victim lists are resold; a new actor claims to recover the first loss.

Concrete use: Assume anyone citing private details may have bought them; verify independently and report.

Failure mode: Prior victimization increases targeting, not legitimacy.

Safe recovery and prevention checklist

The annual restore drill is the only evidence that a backup, passphrase, derivation metadata, and procedure form a real recovery system.

  1. Stop using the only device/media; make verified read-only copies or a forensic image.
  2. Record wallet software, version, chain, script type, derivation path, known addresses, dates, and observed error.
  3. Scan path/script/account matrix before any cracking attempt.
  4. Compute candidate count and benchmark the exact KDF on named hardware before renting hardware.
  5. Run tools offline; never disclose seed, passphrase, private key, or unrestricted wallet file.
  6. Checkpoint long jobs and retain tested/excluded candidate sets.
  7. After recovery, move funds to a fresh wallet whose backup was independently verified.
  8. Store seed and passphrase in separate failure domains with durable, geographically redundant media.
  9. Record descriptor/path/software metadata alongside—not secret inside—the recovery instructions.
  10. Perform an annual restore to a spare device and verify a known first address.

Common mistakes & anti-patterns

Failures that pass a vendor demo. Expand each for the control and the reason it fails.

Only-copy experimentation

A repair, parser or password attempt can corrupt the remaining evidence.

Concrete use: Image first; hash source and working copy.

Failure mode: Recovery cannot be repeated without provenance.

Cracking before scanning

The seed may be correct under another path, script, account or passphrase state.

Concrete use: Run the derivation matrix first.

Failure mode: Hardware spend cannot fix a wrong model.

Seed entered online

The attempt discloses spend authority.

Concrete use: Use reviewed tools offline and move recovered funds.

Failure mode: A checker can steal later, not immediately.

No stop condition

Search expands indefinitely as memories become guesses.

Concrete use: Precommit space, budget, benchmark and checkpoint.

Failure mode: Sunk cost is not new evidence.

Casework from a recovery practice

This sheet compresses paid recovery work done at WalletRecovery.info. The write-ups below carry the per-format detail the tables leave out: actual file layouts, measured guess rates, and the cases that correctly end in a documented no.

Primary sources & scope

Operational and volatile claims were checked against these first-party documents on 2026-08-31. Examples are illustrative controls, not legal, investment, or vendor-selection advice.