Skip to content

Commit 8d36cf9

Browse files
committed
review rework and updated to reflect ELIP updates
1 parent ba81028 commit 8d36cf9

File tree

2 files changed

+12
-25
lines changed

2 files changed

+12
-25
lines changed

docs/products/eigenlayer/developers/howto/build/multichain/implement-multichain.md

Lines changed: 11 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,16 @@ Implementers of multichain verification need to:
2323

2424
## 1. Configure Operator Set Curve Type
2525

26-
Decide on the cryptographic curve type for Operator keys. Choose ECDSA for less than 30 Operators, or BN254 BLS for more than 30 Operators.
27-
[Create Operator Set](../operator-sets/create-operator-sets.md). Set the `KeyType` in `KeyRegistrar`.
26+
1. Decide on the cryptographic curve type for Operator keys. Choose ECDSA for less than 30 Operators, or BN254 BLS for more than 30 Operators.
27+
2. [Create the Operator Set](../operator-sets/create-operator-sets.md).
28+
3. [Set the `KeyType` in `KeyRegistrar`](https://github.com/Layr-Labs/eigenlayer-contracts/blob/v1.7.0-rc.4/docs/permissions/KeyRegistrar).
2829

2930
## 2. Deploy Operator Table Calculator
3031

3132
Deploy the `OperatorTableCalculator` contract to define stake weighting logic.
3233

3334
To use the as-is unweighted stakes, deploy the template `ECDSATableCalculatorBase` or `BN254TableCalculatorBase` contract.
34-
The contract can be upgraded. Alternatively, use the onchain default unweighted contract provided by EigenLabs.
35+
The contract can be upgraded. Alternatively, use the onchain [default unweighted contract provided by EigenLabs](https://github.com/Layr-Labs/eigenlayer-middleware?tab=readme-ov-file#current-middlewarev2-testnet-deployment).
3536

3637
To define custom stake weighting logic, override `calculateOperatorTable()` to add:
3738
- Asset weighting (for example, ETH 2x vs stablecoins)
@@ -43,38 +44,28 @@ For more information on stake weighting and how to customize, refer to [Stake We
4344

4445
## 3. (Optional) View the registered cryptographic keys for your Operator Set
4546

46-
Operators self-register using `KeyRegistrar.registerKey(operator, operatorSet, pubkey, sig)`.
47+
Operators self-register using [`KeyRegistrar.registerKey(operator, operatorSet, pubkey, sig)`](https://github.com/Layr-Labs/eigenlayer-contracts/blob/v1.7.0-rc.4/docs/permissions/KeyRegistrar.md#key-registration).
4748

48-
## 4. Opt-in to Multichain
49+
## 4. Opt-in to Multichain and create a generation reservation
4950

5051
To enable multichain verification, register with `CrossChainRegistry`. To register, use:
5152

52-
`CrossChainRegistry.createGenerationReservation(operatorSet, calculator, config, [chainIDs])`
53+
[`CrossChainRegistry.createGenerationReservation(operatorSet, calculator, config)`](https://github.com/Layr-Labs/eigenlayer-contracts/blob/v1.7.0-rc.4/docs/multichain/source/CrossChainRegistry.md#creategenerationreservation)
5354

5455
Where `config`:
5556
* `staleness` = 14 days (must exceed 7-day refresh)
56-
* `minWeight` = 0
57+
* `owner` = Permissioned owner of the Operator Set on target chains
5758

5859
A `staleness` period of `0` enables certificates to be verified against any timestamp in the past.
5960

60-
Do not set the `staleness` to greater than 0 and less than the update cadence of the Operator tables (communciated offchain
61-
and currently 7 days). If set in this range, certificates will be unable to be validated.
62-
63-
Where `chainIDs` are:
64-
65-
| Chain Name | Chain ID |
66-
|----------------|------------|
67-
| Ethereum | 1 |
68-
| Base | 8453 |
69-
| Sepolia | 11155111 |
70-
| Base-Sepolia | 84532 |
71-
61+
The `staleness` must be greater than the update cadence of the Operator tables (communciated offchain
62+
and currently 7 days).
7263

7364
The caller must have UAM permissions for operatorSet.avs.
7465

7566
## 5. Wait for deployment
7667

77-
EigenLabs generates and transports your stake table. To determine when transport is complete, monitor `OperatorTableUpdater.GlobalRootConfirmed`.
68+
EigenLabs generates and transports your stake table. To determine when transport is complete, monitor [`OperatorTableUpdater.GlobalRootConfirmed`](https://github.com/Layr-Labs/eigenlayer-contracts/blob/v1.7.0-rc.4/docs/multichain/destination/OperatorTableUpdater.md).
7869

7970
## 6. Design Integration Pattern for Consumers
8071

docs/products/eigenlayer/developers/howto/build/multichain/multichain-integration-patterns.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,7 @@ processResult(cachedCert.messageHash);
3939
```
4040

4141
:::important
42-
The `staleness` period is set in the [`CrossChainRegistry` by the verification service](implement-multichain.md#4-opt-in-to-multichain).
43-
A `staleness` period of `0` enables certificates to be verified against any timestamp in the past.
44-
45-
If the `staleness` period is configured as greater than 0 and less than the update cadence of the Operator tables (communciated offchain
46-
and currently 7 days), certificates will be unable to be validated.
42+
The `staleness` period is set in the [`CrossChainRegistry` by the verification service](implement-multichain.md#4-opt-in-to-multichain).
4743
:::
4844

4945
## Hybrid

0 commit comments

Comments
 (0)