﻿---
title: "크로스체인 릴레이어 가용성 위험"
description: "크로스체인 릴레이어 가용성 위험은 인증된 크로스체인 메시지가 제때 전달되거나 실행되지 않는 위험이며, 진단할 때는 출발 체인 확정성, 증명 가용성, 전달, 목적지 실행 및 자산 회계를 분리해야 합니다."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 크로스체인 릴레이어 가용성 위험

> 교육 참고용이며 투자 조언이 아닙니다. 크로스체인 지연으로 자산이 묶이거나 수수료가 소모될 수 있으며, 증명, 만료, 컨트랙트 또는 복구 가정이 실패하면 영구 손실로 이어질 수 있습니다.

<a id="answer"></a>

## 직접 답변

크로스체인 릴레이어 가용성 위험은 유효하고 인증된 메시지가 제때 목적지에 제출되거나 목적지에서 실행되지 않는 위험입니다. 릴레이어는 일반적으로 메시지와 증명 또는 메타데이터를 운반하며, 출발 체인 이벤트를 확정하거나 페이로드를 승인하는 주체가 아닙니다. 출발 체인 합의, 증명 또는 증명서명 생성, 목적지 검증 및 수신 컨트랙트 실행은 서로 독립된 의존 요소입니다.

전달 지연은 처음에는 가용성 문제이며 자산 도난을 입증하지 않습니다. 하지만 상품 규칙에 따라 자금 조달 비용, 기한 상실, 티켓 만료, 유동성 사용 불가 또는 영구 손실을 초래할 수 있습니다. 반대로 출발 체인 영수증과 프런트엔드의 `Pending` 표시만으로 릴레이어가 원인이라고 단정할 수 없습니다. 출발 체인이 아직 확정되지 않았거나, 증명이 존재하지 않거나, 목적지가 일시 중지되었거나, 가스 자금이 부족하거나, 수신 컨트랙트가 되돌릴 수 있습니다.

무허가 전달 가능 여부는 프로토콜마다 다릅니다. Hyperlane과 Wormhole은 제3자가 인증된 메시지를 전달할 수 있는 경로를 설명하지만, 실행자, 목적지 호출자 또는 복구 함수를 제한하는 배포도 있습니다. 제출이 개방되어 있어도 릴레이어가 인증된 페이로드를 변경할 수 있는 것은 아닙니다. 릴레이어 허용 목록도 목적지 검증이나 재생 공격 방지를 대신하지 않습니다.

<a id="mechanism"></a>

## 작동 방식

유용한 수명 주기 분석은 `source submitted`, `source finalized`, `proof pending`, `ready`, `destination submitted`, `failed/retryable`, `executed`, `expired/cancelled`를 구분합니다. 이는 분석용 표지이며, 프로토콜마다 자체 온체인 필드가 있습니다. OP Stack 출금, CCTP 소각·발행 메시지, Wormhole VAA 및 Hyperlane 메시지는 서로 다른 증명, 시간, 수수료 및 재시도 규칙을 사용합니다.

먼저 출발 체인 작업이 가치를 잠갔는지, 소각했는지, 전송했는지와 필요한 확정성에 도달했는지를 확인합니다. 그다음 예상 루트, 검증자 서명, Guardian VAA 또는 증명서명을 사용할 수 있고 최신 상태인지 확인합니다. 이후에야 릴레이어가 메시지를 관찰하고, 수수료 정책을 수락하고, 올바른 메타데이터를 구성하고, 정확한 목적지 컨트랙트에 제출했는지 조사합니다.

목적지 실행에는 독립적인 실패 원인이 있습니다. 체인 또는 시퀀서 중단, 오래된 RPC, 컨트랙트 일시 중지, 잘못된 수신 컨트랙트 버전, 가스 부족, 순서형 nonce 차단, 만료 또는 애플리케이션 되돌림 등이 해당합니다. 트랜잭션 해시는 제출 참조일 뿐입니다. 완료를 확인하려면 성공한 영수증, 프로토콜의 처리 완료 상태, 수신 측 이벤트 또는 상태 변경, 정확한 토큰 식별 및 필요한 목적지 확정성 이후의 예상 잔액 효과를 확인해야 합니다.

수동 릴레이는 보편적인 구제 수단이 아닙니다. 배포된 프로토콜에 적격 진입점이 있고, 원본 메시지와 정확한 증명을 얻을 수 있으며, 호출자에게 권한이 있고, 메시지가 아직 소비되지 않았으며 만료되지 않았고, 호출자가 목적지 가스와 전달 가치를 부담할 수 있을 때만 가능합니다. 공식 목적지 호출을 먼저 시뮬레이션해야 합니다. 원인이 밝혀지지 않은 첫 메시지를 복구한다는 이유로 새로운 출발 체인 잠금이나 소각을 만들면 안 됩니다.

