From 438c8abf5afade611702bc610e64650ef97469e7 Mon Sep 17 00:00:00 2001 From: Oliver Gugger Date: Fri, 10 Jul 2020 15:54:29 +0200 Subject: [PATCH] doc: describe default recovery scenario --- README.md | 158 ++++++++++++++++++++++++++++++++-- cmd/chantools/rescueclosed.go | 2 +- doc/rescue-flow.plantuml | 38 ++++++++ doc/rescue-flow.png | Bin 0 -> 69758 bytes 4 files changed, 192 insertions(+), 6 deletions(-) create mode 100644 doc/rescue-flow.plantuml create mode 100644 doc/rescue-flow.png diff --git a/README.md b/README.md index e36a898..80a632c 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ## Index * [Installation](#installation) -* [Overview](#overview) +* [Command overview](#command-overview) * [Commands](#commands) + [chanbackup](#chanbackup) + [compactdb](#compactdb) @@ -21,27 +21,175 @@ + [walletinfo](#walletinfo) This tool provides helper functions that can be used to rescue funds locked in -`lnd` channels in case `lnd` itself cannot run properly any more. +`lnd` channels in case `lnd` itself cannot run properly anymore. **WARNING**: This tool was specifically built for a certain rescue operation and might not be well-suited for your use case. Or not all edge cases for your needs are coded properly. Please look at the code to understand what it does before you use it for anything serious. -**WARNING 2**: This tool will query public block explorer APIs for some of the +**WARNING 2**: This tool will query public block explorer APIs for some commands, your privacy might not be preserved. Use at your own risk or supply a private API URL with `--apiurl`. ## Installation To install this tool, make sure you have `go 1.13.x` (or later) and `make` -installed and run the following command: +installed and run the following commands: ```bash +git clone https://github.com/guggero/chantools.git +cd chantools make install ``` -## Overview +## Channel recovery scenario + +The following flow chart shows the main recovery scenario this tool was built +for. This scenario assumes that you do have access to the crashed node's seed, +`channel.backup` file and some state of a `channel.db` file (perhaps from a +file based backup or the recovered file from the crashed node). + +![rescue flow](doc/rescue-flow.png) + +**Explanation:** + +1. **Node crashed**: For some reason your `lnd` node crashed and isn't starting + anymore. If you get errors similar to + [this](https://github.com/lightningnetwork/lnd/issues/4449), + [this](https://github.com/lightningnetwork/lnd/issues/3473) or + [this](https://github.com/lightningnetwork/lnd/issues/4102), it is possible + that a simple compaction (a full copy in safe mode) can solve your problem. + See [`chantools compactdb`](#compactdb). +

+ If that doesn't work and you need to continue the recovery, make sure you can + at least extract the `channel.backup` file and if somehow possible any version + of the `channel.db` from the node. +

