제퍼넷 로고

이클립스 공격과 이더 리움의 삼촌 블록 메커니즘

시간

영상

Kirobo Hacker Noon 프로필 사진

@키로 보키로 보

실수 할 가능성을 줄여 블록 체인 거래를 덜 스트레스와 단순하게 만듭니다.

일식 공격이란 무엇입니까?

이클립스 공격은 공격자가 전체 네트워크를 공격하는 대신 특정 사용자를 격리하고 공격하는 분산 형 네트워크를 공격하는 수단입니다.

이 기사에서는 몇 가지 기능을 설명합니다. 이더리움는 삼촌 차단 메커니즘을 포함하여 이러한 종류의 공격에 더 취약해질 수 있습니다.

블록 체인의 데이터 구조

블록 체인은 네트워크의 여러 노드에 데이터베이스를 배포하여 과거, 현재 및 미래 트랜잭션에 대한 합의 메커니즘을 설정하는 분산 형 프로토콜입니다. 블록 체인의 데이터 구조는 블록으로 표시됩니다.

탈 중앙화 블록 체인 네트워크에서 참가자는 중앙 기관 대신 진실에 동의합니다. 블록 체인은 투명하고 불변이며 모든 네트워크 참여자는 네트워크에서 일어나는 일을 볼 수 있으며 합의 된 메커니즘에 의해 거래 날짜가 변경 될 수 없습니다.

비트 코인 블록 체인의 블록 유형

제네시스 블록

제네시스 블록은 모든 블록 체인의 첫 번째 블록이고 블록은 시스템의 기본 시작점이며 모든 미래 트랜잭션과 연결됩니다. 세계 최초의 제네시스 블록은 Satoshi Nakamoto에 의해 생성되었으며, 그렇게하여 Bitcoin을 생성했습니다.

제네시스 블록이 있으면 블록 체인이 새로 생성 된 블록을 이전 블록과 연결할 수 있도록하여 트랜잭션 이력을 생성 할 수 있습니다. 또한 제네시스 블록은 네트워크의 노드를 동기화하는 데 중요한 기능을합니다. 데이터베이스에 모두 동일한 제네시스 블록이 있어야합니다. 이를 통해 블록 체인의 분산 트랜잭션 북이 모든 사람에게 동일 해져 보안을 제공합니다.

메인 체인 블록

메인 체인 블록은 검증되고 블록 체인에 포함 된 모든 블록입니다. 이를 달성하기 위해 블록은 할당 된 암호화 퍼즐을 노드에 의해 해결함으로써 네트워크의 동의를 얻어야합니다. 네트워크가 합의에 도달하면 블록은 블록 체인에 포함되고 모든 노드에 의해 전파됩니다. 이러한 방식으로 네트워크의 각 노드는 새 블록을 가지며 이에 대한 검증 포인트 역할을합니다.

각 유효한 블록은 해당 블록과 함께 검증 된 일련의 트랜잭션을 포함합니다. 예를 들어, 비트 코인에서는 유효한 블록 평균 2100 건의 거래를 처리합니다. 유효한 블록의 각 트랜잭션이 확인됩니다.

모든 유효한 블록은 이전 트랜잭션을 계속 확인하여 네트워크의 모든 블록과 트랜잭션을 완전히 보호합니다. 물론 각 유효한 블록은 검증을 허용하는 데이터 구조로 구성됩니다. 구조에는 블록의 해시, 타임 스탬프, nuncio 및 블록 트랜잭션 데이터가 포함됩니다. 솔루션 후보를 검색하는 프로세스를 마이닝이라고하며 참여 노드를 마이너라고합니다. 블록의 암호화 퍼즐에 대한 유효한 솔루션을 생성하는 각 채굴자가 리더가되어 확인되지 않은 트랜잭션 집합을 결정할 수 있습니다. 그런 다음 블록 체인에 추가됩니다.

고아 블록

영상

