> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tori.finance/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Pages whose paths begin with /zh-Hans/, /ja/, /ko/, /vi/, /id/, /hi/, /pt-BR/ or /es/ are machine translations of the English pages, provided for convenience only. They may contain errors or omissions and have no legal effect, and where one differs from the English page, the English page prevails. For anything that will be relied on, read and cite the English page at the same path without the language prefix.

# 역할, 멀티시그 및 타임락

> Tori 메인넷 컨트랙트의 특권 역할: 각 역할이 할 수 있는 일, 보유 주체, 그리고 24시간 타임락이 통제하는 대상

Tori는 온체인 컨트랙트와 중앙 청산 방식의 유동성 거래 장소를 연결해야 하며, 이를 위해서는 특권 키가 필요합니다. 이 페이지는 Tori 메인넷 컨트랙트의 특권 역할을 정리합니다. 각 역할이 할 수 있는 일, 보유 주체, 그리고 타임락이 통제하는 대상입니다. 아래의 모든 역할은 [검증된 컨트랙트](/ko/resources/contracts.md)에 존재하고 모든 보유자는 온체인에서 확인할 수 있으므로, 여기 적힌 각 항목은 직접 확인할 수 있습니다.

매트릭스 전체에는 두 가지 설계 원칙이 적용됩니다. **최소 권한**: 어떤 역할도 이름이 가리키는 한 가지 업무 이상을 할 수 없으며, 프로토콜의 권한을 *축소*하는 것만 가능한 역할이 가장 빠른 키에 배정됩니다. **확장에는 지연**: 새 담보 자산, 새 수탁 목적지, 새 구현체처럼 프로토콜의 작동 범위를 넓히는 모든 작업은 실행되기 전에 24시간 동안 공개적으로 대기합니다.

## 키 보관 방식

역할의 키 보관 모델은 의도적인 위험 판단이므로, 매트릭스는 역할마다 이를 명시합니다.

| 보관 방식 | 의미 |
| - | - |
| **3-of-5 Safe** | Gnosis Safe v1.4.1. 서명자 5명 중 3명이 승인해야 하며, 정족수는 누구나 확인할 수 있도록 온체인에서 강제됩니다 |
| **MPC 볼트** | 키가 규제 대상 제공업체의 인프라 전반에 조각으로 분할되어 있습니다. 제공업체를 포함해 어느 한 당사자도 단독으로 서명할 수 없으며, 승인 정족수는 제공업체의 정책 엔진에서 강제됩니다 |
| **EOA** | Tori가 운영하는 단일 서명 주소 |

EOA 역할의 범위를 제한하는 것은 키 보관 방식이 아니라 컨트랙트입니다. 각 EOA 역할은 구조상 범위가 좁습니다. 사용자가 이미 서명한 지시를 실행하거나 목록에 기록하는 일만 하며, 호출될 때마다 프로토콜 자체 한도에 따라 검사를 받습니다. 아래 매트릭스는 각 역할이 정확히 어디까지 닿는지 보여 줍니다.

## 역할 매트릭스

| 역할 | 컨트랙트 | 보유 주체 | 함수 | 비고 |
| - | - | - | - | - |
| **소유자 / 관리자**(Owner / Admin) | trUSD, strUSD, Minting, Distributor, YT-Lock | 3-of-5 Safe | 해당 컨트랙트의 운영 역할 부여 및 회수; `pause` / `unpause`; `setMaxMintPerBlock`, `setMaxRedeemPerBlock`; 담보 토큰 제거 또는 비활성화; `removeCustodianAddress` | 소유자와 관리자는 같은 Safe입니다. 온체인에서는 별개의 역할이므로 컨트랙트 변경 없이 분리할 수 있습니다 |
| **타임락 관리자**(Timelock Admin) | trUSD, strUSD, Minting, YT-Lock | 타임락 컨트랙트 | `_authorizeUpgrade`(컨트랙트 업그레이드); `addAllowedToken`, `enableAllowedToken`; `addCustodianAddress`; `setStablesDeltaLimit`; `setMinter` | 대기열에 등록된 타임락 작업을 통해서만 실행 가능 |
| **타임락 제안자**(Timelock Proposer) | Timelock | 3-of-5 Safe | 작업을 대기열에 등록 | |
| **타임락 실행자**(Timelock Executor) | Timelock | 3-of-5 Safe | 지연 기간이 지난 뒤 대기 중인 작업 실행 | 실행은 그 작업을 대기열에 등록한 승인으로부터 하루 뒤에 이루어지는 별도의 3-of-5 승인입니다. 서로 별개인 두 번의 결정입니다 |
| **타임락 취소자**(Timelock Canceller) | Timelock | MPC 볼트 | 대기 중인 작업 취소 | 대기 중인 변경을 중단할 수는 있지만, 변경을 만들 수는 없습니다 |
| **게이트키퍼**(Gatekeeper) | Minting | MPC 볼트 + 외부 당사자 | `disableMintRedeem`; `removeMinterRole`, `removeRedeemerRole`, `removeCollateralManagerRole` | 권한을 박탈할 수만 있고 부여할 수는 없습니다. 보유자 중 하나는 Tori, 다른 하나는 외부 당사자입니다 |
| **화이트리스트 관리자**(Whitelister) | Minting | MPC 볼트 | `addToWhitelist`, `addToWhitelistBatch`, `removeFromWhitelist` | 발행과 상환은 컨트랙트 단계에서 화이트리스트로 제한되므로, 애초에 누가 거래할 수 있는지를 이 역할이 결정합니다 |
| **담보 관리자**(Collateral Manager) | Minting | MPC 볼트 | `transferToCustody` | 이체 대상은 타임락을 통해 이미 등록된 수탁사 주소로 한정됩니다 |
| **발행 담당자**(Minter) | Minting | EOA 3개 | `mint()` | 사용자가 서명한 EIP-712 주문을 제출하며, 주문을 직접 생성할 수는 없습니다 |
| **상환 담당자**(Redeemer) | Minting | EOA 3개 | `redeem()` | 발행 담당자와 동일 |
| **블랙리스트 관리자**(Blacklist Manager) | strUSD | Safe + EOA | `addToBlacklist`, `removeFromBlacklist` 및 각각의 일괄 처리 버전 | 컴플라이언스 심사 |
| **리워드 지급자**(Rewarder) | strUSD | Safe + Distributor 컨트랙트 | `transferInRewards`, `reportLoss` | 보유자 중 하나는 키가 아니라 컨트랙트입니다 |
| **리워드 운영자**(Reward Operator) | Distributor | MPC 볼트 | 예정된 분배 실행 | 금액은 변경할 수 없습니다 |

