
원제: "Arbitrum의 보안 메커니즘에 대한 심층 분석"
출처 | 해커눈
저자 | 디게이트
레이어 2 확장 솔루션은 현재 이더리움 커뮤니티에서 뜨거운 주제인 동시에 전체 블록체인 기술 커뮤니티에서 논의되고 있는 뜨거운 주제이기도 합니다. 낙관적 롤업을 기반으로 하는 Arbitrum은 현재 가장 매력적인 레이어 2 확장 솔루션 중 하나입니다. 메인넷의 베타 버전을 최초로 배포했으며 Uniswap 및 Compound와 같은 핵심 DeFi 프로젝트의 지원을 받았습니다.
보조 제목
이더리움 보안에 기반
우리 모두 알다시피 다른 확장 솔루션에 비해 레이어 2 솔루션의 가장 큰 장점은 보안이 이더리움 메인넷의 보안에 달려 있다는 것입니다. 그러나 대부분의 사람들은 이 사실을 알면서도 그 이유를 모릅니다. Arbitrum은 Ethereum의 보안에 어떻게 뿌리를 두고 있습니까?
먼저 Optimistic Rollup 솔루션의 주요 기능을 검토해 보겠습니다.
롤업 솔루션에서 트랜잭션(calldata)은 L1에 기록되지만 실제 계산 및 계약 저장은 확장을 위해 L2에서 수행됩니다.
검증자는 L1에 어설션을 게시합니다. 이는 모든 트랜잭션과 결과를 롤업 블록으로 패키징한 다음 L1 트랜잭션으로 보내는 것으로 이해할 수 있습니다.
낙관적 롤업은 "낙관적" 롤업 솔루션이라고 합니다. 어설션이 발행될 때 그 유효성을 보장하는 수반되는 증명이 포함되어 있지 않기 때문입니다. 즉, 어설션은 기본적으로 유효합니다. 대신 누구나 주장에 이의를 제기할 수 있는 시간이 주어질 것입니다. 챌린지가 성공하면 이 주장 내의 모든 거래가 취소되고 주장을 하는 사람은 예치금을 잃게 됩니다. 챌린지 기간이 만료되고 아무도 성공하지 못하면 어설션이 완료됩니다.
데이터 가용성
데이터 가용성
L2에서 실행되는 모든 트랜잭션은 먼저 L1에서 실행되는 Inbox 스마트 계약에 제출된 다음 L1에 calldata로 기록됩니다. 누구나 이 데이터를 사용하여 L2의 모든 트랜잭션을 검색하고 L2를 원래 상태로 복원할 수 있습니다. 이러한 데이터의 가용성은 L1을 통해 보장되며 사용자는 L2의 장애로 인해 L2의 자산 손실에 대해 걱정할 필요가 없습니다.
AnyTrust
비상구 메커니즘
비상구 메커니즘
Arbitrum에는 현재 특정 비상구 메커니즘이 없지만 사용자가 안전하게 종료할 수 있도록 일련의 안전 메커니즘이 있습니다.
첫째, 데이터 가용성은 L2에 저장된 사용자의 자산과 데이터가 언제든지 L1에서 복원될 수 있고 절대 손실되지 않도록 보장합니다.
둘째, 모든 사용자는 강제 종료를 위해 L1의 받은 편지함 계약에 트랜잭션 요청을 보낼 수 있습니다.
마지막으로 AnyTrust 메커니즘은 사용자가 L2가 종료 트랜잭션을 적절하게 처리하도록 강제할 수 있도록 합니다.
보조 제목
챌린지 기간이 7일인 이유
Arbitrum은 다단계 대화식 롤업 솔루션입니다. 이 솔루션은 먼저 검증자가 만든 주장이 유효하다고 낙관적으로 믿으며 다른 검증자는 챌린지 기간 동안 질문하고 이의를 제기할 수 있습니다. 대부분의 경우 문제가 없으며 전체 시스템이 더 효율적이고 저렴할 수 있습니다.
당연히 챌린지 기간이 길수록 시스템 전체는 더 안전하지만 동시에 사용자 경험은 더 나빠집니다(사용자가 로그아웃하려면 챌린지 기간이 끝날 때까지 기다려야 하기 때문입니다). 그렇다면 최고의 챌린지 기간은 어떻게 결정할까요?
Arbitrum 팀은 최적의 도전 기간을 계산하기 위해 이 모델을 제안합니다.
챌린지 기간은 C 블록의 길이와 같고 공격자가 L2에서 얻을 수 있는 최대값은 V라고 가정합니다.
그러면 공격자가 얻은 기대값은 V exp(-AC)입니다.
참고: exp는 지수 함수 "e"이고 A는 특정 상수 A이며 AC 앞의 "-" 기호는 C가 기대 수익에 반비례함을 나타냅니다.
Assertor는 공격을 처리하기 위해 자신의 자산이 공격의 자산 가치를 훨씬 초과하도록 보장해야 합니다. 10배 이상 어서터의 비용이 10V exp(-AC)I라고 가정해 봅시다. 나는 자본 비율을 말합니다.
챌린지 기간 동안 기존 사용자가 잠근 출금 자산을 CWV(W는 소수점, WV는 L2의 총 자산의 일부이며 각 시점에서 C개의 완료되지 않은 챌린지 블록이 있을 것임)라고 가정하고 사용자의 CWVI의 자산 비용.
주장자와 탈퇴한 사용자의 총 자산 비용이 가장 낮을 때 최적의 도전 기간을 설정해야 합니다. 즉, C의 값을 취했을 때 10V exp(-AC)I+CWVI가 가장 작다. V와 I는 두 항 모두에 나타나며 최소점에 영향을 미치지 않으며 무시할 수 있습니다. 우리는 단순히 C에 대해 미분하고 결과 도함수를 0으로 설정하고 C = ln(10A / W) / A를 얻습니다.
이제 우리는 대략적인 최적의 챌린지 기간을 얻기 위해 몇 가지 합리적인 숫자를 위의 방정식에 연결합니다.
한 블록 타임 내에서 지속적인 검토 성공률이 99.99%로 높다고 가정합니다. 즉, A = -ln(0.99) = 0.01입니다.
또한 블록 생성 시간을 15초로 가정하여 일일 출금량은 전체 금액의 1%, 각 블록의 출금 비율은 약 W=0.000002라고 가정합니다.
보조 제목
검열 공격을 방어하는 방법
이 부분에서는 Arbitrum이 포킹 공격, 회피 공격, 재밍 공격 및 속도 악마 공격의 네 가지 주요 유형의 검열 공격을 방어하는 방법에 대해 설명합니다.
포킹 공격: 광부들은 챌린지가 포함되지 않은 대체 체인을 수락하기 위해 일반 챌린지가 포함된 블록을 폐기하기 위해 음모를 꾸밉니다(또는 뇌물을 받습니다).
우선 챌린저의 존재로 인해 포크 공격이 발생하면 필연적으로 챌린저에 의해 발견됩니다. 그리고 포크 공격의 전제 조건인 블록체인의 채굴력 독점이 이익을 위한 규칙을 뻔뻔스럽게 위반하고 있다는 사실이 밝혀지면 블록체인 자체가 파괴된다. 현재 Arbitrum이 도전 기간 설계 모델을 채택했는지 여부는 논쟁의 여지가 있습니다.
우회 공격: 채굴자들은 그들이 생성하는 블록의 일반적인 문제를 무시하기 위해 음모를 꾸밉니다(또는 뇌물을 받습니다).
우리는 독점이 채굴력의 90%를 통제하고 50블록의 데드라인이 있다고 가정합니다. 그런 다음 독점자는 공격을 완료하기 위해 50개의 연속 블록을 포장해야 합니다. 이 확률은 0.9의 50승 또는 0.5%입니다. 실제 챌린지 기간은 50블록을 훨씬 넘기 때문에 공격에 성공할 확률은 극히 적습니다. Arbitrum의 설계에서 공격자는 공격이 실패할 경우 큰 벌금을 지불하므로 독점자가 회피 공격을 시작하는 것은 매우 비경제적입니다.
재밍 공격: 공격자는 "구식 서비스 거부 공격(DoS)"을 시작하여 당사자가 트랜잭션을 발행하지 못하도록 합니다(챌린지가 포함된 트랜잭션은 발행할 수 없음).
정직한 한 명의 도전자가 있는 한 공격은 실패하기 때문에 공격자는 가능한 모든 도전자를 차단해야 합니다. 그러한 도전자가 많으면 공격이 완료되기 어렵습니다. 더 나쁜 것은 이해 당사자가 백업 계획으로 자동 감시견을 고용할 수 있다는 것입니다. 그들은 주요 플레이어가 챌린지를 너무 늦게 게시하거나 챌린지를 게시하는 데 문제가 있는 경우에만 개입합니다. 공격자는 네트워크에 무음 모니터가 있는지 여부를 모르거나 심지어 존재한다는 것도 알지만 그들이 누구인지 모르기 때문에 공격자는 실제 조치를 취하기 전에 이러한 모니터에 대해 DoS 공격을 시작할 수 없습니다.
속도 악마 공격: 공격자는 온체인 주장을 너무 빨리 생성하여 다른 당사자가 시간이 만료되기 전에 모든 주장을 확인하고 도전할 수 없습니다.
Arbtirum은 보류 중인 주장을 확인하고 언제든지 하나에 이의를 제기하는 데 필요한 총 작업량이 계약 기한 내에 완료될 수 있도록 주장이 생성되는 속도를 제한함으로써 대응합니다. 구체적으로 롤업 체인에서 스마트 컨트랙트 작업 진행에 속도 제한이 있기 때문에 누군가가 많은 수의 어설션을 빠르게 생성할 수 있더라도 결국 속도가 느려질 수밖에 없습니다.
결론적으로 분기 공격에 대해 너무 걱정할 필요가 없습니다. 악의적인 마이닝 컴퓨팅 파워의 독점이 있다면, 이 블록체인은 기본적으로 매력적이지 않게 되었다고 말할 수 있습니다. Arbitrum은 적절한 설계 또는 실습을 통해 다른 세 가지 검열 공격을 방어할 수 있습니다.
시퀀서 모드의 장점과 위험
시퀀서 모드는 Arbitrum의 선택적 기능이며 Offchain Labs는 메인넷의 릴리스 버전에서 유일한 시퀀서 노드를 실행합니다.
시퀀서는 받은 편지함에서 각 트랜잭션의 순서를 제어할 수 있는 제한된 권한을 부여받아 이더리움에서 블록이 확인될 때까지 5분을 기다리지 않고 사용자의 트랜잭션 결과가 즉시 결정될 수 있도록 합니다. 차단 시간.
한편, 잘 작동하는 시퀀서는 선행 공격을 효과적으로 방어할 수 있습니다.
따라서 Offchain Labs에서 운영하는 중앙화되고 잘 작동하는 Sequencer 노드는 프로젝트의 초기 개발에 매우 유익하고 많은 문제를 줄여줍니다. 그러나 보안 위험도 분명합니다(Offchain Labs가 악을 행할 것이라고 상상하기는 어렵지만 그러한 가능성을 배제하지는 않습니다). Offchain Labs는 기술이 성숙되는 즉시 분산된 다중 시퀀서 노드 솔루션으로 전환할 것을 약속합니다.
또한 받은 편지함은 시퀀서가 제출한 트랜잭션을 수락하는 하나와 일반 애그리게이터 또는 사용자가 제출한 트랜잭션을 수락하는 두 개로 분할되어 중앙 집중식 시퀀서를 신뢰하지 않는 사용자가 선택할 수 있는 또 다른 방법을 제공합니다.
이 기사에 대한 링크:https://www.8btc.com/article/6655971
재인쇄 기사의 출처를 표시하십시오