고아 (또는 부실) 블록은 블록 체인의 일부가 아닌 유효한 블록입니다. 이는 두 명의 채굴자가 거의 동시에 블록을 인증하거나 충분한 해시 파워를 가진 공격자가 트랜잭션을 되돌리려 고 할 때 생성 될 수 있습니다. 이러한 경우 네트워크 합의 프로토콜은 어떤 블록이 체인에 포함되고 어떤 블록이 고아가 될 것인지 결정하는 역할을합니다.

실제로 블록 체인 네트워크는 항상 가장 긴 블록 체인을 선호하도록 프로그래밍되어 있습니다. 즉, 더 많은 정보 또는 처리 된 트랜잭션을 포함하는 블록을 선택합니다. 비트 코인 블록 체인에서 고아 블록은 폐기되고 채굴자가 수행 한 작업은 쓸모가 없습니다.

또한, 대부분의 거래소와 일부 지갑은 자금을 사용할 수있게되기 전에 추가 확인을 자동으로 기다리는 이러한 유형의 블록 때문입니다. 그들은 당신이 받고있는 거래와 현재 블록 사이에 얼마나 많은 블록이 채굴되었는지 계산함으로써 이것을합니다.

> eth.getBlock (blockNumber)

}

> eth.syncing.highestBlock −eth.getTransaction (““) .blockNumber

블록은 어떻게 확인됩니까?

영상

블록 체인 시스템은 머클 트리 데이터 구조와 함께 작동하므로 (이론상) 불변으로 만듭니다. 머클 트리는 내가 태어난 해인 1979 년에 Ralph Merkle에 의해 특허를 받았으며 암호화에 널리 사용됩니다. 머클 트리는 공유 데이터가 변경, 손상 또는 변경되지 않았는지 확인하는 기본 방법이며 경량이기 때문에 블록 체인에 적합합니다. 예를 들어, 비트 코인의 머클 트리 구조 덕분에 사용자의 모바일 지갑은이를 검증하기 위해 모든 비트 코인 거래를 다운로드 할 필요가 없습니다.

주어진 블록의 각 트랜잭션은 머클 트리의 리프에 해당하며 머클 루트는 개별 트랜잭션을 해싱하여 이들로부터 재귀 적으로 구축됩니다.

트랜잭션 쌍 (잎)은 블록 체인 네트워크의 트랜잭션에 해당 할 수있는 추가 리프 노드를 생성하기 위해 해시됩니다. Merkle 트리는 많은 수의 트랜잭션에서 생성 될 수 있지만 Merkle 루트는 항상 32 바이트 또는 256 비트 문자열에 해당합니다 (예를 들어 SHA256 해싱 알고리즘은 항상 고정 된 길이의 32 바이트를 출력합니다. 입력의 크기). 이러한 방식으로 32 바이트만큼 작은 것을 사용하여 수천 개의 트랜잭션을 확인할 수 있습니다.

아무리 최소한의 변경이라도 머클 루트의 확인을 방해하고 블록 체인의 일부 또는 전체 기록을 무효화합니다.

이더 리움 블록 체인의 블록 유형

Ethereum이 Bitcoin과 다른 점 중 하나는 트랜잭션 프로세스의 속도를 높이기 위해 설계된 더 빠른 블록 생성 메커니즘을 가지고 있다는 것입니다. 그러나 블록 생성 사이의 시간 간격이 매우 짧으면 (약 15 초) 블록 체인에이 모든 블록을 포함하는 것이 비효율적이기 때문에 엄청난 수의 고아 블록이 생성 될 수 있습니다.

이로 인해 채굴자가 보상없이 블록 작업에 시간을 낭비하는 문제가 발생했습니다. 이를 해결하기 위해 Ethereum의 개발자는 GHOST 프로토콜을 시작했습니다.