+ Whatever you do, do **never, ever** replace your `channel.db` file with an old + version (from a file based backup) and start your node that way. [Read this + explanation why that can lead to loss of funds.](https://github.com/lightningnetwork/lnd/blob/master/docs/safety.md#file-based-backups) + +2. **Rescue on-chain balance**: To start the recovery process, we are going to + re-create the node from scratch. To make sure we don't overwrite any old data + in the process, make sure the old data directory of your node (usually `.lnd` + in the user's home directory) is safely moved away (or the whole folder + renamed) before continuing. +
+ To start the on-chain recovery, [follow the sub step "Starting On-Chain + Recovery" of this guide](https://github.com/lightningnetwork/lnd/blob/master/docs/recovery.md#starting-on-chain-recovery). + Don't follow the whole guide, only this single chapter! +

+ This step is completed once the `lncli getinfo` command shows both + `"synced_to_chain": true` and `"synced_to_graph": true` which can take several + hours depending on the speed of your hardware. **Do not be alarmed** that the + `lncli getinfo` command shows 0 channels. This is normal as we haven't started + the off-chain recovery yet. + +3. **Recover channels using SCB**: Now that the node is fully synced, we can try + to recover the channels using the [Static Channel Backups (SCB)](https://github.com/lightningnetwork/lnd/blob/master/docs/safety.md#static-channel-backups-scbs). + For this, you need a file called `channel.backup`. Simply run the command + `lncli restorechanbackup --multi_file `. **This + will take a while!**. The command itself can take several minutes to complete, + depending on the number of channels. The recovery can easily take a day or + two as a lot of chain rescanning needs to happen. It is recommended to wait at + least one full day. You can watch the progress with the `lncli pendingchannels` + command. If the list is empty, congratulations, you've recovered all channels! + If the list stays un-changed for several hours, it means not all channels + could be restored using this method. + [One explanation can be found here.](https://github.com/lightningnetwork/lnd/blob/master/docs/safety.md#zombie-channels) + +4. **Install chantools**: To try to recover the remaining channels, we are going + to use `chantools`. Simply [follow the installation instructions.](#installation) + The recovery can only be continued if you have access to some version of the + crashed node's `channel.db`. This could be the latest state as recovered from + the crashed file system, or a version from a regular file based backup. If you + do not have any version of a channel DB, `chantools` won't be able to help + with the recovery. See step 11 for some possible manual steps. + +5. **Create copy of channel DB**: To make sure we can read the channel DB, we + are going to create a copy in safe mode (called compaction). Simply run +

+ `chantools compactdb --sourcedb --destdb ./results/compacted.db` +

+ We are going to assume that the compacted copy of the channel DB is located in + `./results/compacted.db` in the following commands. + +6. **chantools summary**: First, `chantools` needs to find out the state of each + channel on chain. For this, a blockchain API (by default [blockstream.info](https://blockstream.info)) + is queried. The result will be written to a file called + `./results/summary-yyyy-mm-dd.json`. This result file will be needed for the + next command. +

+ `chantools --fromchanneldb ./results/compacted.db summary` + +7. **chantools rescueclosed**: It is possible that by now the remote peers have + force-closed some of the remaining channels. What we now do is try to find the + private keys to sweep our balance of those channels. For this we need a shared + secret which is called the `commit_point` and is changed whenever a channel is + updated. We do have the latest known version of this point in the channel DB. + The following command tries to find all private keys for channels that have + been closed by the other party. The command needs to know what channels it is + operating on, so we have to supply the `summary-yyy-mm-dd.json` created by the + previous command: +

+ `chantools --fromsummary ./results/.json rescueclosed --channeldb ./results/compacted.db` +

+ This will create a new file called `./results/rescueclosed-yyyy-mm-dd.json` + which will contain any found private keys and will also be needed for the next + command. Use `bitcoind` or Electrum Wallet to sweep all of the private keys. + +8. **chantools forceclose**: This command will now close all channels that + `chantools` thinks are still open. This is achieved by publishing the latest + known channel state of the `channel.db` file. +
**Please read the full warning text of the + [`forceclose` command below](#forceclose) as this command can put + your funds at risk** if the state in the channel DB is not the most recent + one. This command should only be executed for channels where the remote peer + is not online anymore. +

+ `chantools --fromsummary ./results/.json forceclose --channeldb ./results/compacted.db --publish` +

+ This will create a new file called `./results/forceclose-yyyy-mm-dd.json` + which will be needed for the next command. + +9. **Wait for timelocks**: The previous command closed the remaining open + channels by publishing your node's state of the channel. By design of the + Lightning Network, you now have to wait until the channel funds belonging to + you are not time locked any longer. Depending on the size of the channel, you + have to wait for somewhere between 144 and 2000 confirmations of the + force-close transactions. Only continue with the next step after the channel + with the highest `csv_timeout` has reached that many confirmations of its + closing transaction. + +10. **chantools sweeptimelock**: Once all force-close transactions have reached + the number of transactions as the `csv_timeout` in the JSON demands, these + time locked funds can now be swept. Use the following command to sweep all the + channel funds to an address of your wallet: +

+ `chantools --fromsummary ./results/.json sweeptimelock --publish --sweepaddr ` + +11. **Manual intervention necessary**: You got to this step because you either + don't have a `channel.db` file or because `chantools` couldn't rescue all your + node's channels. There are a few things you can try manually that have some + chance of working: + - Make sure you can connect to all nodes when restoring from SCB: It happens + all the time that nodes change their IP addresses. When restoring from a + static channel backup, your node tries to connect to the node using the IP + address encoded in the backup file. If the address changed, the SCB restore + process doesn't work. You can use block explorers like [1ml.com](https://1ml.com) + to try to find an IP address that is up-to-date. Just run + `lncli connect @:` in the recovered + `lnd` node from step 3 and wait a few hours to see if the channel is now + being force closed by the remote node. + - Find out who the node belongs to: Maybe you opened the channel with someone + you know. Or maybe their node alias contains some information about who the + node belongs to. If you can find out who operates the remote node, you can + ask them to force-close the channel from your end. If the channel was opened + with the `option_static_remote_key`, (`lnd v0.8.0` and later), the funds can + be swept by your node. + +## Command overview ```text Usage: diff --git a/cmd/chantools/rescueclosed.go b/cmd/chantools/rescueclosed.go index 32e4e58..77637d9 100644 --- a/cmd/chantools/rescueclosed.go +++ b/cmd/chantools/rescueclosed.go @@ -147,7 +147,7 @@ func rescueClosedChannels(extendedKey *hdkeychain.ExtendedKey, if err != nil { return err } - fileName := fmt.Sprintf("results/bruteforce-%s.json", + fileName := fmt.Sprintf("results/rescueclosed-%s.json", time.Now().Format("2006-01-02-15-04-05")) log.Infof("Writing result to %s", fileName) return ioutil.WriteFile(fileName, summaryBytes, 0644) diff --git a/doc/rescue-flow.plantuml b/doc/rescue-flow.plantuml new file mode 100644 index 0000000..5b27c08 --- /dev/null +++ b/doc/rescue-flow.plantuml @@ -0,0 +1,38 @@ +@startuml + +(*) --> "1: Node crashed" +--> "2: Rescue on-chain balance" +--> "3: Recover channels using SCB" +if "Pending/Open\nchannels left?" then + -->[yes] "4: Install chantools" + if "5: Is channel DB \navailable?" then + -->[yes] "5: Create copy of channel DB" + --> "6: chantools summary" + --> "7: chantools rescueclosed" + if "Pending/Open\nchannels left?" then + -->[yes] "8: chantools forceclose" + --> "9: Wait for timelocks" + --> "10: chantools sweeptimelock" + if "Pending/Open\nchannels left?" then + -->[yes] ===MANUAL=== + else + -->[no] ===DONE=== + endif + else + -->[no] ===DONE=== + endif + else + -->[no] ===MANUAL=== + --> "11: Manual intervention necessary" + --> (*) + endif +else + -->[no] ===DONE=== + note right + Recovery complete + end note +endif + +--> (*) + +@enduml \ No newline at end of file diff --git a/doc/rescue-flow.png b/doc/rescue-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..7a66e0c46dd025e11a49a03a427b910aa48b2d4d GIT binary patch literal 69758 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 eB^X9Dz8IDHFS4Y