재시도와 재생은 다릅니다. 문서화된 재시도는 목적지 효과가 실패한 뒤 동일한 정규 메시지를 다시 제출하는 것입니다. 올바른 소비 상태 또는 nonce 상태는 성공 효과를 최대 한 번으로 제한합니다. 재생 방지가 안전성을 보존하더라도 여러 릴레이어가 경쟁하면 가스를 낭비할 수 있습니다. 로컬 작업 취소로 이미 브로드캐스트되거나 포함된 목적지 트랜잭션을 되돌릴 수는 없습니다.

다음 절차를 따르십시오.

1. 프로토콜, 레인, 배포 버전, 출발 및 목적지 도메인과 컨트랙트, 출발 트랜잭션과 로그, 메시지 ID 또는 nonce, 자산 작업, 원시 수량, 수신자 및 만료 시점을 고정합니다.
2. 출발 체인 영수증과 이벤트를 검증한 뒤 해당 체인과 프로토콜이 요구하는 확인 또는 확정성 규칙을 적용합니다. 인터페이스를 믿는 대신 블록 식별자와 재구성 상태를 확인합니다.
3. 프로토콜이 정의한 증명, VAA, 증명서명, 체크포인트 또는 루트를 찾고, 해당 출발 상태, 버전, 서명자 집합, 가용성, 무효화 또는 만료 상태를 검증합니다.
4. 목적지 체인 상태, 메신저와 수신 컨트랙트 버전, 일시 중지 상태, nonce 또는 처리 완료 상태, 선행 조건, 기한 및 필요한 네이티브 가스 자산을 확인합니다.
5. 전달이 무허가형인지, 허용 목록형인지, 호출자 제한형인지 확인합니다. 적격 수동 경로가 있다면 정확히 동일한 원본 페이로드, 증명 및 공식 목적지 호출을 재구성하고 시뮬레이션합니다.
6. 가스 한도, 가격, 환율 가산, 수수료 상한, 환불 및 견적 만료를 갱신합니다. 동일한 메시지를 제출하거나 재시도하고 중복 및 대체 경쟁을 처리하며 목적지 영수증을 보관합니다.
7. 출발 에스크로 또는 소각, 이동 중 부채, 목적지 발행, 잠금 해제 또는 호출, 프로토콜 및 가스 수수료, 환불과 최종 상태를 대사합니다. 시드 문구나 개인 키를 공유하지 말고 문서화된 채널을 통해서만 상위 지원으로 전환합니다.

<a id="example"></a>

## 예시

- **단계별로 지연을 귀속합니다.** 출발 체인 확정성에 `12 minutes`, 증명 또는 증명서명 생성에 `8 minutes`, 릴레이어 대기열에 `35 minutes`, 목적지 포함에 `5 minutes`가 걸립니다. 전체 시간은 `12 + 8 + 35 + 5 = 60 minutes`입니다. 전달 가용성에 해당하는 것은 `35-minute` 대기열뿐이며, 처음 `20 minutes`와 마지막 `5 minutes`는 담당 주체가 다릅니다.
- **목적지 가스 견적이 부족해집니다.** 가스 한도는 `300,000`입니다. `25 gwei`일 때 견적은 `300,000 * 25 * 10^-9 = 0.0075 ETH`입니다. 실행 시 `60 gwei`가 필요하면 비용은 `0.018 ETH`이고, 부족액은 `0.018 - 0.0075 = 0.0105 ETH`입니다. 출발 체인 가스를 더 지불해도 목적지 실행 자금을 충당하는 것은 아닐 수 있습니다.
- **중복 릴레이어는 원금이 아니라 가스를 소모합니다.** 세 릴레이어가 동일한 `100,000 USDC` 메시지를 제출합니다. 성공한 트랜잭션은 `180,000 gas * 30 gwei = 0.0054 ETH`를 사용하고, 실패한 두 트랜잭션은 각각 `70,000 gas * 30 gwei = 0.0021 ETH`를 사용한 뒤 되돌립니다. 총 릴레이 가스 비용은 `0.0054 + 0.0021 + 0.0021 = 0.0096 ETH`입니다. 재생 상태가 올바르면 한 번의 `100,000 USDC` 효과만 발생하며, `300,000 USDC` 효과가 발생하지 않습니다.
- **이동 중 부채를 추적합니다.** 잠금·발행 경로가 `25 ETH`를 잠갔지만 목적지 호출이 실패하면 에스크로는 `+25 ETH`, 래핑 자산 공급량은 `+0 ETH`, 이동 중 부채는 `25 ETH`입니다. 동일한 메시지를 성공적으로 재시도하면 에스크로는 `25 ETH`로 유지되고, 래핑 자산 공급량은 `25 ETH`로 늘며, 이동 중 부채는 `0 ETH`로 줄어듭니다. 출발 체인에 새로운 `25 ETH`를 예치하면 대신 `50 ETH`의 에스크로와 두 개의 의무가 생깁니다.