발행 담당자는 사용자가 서명한 주문을 제출하는 것 외에는 아무것도 할 수 없습니다. 게이트키퍼는 멀티시그 정족수 없이 단 한 번의 트랜잭션으로 이 역할을 박탈할 수 있습니다.

## 24시간 타임락이 통제하는 대상

타임락 컨트랙트는 [`0xA952453E39F77108Ee37C1b92de593F1C59A6ef4`](https://etherscan.io/address/0xA952453E39F77108Ee37C1b92de593F1C59A6ef4)이며, 최소 지연 시간은 86,400초입니다. 이 컨트랙트가 핵심 컨트랙트의 타임락 관리자 역할을 보유하므로, 다음 네 가지 작업은 조용히 이루어질 수 없습니다.

* **컨트랙트 업그레이드.** trUSD, strUSD 또는 Minting의 새 구현체는 먼저 공개적으로 대기열에 등록됩니다.
* **새 담보 자산.** 담보 자산 추가에는 타임락이 적용되지만, 제거나 비활성화는 즉시 이루어집니다. 빠르게 실행되는 방향이 안전한 방향이어야 하기 때문입니다.
* **새 수탁 목적지.** `addCustodianAddress`에는 타임락이 적용됩니다. 입금된 담보가 어디로 갈 수 있는지를 결정하는 작업이므로, 가장 주의 깊게 지켜볼 만한 작업입니다.
* **스테이블코인 델타 한도 상향.**

누구나 Etherscan에서 대기열을 지켜볼 수 있습니다. 아무도 예상하지 못한 작업이 대기열에 오르면 실행 전까지 꼬박 하루 동안 공개되며, 타임락 취소자는 이를 단 한 번의 트랜잭션으로 중단할 수 있는 키를 보유하고 있습니다.

## 처리 한도

발행과 상환은 컨트랙트 단계에서 블록당, 자산별, 그리고 전체 기준으로 한도가 정해져 있습니다. 이 한도는 호출될 때마다 검사되며, 어떤 주문이 전달되었는지와 관계없이 발행 담당자와 상환 담당자 역할에 적용됩니다. 한도 변경은 소유자 함수이므로 3-of-5 Safe가 필요하며, 운영 키가 스스로 한도를 넓힐 수는 없습니다.

## 직접 확인하기

이 표의 모든 역할 배정은 체인에서 직접 읽을 수 있으며, 어느 것도 신뢰에만 의존할 필요가 없습니다.

* **역할 보유자**: 해당 컨트랙트의 `hasRole(role, address)`
* **Safe 정족수**: Safe의 `getThreshold()`와 `getOwners()`
* **타임락 지연 시간**: 타임락의 `getMinDelay()`
* **현재 대기 중인 작업**: Etherscan에서 확인하는 타임락 이벤트

MPC 임계값은 온체인이 아니라 수탁 제공업체의 정책 엔진에 저장됩니다. 현재 제공업체의 확인과 독립적인 검증을 진행하고 있으며, 그 결과를 준비금 증명 데이터와 함께 공개할 계획입니다.

> [!NOTE]
>
> **기계 번역 안내:** 이 페이지는 영어 원문을 기계 번역한 것으로, 편의를 위해서만 제공됩니다. 오류나 누락이 있을 수 있으며 법적 효력이 없습니다. 이 페이지와 영어 원문의 내용이 다를 경우 영어 원문이 우선합니다. 이 페이지의 내용에 의존하기 전에 [영어 원문](/security/roles.md)을 확인하십시오.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.