# Security

## Ethereum

### NttManager.sol

The manager can be upgraded and has two roles defined:

\- **`owner`**: **which can upgrade the contract and perform administrative actions (like setting rate limits and new chains).**

&#x20;The owner will be a 5-out-of-7 multisig. The signers are part of the SwissBorg ecosystem.

\- **`manager`**: **which can pause the bridging.**

&#x20;The manager will be a 3-out-of-5 multisig. The signers are also part of the SwissBorg ecosystem.

### WormholeTransceiver.sol

The transceiver can be upgraded and has three roles defined:

\- **`owner`**: **which can upgrade the contract and perform administrative actions (like setting relayers).**

&#x20;The owner will be a 5-out-of-7 multisig. The signers are part of the SwissBorg ecosystem.

\- **`manager`**: **which can pause the bridging.**

&#x20;The manager will be a 3-out-of-5 multisig. The signers are also part of the SwissBorg ecosystem.

\- **`relayer`**: **which can unlock some tokens.**

The relayer is the Wormhole bridge.

The addresses of all contracts, including the multisigs are on this page:

{% content-ref url="/pages/yPbPqMHXc3i37rcJmeV3" %}
[Contract Addresses](/bridge/contract-addresses.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.swissborg.com/bridge/security.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