GHOST는 탐욕스러운 가장 무거운 관찰 된 하위 트리, 그리고 개념은 간단합니다. 보상은 표준 블록보다 낮지 만 고아 블록을 검증하는 채굴 자에게 보상합니다. 보상을 해제하려면 블록이 메인 체인의 블록 또는 삼촌 블록에서 참조되어야합니다.

이 메커니즘의 또 다른 장점은 네트워크 중앙 집중화 문제를 해결하는 것입니다. 블록이 빠르게 생성되면 대규모 마이닝 풀이 블록 유효성 검사를 독점하기가 쉬워서 소규모 경쟁자가 쓸모없는 고아 블록을 끝없이 생성하게됩니다.

이더 리움 블록 체인의 블록 유형

이더 리움 블록 체인에는 두 가지 유형의 블록이 있습니다.

메인 체인 블록은 이더 리움 블록 체인에 포함 된 블록입니다. 그것을 발견 한 채굴자는 보상을받습니다.

삼촌 블록은 인증되었지만 메인 블록 체인에 포함되지 않는 블록입니다. 채굴자는 유효한 블록보다 이에 대해 더 낮은 보상을받습니다.

세계의 다른 지역에있는 두 명의 채굴자가 동시에 같은 블록을 채굴한다고 상상해보십시오. 그런 다음 네트워크를 통해 블록을 전파합니다. 이것은 체인에서 가능한 차이를 생성하므로 하나를 선택해야합니다. 그러면 더 큰 블록이 항상 승리합니다. 선택되지 않은 블록은 고아 (비트 코인) 또는 삼촌 (이더 리움)이됩니다. 비트 코인과 달리 이더 리움 채굴자는 삼촌 블록 채굴에 대한 전체 블록 보상의 1/8을 받게됩니다.

삼촌 블록 보상 작동 원리

메인 체인 블록의 채굴자는 삼촌 블록을 참조 할 수 있으며, 그렇게하면 메인 체인 블록의 채굴 자와 삼촌 블록의 채굴 자 모두에게 추가 보상이 분배됩니다. 메인 체인에 포함 된 각 블록은 최대 1 개의 삼촌 블록을 참조 할 수 있으며 참조 된 삼촌 당 전체 블록 보상의 32/XNUMX를 제공합니다. 그러나 삼촌 블록의 채굴 자에게 지급되는 보상은 시간이 지남에 따라 감소합니다.

낭비되는 계산 노력에 대한 보상을 보장하고 시간이 지남에 따라 보상을 줄임으로써 경쟁 체인의 채굴자는 메인 체인에 다시 참여할 동기를 부여받습니다. 이러한 삼촌 블록은 체인 보안에 기여하고 공격 가능성을 51 % 감소시킵니다.

이더 리움 채굴 풀에서는 여러 가지 방법으로 배포 할 수 있습니다.

비례 배당 체계

이 간단한 방식에서 채굴자는 풀에서 찾은 두 블록 사이의 시간 간격으로 제출 된 주식 수에 비례하여 보상을받습니다. 결과적으로 블록 보상 B는 제출 된 각각의 주식 수에 따라 풀의 N 채굴 자간에 분할됩니다.

PPLNS (Pay-Per-Last-N-Shares)

(PPLNS) 제도는 제출 된 마지막 N 주에 비례하여 보상을 분배합니다.

대기열 기반 지불 체계

Ethpool3은 대기열 기반 보상 체계를 도입 한 최초의 이더 리움 채굴 풀입니다. 이 계획에 따라 채굴자는 풀 운영자에게 제출 된 각 주식에 대해 크레딧을 축적합니다. 풀이 풀 블록을 채굴 할 때마다 블록 보상은 누적 크레딧 잔액이 가장 높은 풀의 채굴 자에게 할당됩니다. 그런 다음 상위 채굴자는 자신의 신용 잔액과 풀에서 두 번째로 높은 신용 잔액의 차이로 재설정됩니다.

