Skip to content
2 changes: 1 addition & 1 deletion docs/developers/faqs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ unique characteristics and focus areas.
* Testnet: Permissionless development
* Mainnet: Initially permissioned to approve deployments, transitioning to open access

### Phase 3: Bitcoin-Secured Networks (BSNs)
### Phase 3: Bitcoin Secured Networks (BSNs)
- **Focus**: Integrating multiple blockchain networks to Babylon Genesis
- **Development Approach**:
* Testnet: Permissionless development
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
sidebar_class_name: phase_2_sidebar
sidebar_label: "Phase 2: Babbylon Genesis Launch"
sidebar_label: "Phase 2: Babylon Genesis Launch"
sidebar_position: 2
---

Expand Down
108 changes: 82 additions & 26 deletions docs/guides/security/audit_reports.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,90 @@ sidebar_class_name: audit_reports_sidebar
sidebar_position: 1
---

import BrowserOnly from '@docusaurus/BrowserOnly';


# Audit Reports

Babylon protocol is secure and audited by industry leading web3 security firms.
Babylon protocol is secure and audited by industry leading web3 security firms.
Since the launch of the protocol is phased, specific audit reports are conducted.
Comment on lines +11 to +12
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Babylon protocol is secure and audited by industry leading web3 security firms.
Since the launch of the protocol is phased, specific audit reports are conducted.
Babylon protocol is audited by industry leading web3 security firms.
Below you can find the audits conducted for the code base associated with
the different phases of the launch.


### Phase 1 Audits

Audits for the Phase 1 of the Babylon Bitcoin Staking Protocol are conducted by three different firms.

<CardSection id="Babylon Security Audit Reports">
<BrowserOnly>
{() => (
<Card
title="Coinspect Audit Report"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
title="Coinspect Audit Report"
title="Coinspect Phase-1 Audit Report"

to={new URL('/assets/files/coinspect-phase1-audit.pdf', window.location.origin).href}
description="Source Code Audit - Phase 1 (June 2024)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description="Source Code Audit - Phase 1 (June 2024)"
description="Coinspect Source Code Audit - Phase 1 (June 2024)"

target="_blank"
rel="noopener noreferrer"
/>
)}
</BrowserOnly>
<BrowserOnly>
{() => (
<Card
title="Coinspect Audit Report Incremental "
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
title="Coinspect Audit Report Incremental "
title="Coinspect Phase-1 Incremental Audit Report"

to={new URL('/assets/files/coinspect-phase1-audit-incremental.pdf', window.location.origin).href}
description="Source Code Audit - Phase 1 Cap3 (October 2024)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description="Source Code Audit - Phase 1 Cap3 (October 2024)"
description="Zellic Source Code Audit - Phase 1 Cap-3 updates (October 2024)"

target="_blank"
rel="noopener noreferrer"
/>
)}
</BrowserOnly>
<BrowserOnly>
{() => (
<Card
title="Zellic"
to={new URL('/assets/files/zellic-phase1-audit.pdf', window.location.origin).href}
description="Blockchain Security Assessment (June 2024)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description="Blockchain Security Assessment (June 2024)"
description="Zellic Source Code Audit - Phase 1 (June 2024)"

target="_blank"
rel="noopener noreferrer"
/>
)}
</BrowserOnly>
<BrowserOnly>
{() => (
<Card
title="Cantina"
to={new URL('/assets/files/cantina-phase1-competition.pdf', window.location.origin).href}
description="Bitcoin Staking Scripts Competition (January 2024)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description="Bitcoin Staking Scripts Competition (January 2024)"
description="Sherlock Source Code Security Competition - Phase 1 (June 2024)"

target="_blank"
rel="noopener noreferrer"
/>
)}
</BrowserOnly>
</CardSection>

### Phase 2 Audits

