wormhole-networks/mainnetv2/info.md

113 lines
5.2 KiB
Markdown
Raw Normal View History

2021-08-04 12:25:12 -07:00
# Wormhole v2 Mainnet
2021-08-04 21:05:07 -07:00
Wormhole mainnet connects the following chains:
2021-08-04 12:25:12 -07:00
- Solana [Mainnet Beta](https://docs.solana.com/clusters#mainnet-beta).
- Ethereum Mainnet.
- Terra Columbus mainnet.
- Binance Smart Chain mainnet.
It runs the [v2.2.0](https://github.com/certusone/wormhole/releases/tag/v2.2.0) guardiand reference implementation.
## Network parameters
Gossip network name:
/wormhole/mainnet/2
Gossip bootstrap node:
/dns4/wormhole-mainnet-v2-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWL6xoqY8yU2xR2K6cP6jix4LnGSrRh94HCKiK371qUFeU
Connected chain contracts:
| Network | Bridge contract addresss |
|-------------------------------|------------------------------------------------|
| Ethereum Mainnet (Bridge) | [`0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B`](https://etherscan.io/address/0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B) |
| Ethereum Mainnet (Impl) | [`0x736d2a394f7810c17b3c6fed017d5bc7d60c077d`](https://etherscan.io/address/0x736d2a394f7810c17b3c6fed017d5bc7d60c077d) |
| Binance Smart Chain (Bridge) | [`0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B`](https://bscscan.com/address/0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B) |
| Binance Smart Chain (Impl) | [`0x736d2a394f7810c17b3c6fed017d5bc7d60c077d`](https://bscscan.com/address/0x736d2a394f7810c17b3c6fed017d5bc7d60c077d) |
| Solana Mainnet | [`worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth`](https://explorer.solana.com/address/worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth) |
2021-08-10 06:16:47 -07:00
| Terra Columbus-4 | [`terra1fdhpw5s2t20lt60d0k3zkk262fcam7ummh2egf`](https://finder.terra.money/columbus-4/address/terra1fdhpw5s2t20lt60d0k3zkk262fcam7ummh2egf) |
2021-08-04 12:25:12 -07:00
2021-08-10 06:16:47 -07:00
Eth and BSC use the same deployer key, leading to identical addresses. This key has no privileges.
## Terra Multisig
Columbus-4 does not allow contracts to upgrade themselves. Therefore, the Columbus-4 contract has been deployed
using a multisig wallet:
| Holder | Key |
|----------------|--------------------------------------------------------------------------------|
| Certus One | `terrapub1addwnpepq2sakzkw3dz427pj9rudtvdjmpjs7k3cah6afhwarqdtp630tt50ghak5xd` |
| Terraform Labs | `terrapub1addwnpepqtlu2m33tfqgaglayzp2dnhv6s8994qcvuqtv5t3jsegrt58dt39jn5mt8v` |
| P2P Validator | `terrapub1addwnpepqtmgahrsyw6t7d48zr7yxml4ydy8mjp67tkxsdhexf7fy0tkgeez204um3y` |
Resulting wallet: `terra1xcp70wju9rsdh466y9g6a3c8shhuggdqmq8987`
Once Terra was upgraded to Columbus-5, this multisig wallet will be used to redeploy the Wormhole contract.
After the upgrade, the contract will be governed by the guardian set, eliminating the need for the multisig wallet.
2021-08-04 12:25:12 -07:00
## Guardian set
2021-08-10 10:36:15 -07:00
Current generation: **1**.
2021-08-04 12:25:12 -07:00
See [v1.prototext](guardianset/v1.prototxt) for the first guardian set update that will be executed once everyone's
node on the network is live.
## Example command line options
Refer to the [operations guide](https://github.com/certusone/wormhole/blob/dev.v2/docs/operations.md) on how to set up a node.
Example systemd unit file:
```
[Unit]
Description=wormhole v2 guardiand
Requires=network.target
After=network.target
[Service]
User=wormhole
Group=wormhole
ExecStart=/opt/wormhole/wormhole/build/bin/guardiand bridge \
--bootstrap "/dns4/wormhole-mainnet-v2-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWL6xoqY8yU2xR2K6cP6jix4LnGSrRh94HCKiK371qUFeU" \
2021-08-04 20:56:52 -07:00
--network "/wormhole/mainnet/2" \
2021-08-04 12:25:12 -07:00
--ethContract "0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B" \
--bscContract "0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B" \
--solanaBridgeAddress "worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth" \
2021-08-10 06:16:47 -07:00
--terraContract "terra1fdhpw5s2t20lt60d0k3zkk262fcam7ummh2egf" \
2021-08-04 12:25:12 -07:00
--adminSocket /run/guardiand/admin.socket \
--dataDir /opt/wormhole/data \
--terraChainID "columbus-4" \
--nodeName "<your name>" \ # <-- your node's name (for network explorer usage)
--nodeKey "/opt/wormhole/keys/wormhole-node.key" \ # <-- node key (auto-generated if not present)
--bridgeKey "/opt/wormhole/keys/wormhole-guardian.key" \ # <-- your guardian key generated by "guardiand keygen"
--ethRPC "wss://your-eth-node" \ # <-- your ETH full/light node websocket URI (ws:// or wss://)
--bscRPC "wss://bsc-node.example.com" \ # <-- your BSC full/light node websocket URI
--solanaRPC "http://solana-node:8899" \ # <-- Solana RPC URI
--solanaWS "ws://solana-node:8900" \ # <-- Solana WS URI (typically RPC +1)
--terraWS "ws://terra-node/websocket" \ # <-- Terra node websocket URI
--terraLCD "http://terra-node:1317" \ # <-- Terra LCD server HTTP URI
--statusAddr=[::]:6060 # <-- exposes Prometheus metrics - firewall recommended
RuntimeDirectory=guardiand
RuntimeDirectoryMode=700
RuntimeDirectoryPreserve=yes
PermissionsStartOnly=yes
PrivateTmp=yes
PrivateDevices=yes
SecureBits=keep-caps
AmbientCapabilities=CAP_IPC_LOCK
CapabilityBoundingSet=CAP_IPC_LOCK
NoNewPrivileges=yes
Restart=on-failure
RestartSec=5s
LimitNOFILE=65536
LimitMEMLOCK=infinity
[Install]
WantedBy=multi-user.target
```