Skip to content

Commit

Permalink
Update chain signatures content for mainnet (#2198)
Browse files Browse the repository at this point in the history
* Update chain-signatures.md

* Update chain-signatures.md
  • Loading branch information
kcole16 authored Aug 7, 2024
1 parent db67c88 commit 32b5ca6
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
6 changes: 3 additions & 3 deletions docs/1.concepts/abstraction/chain-signatures.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ This unlocks the next level of blockchain interoperability by giving ownership o
_Diagram of a chain signature in NEAR_

:::caution
This technology is currently in `alpha` and should only be used in a `testnet` environment.
This technology is currently in `beta` and should be used carefully and with audits on `mainnet`.
:::

---
Expand Down Expand Up @@ -72,10 +72,10 @@ The essence of Multi-Party Computation (MPC) is to enable independent parties to

NEAR's MPC service is comprised of several independent nodes, **none of which can sign by itself**, but instead create **signature-shares** that are **aggregated through multiple rounds** to **jointly** sign a transaction.

This service continuously listens for signature requests (i.e. users calling the `sign` method on the `multichain` smart contract) and when a call is detected the MPC service:
This service continuously listens for signature requests (i.e. users calling the `sign` method on the `v1.signer` smart contract) and when a call is detected the MPC service:

1. Asks its nodes to jointly derive a signature for the `payload` using the account identified by the `path`
2. Once complete, call the `multichain` contract to store the resulting `Signature`
2. Once complete, call the `v1.signer` contract to store the resulting `Signature`

:::info A Custom MPC Service
Generally, MPC signing services work by sharing a master key, which needs to be re-created each time a node joins or leaves.
Expand Down
8 changes: 7 additions & 1 deletion docs/2.build/1.chain-abstraction/chain-signatures.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ There are five steps to create a Chain Signature:

1. [Deriving the Foreign Address](#1-deriving-the-foreign-address) - Construct the address that will be controlled on the target blockchain
2. [Creating a Transaction](#2-creating-the-transaction) - Create the transaction or message to be signed
3. [Requesting a Signature](#3-requesting-the-signature) - Call the NEAR `multichain` contract requesting it to sign the transaction
3. [Requesting a Signature](#3-requesting-the-signature) - Call the NEAR `v1.signer` contract requesting it to sign the transaction
4. [Reconstructing the Signature](#4-reconstructing-the-signature) - Reconstruct the signature from the MPC service's response
5. [Relaying the Signed Transaction](#5-relaying-the-signature) - Send the signed transaction to the destination chain for execution

Expand All @@ -48,6 +48,12 @@ If you want to try things out, these are the smart contracts available on `testn

:::

:::info MPC mainnet contracts

- `v1.signer`: [MPC signer](https://github.com/near/mpc/tree/v0.2.0/contract) contract, latest release, made up of 8 MPC nodes

:::

---

## 1. Deriving the Foreign Address
Expand Down

0 comments on commit 32b5ca6

Please sign in to comment.