Skip to content

bitcoinscalinglabs/bitcoin-ipc

Repository files navigation

Bitcoin IPC (InterPlanetary Consensus)

Overview

See docs.

Overview

Components

Provider

Exposes an HTTP endpoint with a JSON RPC to interact with Bitcoin. It's primarily intented to be used by the IPC Subnet Manager. It listens on the port configurable by PROVIDER_PORT, defaulting to 3030. It requires an Authorization header with a bearer token to be set to the value of PROVIDER_AUTH_TOKEN.

It signs all Bitcoin multisig transactions using the private key set in the VALIDATOR_SK_PATH environment variable, which defines the path to the private key file.

Monitor

Monitors the Bitcoin network for new blocks and transactions. It processes transactions with IPC-related data. It saves the data in a local database, configurable by DATABASE_URL environment variable.

Deleting the database and rerunning monitor should not cause any issues, as only side-effects it has is importing new address as watch-only in Bitcoin Core. It should rebuild the database from the Bitcoin blockchain.

Configuration

See .env.example for the list of environment variables. Example .env files can be found in internal/demo.ipc.

About

Integration of IPC on Bitcoin

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •