Skip to content

Commit

Permalink
Merge pull request #3488 from dfinity/update-subnet-size
Browse files Browse the repository at this point in the history
update: Update fiduciary subnet size
  • Loading branch information
jessiemongeon1 authored Sep 17, 2024
2 parents 79f3b13 + 1b5718d commit 1b94584
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 9 deletions.
2 changes: 1 addition & 1 deletion blog/features/evm-rpc-canister-launch.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ dfx start --clean --background
Set the init args for the EVM RPC canister:

```bash
dfx deps init evm_rpc --argument '(record { nodesInSubnet = 28 })'
dfx deps init evm_rpc --argument '(record { nodesInSubnet = 31 })'
```

Locally deploy the `evm_rpc` canister:
Expand Down
6 changes: 5 additions & 1 deletion docs/concepts/subnet-types.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,16 @@ Application subnets are the most common type of subnet on ICP. Almost all canist

## System subnets

System subnets are reserved for running canisters that provide a system functionality to ICP, such as the NNS canisters. System subnets have special configurations, such as not charging cycles to any of the canisters running on the subnet since system canisters need to be available at all times. System subnets also have a more generous per-call instruction limit and a more generous Wasm module size limit.
System subnets are reserved for running canisters that provide a system functionality to ICP, such as the NNS canisters. System subnets may have special configurations, such as not charging cycles to any of the canisters running on the subnet since system canisters need to be available at all times. System subnets also have a more generous per-call instruction limit and a more generous Wasm module size limit.

The subnet [`uzr34`](https://dashboard.internetcomputer.org/subnet/uzr34-akd3s-xrdag-3ql62-ocgoh-ld2ao-tamcv-54e7j-krwgb-2gm4z-oqe) is a system subnet that contains 28 nodes. It hosts the canisters for [Internet Identity](/docs/current/developer-docs/identity/internet-identity/overview), the [cycles ledger](/docs/current/developer-docs/defi/cycles/cycles-ledger), the [exchange rate canister](/docs/current/developer-docs/defi/exchange-rate-canister/) and dashboard, and stores the backup threshold signature keys.

## Fiduciary subnets

A fiduciary subnet is a subnet larger than 13 nodes. Canisters running on this larger subnet will pay more cycles compared to canisters running on 13 node subnets, but in return they will have a higher level of security due to the bigger subnet size. The cycle costs scale linearly to the number of nodes. The fiduciary subnet type was created to enable safer deployment of DeFi applications which need even stronger guarantees than the ones that a 13-node subnet can provide.

The subnet [`pzp6e`](https://dashboard.internetcomputer.org/subnet/pzp6e-ekpqk-3c5x7-2h6so-njoeq-mt45d-h3h6c-q3mxf-vpeq5-fk5o7-yae) is a fiduciary subnet that contains 31 nodes, hosts the EVM RPC canister, and stores the threshold signature (tECDSA and tSchnorr) signing keys.

You can deploy to a fiduciary subnet using the command `dfx ledger create-canister --subnet-type fiduciary`.

## The European subnet
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ dfx start --background
# Locally deploy the `evm_rpc` canister
dfx deps pull
dfx deps init evm_rpc --argument '(record { nodesInSubnet = 28 })'
dfx deps init evm_rpc --argument '(record { nodesInSubnet = 31 })'
dfx deps deploy
```

Expand All @@ -86,11 +86,11 @@ Alternatively, you can include the EVM RPC canister by specifying the Candid and
}
```

Then start the local replica and deploy the canister locally with a specified number of nodes (`28` for the [fiduciary subnet](/docs/current/concepts/subnet-types#fiduciary-subnets)):
Then start the local replica and deploy the canister locally with a specified number of nodes (`31` for the [fiduciary subnet](/docs/current/concepts/subnet-types#fiduciary-subnets)):

```
dfx start --clean --background
dfx deploy evm_rpc --argument '(record { nodesInSubnet = 28 })'
dfx deploy evm_rpc --argument '(record { nodesInSubnet = 31 })'
```

### Fork the EVM RPC canister
Expand All @@ -104,7 +104,7 @@ git clone https://github.com/internet-computer-protocol/evm-rpc-canister
To deploy your own canister on the mainnet, run the `dfx deploy` command with the `--network ic` flag:

```
dfx deploy evm_rpc --network ic --argument '(record { nodesInSubnet = 28 })'
dfx deploy evm_rpc --network ic --argument '(record { nodesInSubnet = 31 })'
```

Note that when deploying your own canister, you may encounter API rate limits. Refer to the [replacing API keys](#replacing-api-keys) section to learn how to configure API credentials.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ Learn more about the [costs of EVM RPC requests](costs.mdx).

## Deployed canister

The EVM RPC canister runs on the 28-node [fiduciary subnet](https://internetcomputer.org/docs/current/concepts/subnet-types#fiduciary-subnets) with the following principal: [`7hfb6-caaaa-aaaar-qadga-cai`](https://dashboard.internetcomputer.org/canister/7hfb6-caaaa-aaaar-qadga-cai).
The EVM RPC canister runs on the 31-node [fiduciary subnet](https://internetcomputer.org/docs/current/concepts/subnet-types#fiduciary-subnets) with the following principal: [`7hfb6-caaaa-aaaar-qadga-cai`](https://dashboard.internetcomputer.org/canister/7hfb6-caaaa-aaaar-qadga-cai).

Refer to the [GitHub repository](https://github.com/internet-computer-protocol/evm-rpc-canister?tab=readme-ov-file#reproducible-builds) for information on how to verify the hash of the deployed WebAssembly module.

Expand Down
2 changes: 1 addition & 1 deletion docs/references/t-sigs-how-it-works.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ Note that in case of high system load, a request to compute a threshold signatur

## API fees

The fees for the t-sig APIs are as defined below. The threshold ECDSA test key and Schnorr test key reside on a regular-sized (13-node) application subnet, while the threshold ECDSA production key resides on a 28-node-sized fiduciary subnet. The subnet size of the subnet where the t-sig key resides and the signatures are computed define the resulting cost. The size of the subnet of the calling canister does not matter for the fees. For costs in USD, the USD/XDR exchange rate as of of November 23, 2022 has been used.
The fees for the t-sig APIs are as defined below. The threshold ECDSA test key and Schnorr test key reside on a regular-sized (13-node) application subnet, while the threshold ECDSA production key resides on a 31-node-sized fiduciary subnet. The subnet size of the subnet where the t-sig key resides and the signatures are computed define the resulting cost. The size of the subnet of the calling canister does not matter for the fees. For costs in USD, the USD/XDR exchange rate as of of November 23, 2022 has been used.


:::note
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ Then, pull and deploy the `evm_rpc` canister locally with `dfx deps`:

```bash
dfx deps pull
dfx deps init evm_rpc --argument '(record { nodesInSubnet = 28 })'
dfx deps init evm_rpc --argument '(record { nodesInSubnet = 31 })'
dfx deps deploy
```

Expand Down

0 comments on commit 1b94584

Please sign in to comment.