<a id="risks"></a>

## 위험

- 출발 트랜잭션이 보류 중이거나 되돌려졌지만 인터페이스는 전송 완료로 표시합니다.
- 충분한 확정성에 도달하기 전에 출발 이벤트에 따라 행동합니다.
- 출발 체인 재구성으로 이벤트가 제거되거나 변경됩니다.
- 증명, 증명서명, 체크포인트 또는 서명 데이터를 사용할 수 없습니다.
- 오래되거나 잘못되었거나 무효화된 루트 또는 서명자 집합을 사용합니다.
- 허용 목록 릴레이어 키나 서비스를 사용할 수 없습니다.
- 무허가 전달을 신속한 전달 보장으로 오해합니다.
- 호출자 제한 진입점을 공개 수동 경로로 오해합니다.
- 목적지 체인, 시퀀서, RPC 또는 인덱서가 중단되거나 오래된 상태입니다.
- 목적지 메신저 또는 수신 컨트랙트가 일시 중지됩니다.
- 수신 컨트랙트 업그레이드나 주소 불일치로 호출이 되돌려집니다.
- 목적지 가스 한도가 너무 낮습니다.
- 가스 견적, 환율, 수수료 상한 또는 환불 가정이 오래됩니다.
- 지갑에 올바른 목적지 네이티브 가스 자산이 없습니다.
- 메시지, 티켓, 증명 또는 실행 기한이 만료됩니다.
- 순서형 nonce 공백이 후속 메시지를 차단합니다.
- 재시도 또는 소비 상태 로직이 중복을 허용하거나 복구를 막습니다.
- 중복 제출, 취소 또는 대체 경쟁으로 가스를 낭비합니다.
- 가짜 지원 경로가 악성 컨트랙트, 증명 또는 calldata를 제공합니다.
- 출발 잠금 또는 소각, 이동 중 청구권, 목적지 효과, 수수료와 환불을 잘못 대사합니다.

<a id="misconceptions"></a>

## 흔한 오해

- **릴레이어가 메시지를 인증합니다.** 전달은 증거를 운반할 뿐이며, 목적지 검증기와 애플리케이션이 출발지, 발신자, 페이로드 및 재생 규칙을 집행합니다.
- **릴레이어 중단은 자산이 이미 손실되었거나 자동 환불된다는 뜻입니다.** 첫 결과는 지연입니다. 만료, 복구, 지급 능력 및 환불 결과는 상품마다 다릅니다.
- **무허가 릴레이는 누구나 페이로드를 변경할 수 있거나 즉시 실행을 보장한다는 뜻입니다.** 인증은 변조를 막지만 증명, 가스, 체인 및 수신 측 가용성이 실행 시점을 결정합니다.
- **재시도는 언제나 중복 발행을 일으킵니다.** 올바른 재시도는 하나의 메시지를 다시 사용하고 성공 효과를 한 번만 허용합니다. 새로운 출발 전송은 새로운 의무를 만듭니다.
- **목적지 트랜잭션 해시나 인터페이스의 완료 표시가 수령을 증명합니다.** 영수증 성공, 처리 상태, 수신 측 이벤트, 잔액, 토큰 식별 및 필요한 확정성을 확인해야 합니다.

<a id="related"></a>

## 관련 주제

- [크로스체인 브리지](/ko/crypto/cross-chain-bridge/)
- [크로스체인 메시지 재생 방지](/ko/crypto/bridge-message-replay-protection/)
- [캐노니컬 브리지](/ko/crypto/canonical-bridge/)

<a id="sources"></a>

## 출처

- [Relayer](https://docs.hyperlane.xyz/docs/protocol/agents/relayer) - Hyperlane Documentation (확인일: 2026-08-13)
- [Mailbox](https://docs.hyperlane.xyz/docs/protocol/core/mailbox) - Hyperlane Documentation (확인일: 2026-08-13)
- [VAAs](https://docs.wormhole.com/protocol/infrastructure/vaas/) - Wormhole Docs (확인일: 2026-08-13)
- [Executor Framework](https://docs.wormhole.com/protocol/infrastructure/relayers/executor-framework/) - Wormhole Docs (확인일: 2026-08-13)
- [Withdrawals](https://specs.optimism.io/protocol/withdrawals.html) - OP Stack Specification (확인일: 2026-08-13)
- [Cross Domain Messengers](https://specs.optimism.io/protocol/messengers.html) - OP Stack Specification (확인일: 2026-08-13)
- [CCTP Technical Guide](https://developers.circle.com/cctp/references/technical-guide) - Circle Developers (확인일: 2026-08-13)
- [Proof-of-stake (PoS)](https://ethereum.org/developers/docs/consensus-mechanisms/pos/) - ethereum.org (확인일: 2026-08-13)

Source: https://wiki.fcontext.com/ko/crypto/bridge-relayer-liveness-risk/index.mdx