참조 된 관계는 추가 민트 보상을 생성합니다. 1/32 일반 블록 소유자에 대한 전체 블록 보상의 (8 − i) / 8 삼촌을 위해. 변수 i 범위 1 ~ 6  참조의 블록 높이에 따라.

블록 체인 구조를 개선하는 것 외에도 이더 리움은 또 다른 두 가지 보안 개선 사항이 있습니다. 하나는 무작위 동점 규칙입니다. 수신 된 첫 번째 체인을 수락하는 대신 노드는 동일한 길이의 수신 된 모든 체인에서 하나의 체인을 무작위로 선택합니다. 숫자 γ는 더 이상 고정되지 않으며 경쟁 체인 수의 역과 같습니다. 다른 하나는 삼촌 채굴 전략을 송금하는 것을 목표로합니다.

삼촌 블록 및 일식 공격

일식 공격은 어떻게 작동합니까?

일식 공격은 공격자가 봇넷 호스트 노드 (각각 고유의 IP 주소를 가짐)의 테스트와 오류를 통해 피해자의 인접 노드를 해결합니다. 이를 달성하는 데 필요한 노력은 네트워크의 크기와 특성에 따라 다르지만 성공하면 공격자는 피해자가 로그 오프하고 네트워크에 다시 참여한 후 피해자의 모든 연결 노드를 제어하게됩니다.

이 시나리오에는 공격자, 피해자 및 정직한 노드의 세 가지 행위자가 있습니다. 피해자가 블록을 발견하면 공격자는이 블록을 네트워크에 전파하지 않습니다. 공격자가 블록을 발견하면 피해자와 공유합니다. 이러한 방식으로 공격자는 자신과 가려진 노드를위한 프라이빗 블록 체인을 생성합니다.

이를 통해 공격자는 정직한 채굴보다 최대 96.4 % 더 많은 것을 얻을 수 있습니다. 분산 네트워크에서는 노드가 네트워크의 다른 모든 노드에 동시에 연결할 수 없기 때문에 Eclipse 공격이 가능합니다. 대신, 효율성을 위해 주어진 노드는 다른 그룹의 선택된 그룹에 연결되며, 이들은 차례로 자신의 선택된 그룹에 연결됩니다. 따라서 고유 한 IP 주소를 가진 두 대의 컴퓨터만으로 이클립스 공격을 시작할 수 있습니다.

이더 리움은 다음과 같은 프로토콜을 기반으로하는 구조화 된 네트워크에 의존합니다. 카뎀 리아, 노드가 다른 노드에보다 효율적으로 연결할 수 있도록 설계되었습니다. 키 생성 알고리즘을 사용하여 공격자는 무제한의 노드 ID (피어 투 피어 네트워크의 식별자)를 매우 빠르게 만들 수 있습니다. 더 나쁜 것은 공격자가 임의의 노드 ID보다 피해자에게 더 매력적으로 만드는 방식으로 노드 ID를 만들어 기본적으로 피해자를 끌어들일 수 있다는 것입니다.

이더 리움은 일식 공격에 취약 할 수있는 세 가지 특성을 가지고 있습니다. 첫째, 빠른 블록 생성은 끝없는 느슨한 블록을 생성하여 이더 공급을 부풀려 정직한 채굴 자의 이익을 간접적으로 침해합니다. 둘째, 삼촌 블록 메커니즘은 노드가 이러한 블록에서 이익을 얻을 수 있음을 의미합니다. 셋째, Ethereum의 향상된 노드 연결성은 공격자에게 동기를 부여합니다.

또한 게시 : https://cryptofanalex.medium.com/

태그

Hacker Noon 가입

무료 계정을 만들어 맞춤형 독서 경험을 잠금 해제하세요.

코인 스마트. 유로파 최고의 비트 코인-보르 스
출처 : https://hackernoon.com/eclipse-attacks-and-ethereums-uncle-block-mechanism-fu1j37a4?source=rss

spot_img

최신 인텔리전스

spot_img