Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Bitcoin-Wildlife-Sanctuary/catnet
Catnet custom Bitcoin signet with OP_CAT enabled, used to test implementation of Bitcoin Circle STARK Verifier ๐บ-๐บ
https://github.com/Bitcoin-Wildlife-Sanctuary/catnet
bitcoin op-cat stark
Last synced: 2 months ago
JSON representation
Catnet custom Bitcoin signet with OP_CAT enabled, used to test implementation of Bitcoin Circle STARK Verifier ๐บ-๐บ
- Host: GitHub
- URL: https://github.com/Bitcoin-Wildlife-Sanctuary/catnet
- Owner: Bitcoin-Wildlife-Sanctuary
- License: mit
- Created: 2024-06-10T07:24:44.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-06-25T16:56:55.000Z (7 months ago)
- Last Synced: 2024-06-25T18:32:21.397Z (7 months ago)
- Topics: bitcoin, op-cat, stark
- Language: Python
- Homepage: https://catnet-mempool.btcwild.life/
- Size: 141 KB
- Stars: 15
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-op-cat - CatNet
- awesome-op-cat - CatNet
README
# Catnet ๐บ-๐บ
Catnet is a [custom Bitcoin signet](https://en.bitcoin.it/wiki/Signet#Custom_Signet) with OP_CAT enabled, used to test implementation of [Bitcoin Circle STARK Verifier](https://github.com/Bitcoin-Wildlife-Sanctuary/bitcoin-circle-stark).
Catnet signet magic is: `af34136e`.
## Resources
- [Catnet block explorer](https://catnet-mempool.btcwild.life/)
- [Catnet faucet](https://catnet-faucet.btcwild.life/)## Joining the Catnet Custom Signet
Catnet is a custom Signet network that provides an environment for testing Bitcoin applications with the OP_CAT functionality enabled. This guide will walk you through setting up a local node to connect to the Catnet.
Notably, we will use Catnet to test the implementation of a [Bitcoin Circle STARK Verifier](https://github.com/Bitcoin-Wildlife-Sanctuary/bitcoin-circle-stark).
Catnet is built based on [Bitcoin Inquisition fork](https://github.com/bitcoin-inquisition/bitcoin), [v27.0](https://github.com/bitcoin-inquisition/bitcoin/releases/tag/v27.0-inq). Bitcoin Inquisistion includes activation of BIP 118 (ANYPREVOUT), BIP 119 (CHECKTEMPLATEVERIFY), and BIN-24-1 (BIP 347, OP_CAT). It also includes a new 'evalscript' subcommand for bitcoin-util that can be used to test script opcode behaviour.
### Prerequisites
- Basic command-line interface skills
- Administrative permissions on your machine
- An internet connection### Step 1: Download and Install Bitcoin Core
You have two options to download and install Bitcoin Core:
- **Download the pre-built binaries**: You can download the pre-built binaries from the Bitcoin Inquisition release and use them directly.
- **Build from source**: You can build Bitcoin Inquisition from source code ([this release](https://github.com/bitcoin-inquisition/bitcoin/releases/tag/v27.0-inq)).First, you need to download the appropriate Bitcoin Core binaries for your system. Below are links for commonly used systems:
- **Linux (aarch64)**: [Download v27.0 for aarch64](https://github.com/bitcoin-inquisition/bitcoin/releases/download/v27.0-inq/bitcoin-27.0-inq-aarch64-linux-gnu.tar.gz)
- **macOS (arm64)**: [Download v27.0 for arm64](https://github.com/bitcoin-inquisition/bitcoin/releases/download/v27.0-inq/bitcoin-27.0-inq-arm64-apple-darwin.tar.gz)You can find links for other systems [here](https://github.com/bitcoin-inquisition/bitcoin/releases/tag/v27.0-inq).
After downloading the tar.gz file for your system, extract it using the following command:
```bash
tar -xzf bitcoin-27.0-inq-.tar.gz
```Navigate to the extracted directory:
```bash
cd bitcoin-27.0-inq/bin
```### Step 2: Configuration
Before starting your node, you need to create a configuration file to properly join the Catnet Signet.
1. **Create a new directory for your Bitcoin data:**
```bash
mkdir -p ~/.bitcoin/catnet
```2. **Create the `bitcoin.conf` file:**
```bash
nano ~/.bitcoin/catnet/bitcoin.conf
```3. **Add the following configuration to the file:**
```ini
# General settings
signet=1
txindex=1
server=1
daemon=1
deprecatedrpc=create_bdb# Signet settings
[signet]
# Custom signet challenge
signetchallenge=5121027be9dab7dfc2d1b9aac03f883b9a229fc9c298770dec626b2acbf39e9b6e0e0c51ae
# Add the seed node
addnode=catnet.btcwild.life# RPC settings
rpcbind=127.0.0.1
rpcallowip=127.0.0.0/8
rpcport=38332
rpcuser=XXX
rpcpassword=XXX
```Save and close the file. Replace `rpcuser` and `rpcpassword` with your desired credentials.
### Step 3: Start Your Node
Using `bitcoind`:
Run the following command in the terminal from the `bin` directory of your Bitcoin Core installation:```bash
./bitcoind -datadir=~/.bitcoin/catnet
```This command will start your Bitcoin node and connect it to the Catnet Signet.
OR
Using `bitcoin-qt`: Run the following command in the terminal from the `bin` directory of your Bitcoin Core installation:
```bash
./bitcoin-qt -datadir=~/.bitcoin/catnet
```Screenshot example:
![bitcoin-qt](./docs/resources/img/bitcoin-qt-example.png)
### Step 4: Verifying the Connection
After your node starts, you can verify it's properly connecting to the network by checking the peer information:
```bash
./bitcoin-cli -rpcport=38332 -rpcuser=XXX -rpcpassword=XXX getpeerinfo
```You should see the Catnet node `35.192.139.170` listed among the peers.
### Step 5: Create a Wallet
You can create a new wallet to interact with the Catnet Signet using the following command:
```bash
./bitcoin-cli -rpcport=38332 -rpcuser=XXX -rpcpassword=XXX -named createwallet wallet_name="test" descriptors=false
```### Step 6: Generate a New Address
You can generate a new address to receive funds on the Catnet Signet:
```bash
./bitcoin-cli -rpcport=38332 -rpcuser=XXX -rpcpassword=XXX getnewaddress
```### Step 7: Claim some coins from the faucet
You can claim some coins from the faucet by visiting the [Catnet faucet](https://catnet-faucet.btcwild.life/) and submitting your address and the captcha.
Screenshot example:
![faucet](./docs/resources/img/catnet-faucet-example.png)
### Conclusion
You are now connected to the Catnet custom Signet! This environment allows you to test applications with Bitcoinโs OP_CAT enabled without risking real assets or impacting the main Bitcoin network.
Please ensure that your firewall settings allow connections on port 38333 to enable peer-to-peer network interactions.