(이 기사에는 2019 년에 IOV Labs RSK 블로그)
비트 코인의 보안은 채굴 자들이 가장 많은 난이도 (일반적으로 가장 긴)를 가진 체인 인 "가장 무거운 체인"을 확장하는 경제적 인센티브에 의존합니다. 현재 이러한 인센티브는 블록 보조금과 거래 수수료로 구성된 블록 보상을 통해 제공됩니다. 그러나 보조금 (현재 6.25 BTC)은 블록 당 평균 거래 수수료 (현재 0.25 BTC)보다 훨씬 높습니다. 비트 코인 보조금은 4 년마다 반으로 줄어들고, 반비례적인 BTC 가격 상승없이 채굴에 대한 주요 인센티브는 블록 보조금에서 블록 거래 수수료로 전환 될 것입니다. 현재 보안 예산을 유지하려면 거래 비용을 25 배 늘려야합니다. 이것이 비트 코인에 문제가 될지 말하기에는 너무 이르다. 비트 코인은 낮은 보조금의 새로운 시대에 적응하기 위해 소프트 포크 또는 하드 포크가 필요할 수 있습니다. 2014 년에 저는 (주로 이론적)을 발표했을 때 비트 코인이 어떻게 불안정해질 수 있는지 보여주었습니다. 전면 공격. Carlstenet al. (2016) 분석 이 문제는 심도 있지만 만족스러운 해결책을 찾지 못했습니다. 이것은 비트 코인의 문제 일뿐만 아니라 시간이 지남에 따라 돈 발행이 감소하는 모든 암호 화폐가 직면해야 할 문제입니다.
하지만 지금은 비트 코인에 대해 걱정할 필요가 없습니다. 비트 코인 커뮤니티는이 문제를 10 년 또는 20 년 내에 해결해야 할 수도 있고 절대로 해결해야 할 수도 있습니다. 때때로 문제는 재검토, 모두 분석 강조 및 최소화 문제. 그러나 RSK와 같은 비트 코인 사이드 체인을 분석 할 때 문제는 매우 현실적입니다.
2019 년에 Blockstream의 CEO Adam Back은 다듬기 비트 코인의 장기적인 보안 예산에 대해 논의 할 때 :“다른 장기적인 저 보조금 시대 아이디어에는 원활한 수수료 수익을 위해 블록 간격에 따른 수수료 평균이 포함됩니다.”
https://twitter.com/adam3us/status/1097031151921713152
RSK는 2016 년부터 수수료 수익의 평활화라는 아이디어를 정확히 구현합니다.하지만 RSK가 높은 수수료로 거래를 처리하는 방법을 설명하기 전에 거래 수수료로 촉발 될 수있는 세 가지 주요 블록 반전 공격 인 수수료 저격에 대해 자세히 설명하겠습니다. , 고래 거래 및 광산 원자화.
블록 보조금이 낮고 마지막 채굴 된 블록의 거래 수수료가 멤풀의 거래에서 수집 할 수있는 수수료보다 훨씬 높으면, 단기 합리적 채굴자는 마지막 채굴 된 블록에서 거래를 가져와 경쟁자를 채굴하도록 인센티브를받습니다. 그것을 확장하는 대신 블록. 이것은 Nakamoto Consensus에서 벗어난 것입니다. 수수료 저격. 정의에 따르면 이러한 편차는 프로토콜에 대한 공격이며 광부는 악의적 인 당사자로 간주됩니다. 획득 한 거래 수수료를 현금화하려면 악의적 인 채굴자가 정직한 체인보다 더 빠르게 하나의 추가 확인 블록을 채굴해야 나머지 채굴 자들이 자신의 체인으로 전환 할 수 있습니다. 따라서 악의적 인 채굴자가 이기적인 포크가 정직한 체인을 능가하지 않으면 해시 레이트를 낭비 할 위험이 있으므로 수수료 저격이 항상 수익성이있는 것은 아닙니다. 드물게 수수료를 저격하는 것은 문제가되지 않을 수 있지만, 채굴자가 기존의 모든 포크에 대한 잠재적 수수료 저격 기회로부터 이익을 얻도록 합의 코드를 변경하면 네트워크가 더 위험한 공격에 노출 될 수 있습니다.
광부 노드가 자동 수수료 저격을 수행하면 공격자는이 상황을 이용하여 이중 지출 공격을 수행 할 수 있습니다. 악의적 인 채굴자는 정직한 체인에서 코인을 사용하고 교환으로 다른 외부 자산을 받고 나중에 첫 번째 블록에서 정직한 체인을 포크 할 수 있습니다. 악성 포크에서 공격자는 코인을 이중으로 지출하지만 정직한 포크에 존재해서는 안되는 독특한 기능 (즉, 고유 한 UTXO)도 도입합니다. 그 직후 공격자는 "고래"거래 이 기능을 사용하고 (즉,이 UTXO를 소비 함) 수수료 스나이핑 코드를 실행하는 채굴 자에게 미끼 (또는 뇌물)로 비정상적으로 높은 거래 수수료를 제공합니다. "고래 거래"라는 용어는 높은 가치를 전달하는 거래로 이해 될 수 있지만 여기서는 참조 된 문서에서 정의 된 정의를 전달 된 값의 양에 관계없이 높은 수수료를 지불하는 거래로 사용합니다. 비트 코인에서 고래 트랜잭션과 악성 포크 블록은 채굴 자의 노드로 직접 전송되어야합니다. 왜냐하면 최상의 포크는 피어 투 피어 네트워크의 전체 노드에 의해 전달되지 않기 때문입니다. 그러나 많은 스마트 계약 플랫폼에서는 최상의 포크가 아닌 포크를 브로드 캐스트하기 때문에 공격이 훨씬 쉽습니다. 또한 스마트 계약 플랫폼에서는 고래 거래를 생성하는 것이 더 간단합니다. 공격자는 정직한 체인에서 이미 사용 된 임시 값을 재사용 할 수 있으므로 고래 거래가 정직한 체인에 포함되는 것을 방지 할 수 있습니다. 또는 고래 트랜잭션은 이전 블록 해시가 이기적인 포크에만 존재하는 블록 해시 (즉, BLOCKHASH opcode 사용)와 일치하는지 확인하고 이기적인 포크에 대해서만 뇌물을 지불하는 계약을 실행할 수 있습니다.
광부들이 고래 거래를 감지하면 악의적 인 포크를 확장하는 것을 고려할 수 있습니다. 비록 뒤쳐져 있더라도 뇌물이 충분히 높으면 더 긴 정직한 체인을 능가 할 것이라고 베팅합니다. 스마트 계약이없는 최상의 공격 전략은 다음 광부에게 뇌물을주는 일련의 고래 거래를 동시에 브로드 캐스트하여 악성 포크를 계속 확장하는 것입니다. 비트 코인에서 거래는 확인 잠금 확인 or 순서 확인. 스마트 계약 플랫폼에서는 nonce를 재사용하거나 계약 호출을 통해 수행 할 수 있습니다. 자동화되지 않더라도 공격자는 정직한 체인을 추월 할 때까지 악성 포크에서 고래 트랜잭션을 계속 생성 할 수 있습니다.
Whale Transaction 공격에서 우리는 채굴자가 포크 획득 확률에 따라 뇌물을 받기 위해 복잡한 채굴 전략으로 동적으로 전환해야한다고 생각했습니다. 우리는 채굴 자들이 미래의 뇌물을 고려하지 않고 이기적인 수수료 저격만을 고려하는 더 간단한 전략을 실행하고 있다는 사실을보다 현실적으로 고려할 수 있습니다. 이것이 대부분의 광부가 채택한 전략이라면 새로운 공격이 가능합니다. Miner Atomization 공격은 모든 광부가 이기적인 포크에서 동시에 작업하도록 유도하여 정직한 체인의 속도와 수렴을 줄이는 네트워크 차원의 서비스 거부 공격입니다. 공격은 수수료 스니핑 공격이나 고래 거래 공격과 유사하게 매우 높은 수수료로 거래를 방송하는 것으로 시작됩니다. 이 거래는 이중 지출을 돕기위한 것이 아니라 채굴 네트워크를 원자화하는 것을 목표로하는 미끼입니다. 예를 들어 공격을 보여 드리겠습니다. 높이 N의 블록에서 트랜잭션 T가 수수료로 100 개의 코인을 지불하지만 평균 블록 보상은 10 개의 코인에 불과하다고 가정합니다. 우리는 모든 채굴 자의 노드가이 합리적인 전략을 따르도록 프로그래밍되었다고 가정합니다.
- T가 정직한 체인의 마지막 K 블록에 포함 된 경우 트랜잭션 T를 잡고 높이 N에서 경쟁 블록을 채굴 한 다음이 이기적인 포크의 자식 블록을 정직한 체인을 능가 할 때까지 채굴하십시오.
- 정직한 체인이 이기적인 포크를 K 블록 이상 앞지르면 포기하십시오.
높은 수수료의 악의적 인 거래는 더 큰 마이닝 풀의 이익을 위해 마이닝을 원자화합니다. 이는 트랜잭션 T를 채굴 할 가능성이 가장 높고 나머지 채굴 자들이 포기할 수 있도록 충분한 이기적인 확인 블록을 추가합니다. 흥미롭게도 채굴 네트워크가 탈 중앙화 될수록 트랜잭션 T로 인한 중단이 더 심해집니다. 예를 들어 평균 블록 간격이 10 분인 블록 체인의 경우 총 해시 레이트의 100 %를 각각 가진 채굴자가 1 명이라면 네트워크는 최종적으로 수렴 될 때까지 여러 블록에 대해 100 배 느려집니다. 네트워크는 2 일 동안 사용할 수 없습니다!
RSK는 순수 비트 코인 사이드 체인그래서 처음부터 거래 수수료만으로 구성된 보안 예산으로 블록 체인을 확보해야하는 과제에 직면해야했습니다. 따라서 RSK는 비정상적으로 높거나 낮은 수수료에 대비해야했습니다. RSK는 생산 준비가 된 최초의 사이드 체인이었으며 합의를 위해 병합 채굴을 사용합니다. 현재 비트 코인 채굴 자의 40 % 이상 머지-마인 RSK.
RSK 채굴자는 RSK 풀 노드를 실행하는 데 대한 경제적 보상을 기대합니다. 대부분의 블록 체인은이 보상을 위해 새로운 코인을 발행합니다. Ripple과 같은 일부 다른 분산 원장은 블록 생산자에게 지불하기 위해 코인을 발행하지 않지만 블록 생산자는 외부에서 보조금을받을 수 있습니다. XRP를 미리 채굴 한 Ripple Labs에는 XRP가 너무 많아서 제 XNUMX자가 블록 생산자가 될 수 있도록 보상을 제공 할 수 있습니다. 반면에 RSK는 가장 어려운 조건에 직면 해 있습니다. 비트 코인과 같은 코인 발행이없고 XRP와 같은 코인 프리마 인도 없습니다. RSK는 비트 코인 사이드 체인의 성공적인 예, 디플레이션 블록 체인의 미래 합의, 보조금없는 블록 체인이 지속 가능한 방법을 보여줍니다. 그러나 보조금이 없다는 것은 여기에 제시된 공격에 대비하여 사이드 체인을 신중하게 설계해야 함을 의미합니다. RSK는 높은 수수료 거래를 기반으로 한 블록 체인 재구성에 대해 더 안전하기 위해 몇 가지 고유 한 기능을 구현합니다.
- 블록 보상 평활 (수수료 평활이라고도 함).
- 보상 공유 차단
- 포크 인식 병합 마이닝
다음 섹션에서는 각 기술을 간략하게 설명합니다.
수수료 평활화는보다 평등 한 방식으로 채굴 자간에 거래 수수료를 분배하는 합의 규칙입니다. 각 광부에게 과거 블록 보상의 기능을 지불합니다. 함수는 소수의 이전 블록 보상을 기반으로하거나 모든 이전 블록에 의존하는 상태를 기반으로 선형 또는 비선형 일 수 있습니다. 가장 단순한 설계는 누적 된 요금에 대해 일종의 저역 통과 필터를 사용하는 것입니다. RSK는 매우 간단한 평활화 기능을 사용합니다. IIR 과 α = 0.1. RSK 채굴자가 높이 N에서 블록을 풀면 채굴자는 블록 N 거래 수수료의 10 %와 이전에 누적 된 모든 미지급 채굴 수수료의 10 %를 보상받습니다. 즉, "공유"채굴 자 계정이 존재하며, 각 블록에서이기는 채굴자가 거래 수수료를 입력하고 자신을 위해 10 %를 인출합니다.
보상 평활화는 채굴자가 고래 거래 수수료의 10 % 만 확보 할 수 있기 때문에 과거 블록을 다시 채굴하여 지불 된 수수료를 확보하려는 인센티브에 대해 블록 체인을 확장하는 인센티브를 증가시킵니다. 이전 예를 살펴 보겠습니다. 우리는 평균 블록 보상이 10 코인이고 블록 하나에 높이 N에서 100 코인 뇌물이 포함되어 있다고 가정합니다 .RSK에서 높이 N의 블록은 19 코인의 보상을 지불하고 다음 블록은 18.1 코인을 지불합니다. 이기적인 채굴자는 이제 다른 채굴 자보다 10 배 더 많은 해싱 파워가 필요합니다.
이제 다른 보완적인 보호 조치를 보여줍니다.
RSK는 DECOR라는 보상 공유 합의 프로토콜을 구현합니다. DECOR은 블록 헤더가 정직한 체인에 의해 참조되는 한 형제 블록간에 블록 보상을 균등하게 분할합니다. DECOR는 높은 수수료 거래의 승자가 형제 블록을 생성 한 다른 10 명의 채굴 자와 보상을 공유해야하기 때문에 원자화 공격에 대한 인센티브를 줄입니다. 블록 체인 블록은 최대 10 개의 블록 형제 참조를 가질 수 있고 DECOR 프로토콜은 이들 모두간에 블록 보상을 공유하기 때문입니다. 공유를 피하기 위해 광부는 또 다른 10 개의 이기적인 블록을 채굴하여 삼촌 참조를 방지하여 성공 가능성을 크게 줄여야합니다. 수수료 평활화와 함께 보상 공유를 고려할 때 RSK 네트워크를 방해하려는 시도가 성공하려면 뇌물이 평균 블록 보상보다 최소 110 배 이상 높아야합니다.
포크 인식 병합 채굴 병합 채굴의 변형으로, 사용자가 사이드 체인 네트워크 (예 : RSK)의 악성 포크에 대해 메인 체인 네트워크 (예 : 비트 코인)를 모니터링 할 수 있습니다. 고래 거래 공격으로부터 이익을 얻으려면 공격자는 이중 지출을 할 피해자를 찾아야합니다. 그 피해자는 아마도 온라인 암호 화폐 거래소 일 것입니다. 암호 화폐 거래소는 입금을 받기 전에 수백 개의 블록 확인을 기다립니다. RSK 아르마딜로 시스템 사전에 악성 포크를 감지하고 교환에 경고합니다. 수수료 저격 및 광부 원자화 공격의 경우 악성 포크가 짧기 때문에 Armadillo는 상황을 진단하고 정직한 프로토콜에서 벗어나는 풀을 식별하는 도구로만 사용할 수 있지만 공격을 막을 수는 없습니다.
RSK가 현재 구현하지 않는 또 다른 보완 적 보호 조치는 거래 가스 가격을 최소 가스 가격의 배수로 제한하는 것입니다 (예 : 10 배 스프레드). 나는 비트 코인에 대한 비슷한 측정을 제안했습니다. 2013. RSK는 각 블록이 허용되는 최소 거래 가스 가격을 광고하기 때문에이를 쉽게 구현할 수 있습니다. 그러나 네트워크가 블록이 블록에서 사용 가능한 모든 가스 한도를 소비하지 않는 상태에있는 경우 최대 가스 가격을 설정한다고해서 문제가 완전히 해결되지는 않습니다. T의 높은 거래 수수료는 더 높은 가스 가격 대신 더 많은 가스 소비량의 결과 일 수 있습니다 (지불 된 수수료는이 두 금액의 곱입니다).
공격자가 스마트 계약 플랫폼을 사용하여 다음을 수행 할 수 있으므로 보상 평활화는 궁극적 인 솔루션이 아닙니다. 뇌물 광부 거의 모든 일을 할 수 있습니다. 나는 이론적인 "Eternal Choice for the Dark Side Attack"(또는 ECDSA :))을 발표했습니다. 2014, 광부들이 정직한 행동에서 벗어나기 위해 어떻게 뇌물을받을 수 있는지 보여주는 방법입니다. McCorry el at. (2018)은 광범위한 이론적 뇌물 공격을 제시했습니다. 그러나 스마트 계약 기반 뇌물을받는 데 필요한 이해와 준비 수준은 상당합니다. 이로 인해 스마트 계약 기반 뇌물 공격은 계속하기가 훨씬 더 어려워집니다. 광부는 뇌물 계약을 알고 있어야하며 계약과 상호 작용하는 방법을 이해해야합니다. 그러나 이러한 유형의 공격은 피할 수 없습니다. 플랫폼이 현재 블록 채굴 자에게 지불을 수행 할 수 있으면 동일한 채굴 자에게 지불하는 스마트 계약을 실행할 수도 있습니다. 이는 프로토콜 합의를 설명하는 프로그래밍 언어와 스마트 계약에서 사용하는 언어가 모두 "튜링 완료"이기 때문입니다. 이것은 흥미로운 이론적 문제입니다.
뇌물 지급을 더 어렵게 만드는 영리한 트릭을 생각할 수 있습니다. 예를 들어 채굴 자 주소를 특별하게 (즉, 일회성 만 사용)하여 뇌물 계약이 채굴 자에게 지급 할 수 없도록하는 것과 같은 방법입니다. 그러나 Turing 완전한 스마트 계약 플랫폼은 지불을 기꺼이 다른 당사자에게 지불하려는 당사자의 지불을 막을 수 없습니다. 우리는 항상 방어를 회피하는 성공적인 뇌물 스마트 계약을 구축합니다. 예를 들어 악의적 인 채굴자는 개인 키를 공개하지 않고 계약에 대한 특정 채굴 자 주소의 제어를 증명하는 영 지식 증명을 생성 할 수 있습니다. 광부는이 증거를 뇌물 수취를위한 대체 수신 주소와 함께 뇌물 수수 계약에 보냅니다.
다른 Turing 완전 스마트 계약 플랫폼을 사용하여 채굴 자에게 뇌물을 지급 할 수 있기 때문에 채굴자가 뇌물을받을 블록 체인의 스마트 계약 언어 기능을 제한하는 것만으로는 충분하지 않습니다. 플랫폼은 블록 헤더 릴레이 (예 : btcrelay) 만 실행하면됩니다. 예를 들어, RSK와 이더 리움은 비트 코인 채굴 자에게 뇌물을 지급하는 데 사용될 수 있습니다. 그러나 브리지 된 블록 체인에 대한 공격을 조정하는 것은 더 어렵습니다.
뇌물 공격에 대한 잠재적 인 방어 수단 중 하나는 대다수의 블록 생산자가 블록에 서명하고 몇 달 동안 코인의 보증금 (지분)을 보유하도록 요구하는 PoS 합의 프로토콜의 변형을 사용하는 것입니다. 모호한 채굴 자의 지분 (두 개의 모순되는 블록 또는 모순되는 포크의 확장을 생성)은 커뮤니티에서 시작된 하드 포크에 의해 압수됩니다. 이 보호가 취약성을 제거하지는 않지만 뇌물이 손실 된 지분보다 높아야하기 때문에 공격 비용이 증가 할 수 있습니다. 현재 비트 코인에서는 채굴 자 스테이 킹을 활성화 할 수 없습니다. RSK가 PoS 합의를 채택 할 수 있지만, PoS로 전환하거나 RSK에서 PoW와 PoS를 혼합 할 제안은 없습니다.
비정상적으로 높은 수수료를 지불하는 악의적 인 거래를 기반으로 Nakamoto 컨센서스에 몇 가지 알려진 공격을 제시했습니다. 일부 공격은 이중 지출을 허용하고 다른 공격은 네트워크 불안정을 유발합니다. 이러한 공격은 특히 RSK를 포함한 모든 비트 코인 사이드 체인과 관련이 있습니다. RSK는 블록 보상 평활화, 블록 보상 공유 및 포크 인식 병합 채굴을 억제 수단으로 구현합니다. 보상 평활화는 명시 적 수수료에 대해 작동하지만 스마트 계약을 사용하여 지불하는 일반적인 뇌물 사례는 피할 수 없습니다. 이러한 공격으로부터 방어하려면 적극적인 네트워크 모니터링이 필요합니다. 마지막으로 이러한 공격에 대한 잠재적 솔루션에 대한 추가 연구가 필요합니다.
- 100
- 2016
- 2019
- 계정
- 활동적인
- 아담 뒤로
- 추가
- 이점
- All
- 기사
- 유산
- 자동화
- BEST
- 베팅
- 두번
- 비트코인
- blockchain
- BTC
- btc price
- 현금
- 원인
- 발생
- 대표 이사
- 도전
- 승산
- 이전 단계로 돌아가기
- 확인하는 것이 좋다.
- 아이
- 암호
- 동전
- 코인
- 커뮤니티
- 보상
- 일치
- 소비
- 계속
- 계약
- 계약
- 만들기
- 암호화는
- 암호 교환
- 암호 교환
- 암호 화폐
- Current
- 분산 된
- 방위산업
- 서비스 거부
- 디자인
- 세부 묘사
- 혼란
- 붕괴
- 분산 원장
- 초기의
- 간결한
- 이더리움
- 교환
- 교환
- 확장
- 페이스메이크업
- 얼굴
- 특색
- 특징
- 지우면 좋을거같음 . SM
- 최종적으로
- 먼저,
- 따라
- 포크
- 가득 찬
- 기능
- 미래
- 가스
- ge
- 일반
- GM
- GP
- 잡아요
- GV
- 단단한 포크
- 해시
- 해싱
- 해시 레이트
- 여기에서 지금 확인해 보세요.
- 높은
- 방법
- How To
- HTTPS
- 생각
- 확인
- 포함
- 증가
- IP
- IT
- 키
- 지식
- 실험실
- 언어
- 레벨
- 긴
- 주요한
- 과반수
- 측정
- 매질
- 멤풀
- 광부
- 채굴
- 돈
- 모니터링
- 개월
- 네트워크
- 노드
- 제공
- 온라인
- 기타
- 서
- 지불
- 지불
- 결제
- 피어 위해 피어
- 플랫폼
- 플랫폼
- 풀
- 수영장
- PoS
- PoW
- 힘
- 제시
- 방지
- 가격
- 사설
- 개인 키
- 생산
- 제작자
- 프로덕트
- 이익
- 프로그램 작성
- 증명
- 신청
- 보호
- 보호하는
- 연구
- REST
- 수익
- 보상
- 리플
- 리플 랩
- 달리기
- 달리는
- 보안
- 연속
- 설정
- 공유
- 공유
- 변화
- 짧은
- 사이드 체인
- 단순, 간단, 편리
- 작은
- 스마트 한
- 똑똑한 계약
- 스마트 계약
- So
- 솔루션
- 풀다
- 지출
- 전파
- 말뚝
- 측설
- 주 정부
- 전략
- 보조금
- 성공
- 성공한
- 지속가능한
- 스위치
- 제 3 자
- 시간
- 거래
- 거래 내역
- 튜링
- 사용자
- 가치
- 취약점
- 기다리다
- 위키 백과
- 말
- 작업
- 일
- xrp
- 년
- 제로