Audits for the Babylon Genesis Chain are conducted by [Coinspect](https://www.coinspect.io/) and [Zellic](https://zellic.io/).

<CardSection id="Babylon Security Audit Reports">
<Card
title="Coinspect Audit Report"
to="https://docs.babylonlabs.io/assets/files/coinspect-phase1-audit.pdf"
description="Source Code Audit - Phase 1"
/>
<Card
title="Coinspect Audit Report Incremental "
to="https://docs.babylonlabs.io/assets/files/coinspect-phase1-audit-incremental.pdf"
description="Source Code Audit - Phase 1 Cap3"
/>
<Card
title="Zellic"
to="https://docs.babylonlabs.io/assets/files/zellic-phase1-audit.pdf"
description="Blockchain Security Assessment"
/>
<Card
title="Cantina"
to="https://docs.babylonlabs.io/assets/files/cantina-phase1-competition.pdf"
description="Bitcoin Staking Scripts Competition"
/>
<Card
title="Coinspect Phase 2 Audit Report"
to="https://docs.babylonlabs.io/assets/files/coinspect_source_code_audit_babylon_phase_2_v250324.pdf"
description="Source Code Audit - Phase 2"
/>
<BrowserOnly>
{() => (
<Card
title="Coinspect Phase 2 Audit Report"
to={new URL('/assets/files/coinspect_babylon_phase_2_audit_2025_03.pdf', window.location.origin).href}
description="Babylon Genesis Chain Audit (March 2025)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description="Babylon Genesis Chain Audit (March 2025)"
description="Coinspect Babylon Genesis Chain Audit (March 2025)"

target="_blank"
rel="noopener noreferrer"
/>
)}
</BrowserOnly>
<BrowserOnly>
{() => (
<Card
title="Zellic Babylon Genesis Audit Report"
to={new URL('/assets/files/zellic_babylon_genesis_chain_audit_2025_03.pdf', window.location.origin).href}
description="Babylon Genesis Chain Audit (March 2025)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
description="Babylon Genesis Chain Audit (March 2025)"
description="Zellic Babylon Genesis Chain Audit (March 2025)"

target="_blank"
rel="noopener noreferrer"
/>
)}
</BrowserOnly>
</CardSection>
20 changes: 10 additions & 10 deletions docs/operators/babylon_validators/babylon_validators.mdx
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
---
sidebar_class_name: babylon_validators_sidebar
sidebar_label: Babbylon Genesis Validators
sidebar_label: Babylon Genesis Validators
sidebar_position: 1
---

# Babbylon Genesis Validators
# Babylon Genesis Validators

Babbylon Genesis follows the Cosmos SDK and CometBFT consensus protocol.
Babylon Genesis follows the Cosmos SDK and CometBFT consensus protocol.

In Phase 2 Testnet, Babylon accepts chain validators to join the network.
The upper bound of the active of validators is 100. However there is no limit
on the total number of validators.
In Phase 2 Testnet, Babylon accepts chain Validators to join the network.
The upper bound of active Validators is 100. However there is no limit
on the total number of Validators.

## Prerequisites

Expand All @@ -24,10 +24,10 @@ for validator nodes
There are two was to get tBABY for Phase 2 Testnet:

1. [Babylon Labs Discord Faucet](https://discord.com/channels/1266159481218457600/1266159481218457600)
2. [L2Scan Faucet (0.01 tBABY each quest)](https://babylon-testnet.l2scan.co/faucet)
3. Reqeust it from a Babylon Labs supporting staff or message us on [discord](https://discord.com/channels/1046686458070700112/1282600119346270281n).
2. [L2Scan Faucet (0.01 tBABY each request)](https://babylon-testnet.l2scan.co/faucet)
3. Request it from a Babylon Labs supporting staff or message us on [discord](https://discord.com/channels/1046686458070700112/1282600119346270281n).

## Get Started

Follow the [installation guide](/operators/babylon_validators/installation_guide) to install start your
Babbylon Genesis Validator journey.
Follow the [installation guide](/operators/babylon_validators/installation_guide) to install and start your
Babylon Genesis Validator journey.
4 changes: 2 additions & 2 deletions docs/operators/babylon_validators/installation_guide.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ sidebar_label: Installation Guide
sidebar_position: 1
---

# Babbylon Genesis Validators Installation Guide
# Babbylon Genesis Validators Installation Guide
# Babylon Genesis Validators Installation Guide
# Babylon Genesis Validators Installation Guide

import RemoteMD from '@site/src/components/RemoteMD';

Expand Down
92 changes: 45 additions & 47 deletions docs/operators/faqs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ sidebar_position: 9

# Operator Frequently Asked Questions

## Babbylon Genesis Validators
## Babylon Genesis Validators

## Recommendations

- Regularly monitor your node's status
- Keep your node software and configurations up to date
- Maintain secure and reliable deployment infrastructure
- Participate in community channels for the latest updates and changes
- Regularly monitor your node's status.
- Keep your node software and configurations up to date.
- Maintain secure and reliable deployment infrastructure.
- Participate in community channels for the latest updates and changes.

### FAQs

Expand All @@ -22,20 +22,20 @@ You can download the genesis file from
[Babylon Labs' networks repository](https://github.com/babylonlabs-io/networks/blob/main/bbn-test-5/network-artifacts/genesis.json).
Ensure you're using the correct version of the Babylon binary specified in the documentation.

#### Q: What are the hardware requirements for running Babylon nodes and finality providers?
#### Q: What are the hardware requirements for running Babylon nodes and a Finality Provider?
**A:**
An instance with at least 8 GB of RAM should be sufficient to host both a
Babylon node and a finality provider. However, for better reliability, it is recommended
Babylon node and a Finality Provider. However, for better reliability, it is recommended
to run them on separate instances.

#### Q: How do I set up my Babylon validator?
#### Q: How do I set up my Babylon Validator?
**A:**
Follow these steps:
- Install the required Babylon binary.
- Initialize your node with `babylond init`.
- Sync from the correct genesis file or a snapshot.
- Configure `config.toml` and add persistent peers.
- Register your validator with `babylond tx staking create-validator`.
- Register your Validator with `babylond tx staking create-validator`.
Refer to the [official setup guide](https://github.com/babylonlabs-io/networks/blob/main/bbn-test-5/babylon-node/README.md)
for details.

Expand All @@ -45,9 +45,9 @@ Open the following ports:
- **RPC Port:** 26657
- **gRPC Port:** 9090
- **P2P Port:** 26656
Ensure proper firewall rules if your validator and finality provider are on different instances.
Ensure proper firewall rules if your Validator and Finality Provider are on different instances.

#### Q: How can I check my validator’s status?
#### Q: How can I check my Validator’s status?
**A:**
Use:
```bash
Expand All @@ -56,7 +56,7 @@ babylond q staking validator <your-valoper-address>
Alternatively, check your status on an explorer such as [Mintscan](https://www.mintscan.io/babylon-testnet/validators)
or [L2Scan](https://babylon-testnet.l2scan.co/).

#### Q: How do I upgrade my Babylon validator node?
#### Q: How do I upgrade my Babylon Validator node?
**A:**
Try the following:
- Stop your node.
Expand All @@ -71,17 +71,17 @@ If your node fails to start after an upgrade:
- Check logs for error messages.
- Ensure you're using the correct genesis file or state snapshot.
- Run `unsafe-reset-all` and resync the node.
- If necessary, reinitialize the validator and restore from a backup.
- If necessary, reinitialize the Validator and restore from a backup.


#### Q: What should I do if my validator is jailed?
#### Q: What should I do if my Validator is jailed?
**A:**
Try the following:
- Check logs for issues related to missed votes or incorrect configurations.
- Run `babylond tx slashing unjail` to attempt unjailing.
- Ensure your validator is active and signing correctly before attempting unjailing.
- Ensure your Validator is active and signing correctly before attempting unjailing.

#### Q: How do I stake and delegate tokens to a validator?
#### Q: How do I stake and delegate tokens to a Validator?
**A:**
Use the following command:
```bash
Expand All @@ -90,15 +90,15 @@ babylond tx staking delegate <validator-address> <amount>ubbn --from <your-walle
Ensure your wallet has sufficient balance to cover transaction fees.


#### Q: How do I withdraw validator rewards?
#### Q: How do I withdraw Validator rewards?
**A:**
Use the following command:
```bash
babylond tx distribution withdraw-rewards <your-valoper-address> --from <your-wallet>
```
Add `--commission` if you want to withdraw validator commission as well.
Add `--commission` if you want to withdraw Validator commission as well.

#### Q: How do I redelegate my stake to another validator?
#### Q: How do I redelegate my stake to another Validator?
**A:**
Use:
```bash
Expand All @@ -116,33 +116,33 @@ Try the following:
#### Q: What precautions should I take when resetting my node?
**A:**
Read the following:
- **CAUTION:** Avoid using `unsafe-reset-all` without proper preparation
- This command may remove BLS keys stored in `priv_validator_key.json`
- Always create a backup of `priv_validator_key.json` before any reset
- Wait for future updates that will separate BLS keys for improved safety
- **CAUTION:** Avoid using `unsafe-reset-all` without proper preparation.
- This command may remove BLS keys stored in `priv_validator_key.json`.
- Always create a backup of `priv_validator_key.json` before any reset.
- Wait for future updates that will separate BLS keys for improved safety.

#### Q: How can I safely reset my Babylon node?
**A:**
Try the following:
- Create a full backup of all critical configuration files
- Specifically, backup `priv_validator_key.json`
- Consult the latest Babylon documentation for recommended reset procedures
- Consider reaching out to Babylon support if you're unsure about the reset process
- Create a full backup of all critical configuration files.
- Specifically, backup `priv_validator_key.json`.
- Consult the latest Babylon documentation for recommended reset procedures.
- Consider reaching out to Babylon support if you're unsure about the reset process.


## Finality Providers

### Recommendations

**Connection Suggestions**
- Do not use multiple nodes behind a load balancer
- Always connect to a single, trusted Babylon RPC node
- Enable transaction indexing on your RPC node
- Do not use multiple nodes behind a load balancer.
- Always connect to a single, trusted Babylon RPC node.
- Enable transaction indexing on your RPC node.

**Voting Mechanism Suggestions**
- The jailing mechanism is similar to Cosmos SDK's native approach, Babylon
Chain is built with the Cosmos SDK and uses the [x/slashing module](https://docs.cosmos.network/main/build/modules/slashing).
- It is designed to protect network integrity and prevent malicious activities
Genesis is built with the Cosmos SDK and uses the [x/slashing module](https://docs.cosmos.network/main/build/modules/slashing).
- It is designed to protect network integrity and prevent malicious activities.

### Q&A

Expand All @@ -161,35 +161,35 @@ Run:
```bash
babylond q finality provider <your-provider-address>
```
Your provider should have active status and be voting on finality.
Your provider should have an active status and be voting on finality.

#### Q: What are the key recommendations for running a Finality Provider daemon?
**A:**

Follow these critical guidelines:
- Connect your finality provider daemon to a trusted Babylon RPC node
- Ensure you're connected to a single Babylon node (avoid load balancers)
- Verify that your RPC node has transaction indexing enabled
- Connect your Finality Provider daemon to a trusted Babylon RPC node.
- Ensure you're connected to a single Babylon node (avoid load balancers).
- Verify that your RPC node has transaction indexing enabled.

#### Q: How can I prevent duplicate finality votes?
**A:**
Try the following:
- Use a single, dedicated Babylon RPC node with transaction indexing enabled
- Monitor your daemon's connection and status regularly
- Check logs for any duplicate vote warnings
- Use a single, dedicated Babylon RPC node with transaction indexing enabled.
- Monitor your daemon's connection and status regularly.
- Check logs for any duplicate vote warnings.

#### Q: What should I do if my Finality Provider is jailed?
**A:**
Follow these steps:
- Immediately check the status using `fpd finality-provider-info [eots-pk-hex]`
- Verify your daemon's status on the Babylon staking dashboard
- Investigate and resolve the underlying issue causing the jailing
- Follow the official Babylon unjailing guide to restore your provider's status
- Immediately check the status using `fpd finality-provider-info [eots-pk-hex]`.
- Verify your daemon's status on the Babylon staking dashboard.
- Investigate and resolve the underlying issue causing the jailing.
- Follow the official Babylon unjailing guide to restore your provider's status.

#### Q: What are the key recommendations for running a Finality Provider daemon?
**A:**
Follow these critical guidelines:
- Connect your finality provider daemon to a trusted Babylon RPC node.
- Connect your Finality Provider daemon to a trusted Babylon RPC node.
- Ensure you're connected to a single Babylon node (avoid load balancers).
- Verify that your RPC node has transaction indexing enabled.

Expand All @@ -212,11 +212,9 @@ Run:
This is probably due to a new parameter appeared in the config and you could create a
new default config with `eotsd init`, just remember to update the values to your key name and directory path



## Contact and Support

For further assistance, please reach out to the Babbylon Genesis Validator and Finality Provider slack support channels (invit-only).
For further assistance, please reach out to the Babylon Genesis Validator and Finality Provider Slack support channels (invite-only).

:::warning
This guide is based on the observation of current Babylon network
Expand Down
Loading