“이더리움이 2030년까지 도달할 수 있는 가치에 대한 패널의 예측은 크게 뒤로 미뤄졌습니다. 암호화폐 시장의 가격 상승에 대한 긍정적인 전망은 2022년 초 국제 규제가 강화되고 현재 가치가 급락하면서 큰 영향을 받았습니다.”
이더리움 트랜잭션 예측
트랜잭션(Transaction)이란, 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위.
비트코인에서 이더리움 트랜잭션 예측 거래를 하기 위해 보내는 주소, 받는 주소, 금액, 수수료 등의 정보가 작성되며 이 정보를 담는 것이 바로 트랜잭션 데이터이다.
데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질이 A.C.I.D이다.
- Atomicity (원자성)
작업이 전부 성공하거나 전부 실패해서 결과가 예측 가능해야 함 - Consistency (일관성)
트랜잭션의 이전과 이후 이더리움 트랜잭션 예측 데이터베이스의 상태는 이전과 같이 유효해야 한다 - Isolation (고립성)
모든 트랜잭션은 다른 트랜잭션으로부터 독립되어야 함 - Durability (지속성)
트랜잭션이 성공적으로 수행되면 해당 트랜잭션에 대한 기록은 영구적이어야 한다.
비트코인과 이더리움의 트랜잭션 데이터 구조 차이
비트코인과 이더리움의 트랜잭션 데이터 구조는 논스(nonce) 의 유무가 가장 큰 차이이다.
비트코인 트랜잭션 구조
필드 | 설명 |
---|---|
버전 번호 | 채굴자와 노드가 트랜잭션 처리에 사용할 규칙을 지정하는데 사용 |
입력 카운터 | 트랜잭션에 포함된 입력의 개수 |
입력 리스트 | 블록의 첫 트랜잭션은 코인베이스 트랜잭션. 입력 리스트에는 하나 이상의 트랜잭션 입력이 포함 |
출력 카운터 | 출력의 개수를 나타내는 양의 정수 |
출력 리스트 | 트랜잭션에 포함된 출력 |
로크(lock) 시간 | 트랜잭션이 유효해지는 가장 빠른 시간을 정의하는 필드 |
이더리움 트랜잭션 구조
필드 | 설명 |
---|---|
논스(nonce) | 발신 EOA에 의해 발행되어 메시지 재사용을 방지하는데 사용되는 이더리움 트랜잭션 예측 일련번호 |
가스 가격(gas price) | 발신자가 지급하는 가스의 가격 |
가스 한도(gas limit) | 트랜잭션을 위해 구입할 가스의 최대량 |
수신자(recipient) | 목적지 이더리움의 주소 |
값(value) | 목적지에 보낼 이더의 양 |
데이터(data) | 가변 길이 바이너리 데이터 페이로드 |
v, r, s | EOA의 ECDSA 디지털 서명의 세 가지 구성 요소 |
하나의 트랜잭션은 하나의 상태만 변화시킬 수 있기에 모든 트랜잭션은 일회성이다.
이더리움에서는 이 문제를 논스(nonce)값을 각 트랜잭션이 오직 한번만 처리되게 하는 카운터로 사용하여 해결한다.
논스(nonce)는 발신 주소의 속성이며, 발신 주소의 컨텍스트 안에서만 의미를 갖는다. 그러나 명시적으로 블록체인 계정 상태에 저장되지 않고 해당 주소에서 발생한 확인된 트랜잭션 건수를 세어서 동적으로 계산되는 값이 논스이다.
논스의 특징
- 거래(transaction) 전송 시 논스는 1씩 증가한다.
- 논스는 계정에서 유일하며, 동일한 논스는 존재하지 않는다.
논스는 중복되지 않고 순차적이기 때문에, 같은 논스에 여러 트랜잭션 전송이 발생하였다면 해당 논스 중 제일 높은 가스비(gas price)를 지불한 트랜잭션이 처리되어 이중 지불 문제를 방지한다.
(Example)
논스가 0인 트랜잭션 전송 후 논스가 2인 트랜잭션을 전송하면, 두 번째 트랜잭션은 어떤 블록에도 포함되지 않습니다. 이더리움 네트워크는 누락된 논스가 나타날 때까지 기다리는 동안 두 번째 논스를 멤풀(mempool)에 저장한다.
멤풀(mempool)이란, 아직 블록에 들어가지 않은 상태의 트랜잭션들이 어떤 공간에 있는 것을 의미한다.
이더리움 트랜잭션 예측
“Cryptocurrency Global Market Report 2022” from The Business Research Company provides the strategists, marketers and senior management with the critical information they need to assess the global cryptocurrency market.
This report focuses on cryptocurrency market which is experiencing strong growth. The report gives a guide to the cryptocurrency market which will be shaping and changing our lives over the next ten years and beyond, including the markets response to the challenge of the global pandemic.
Reasons to Purchase
- Gain a truly global perspective with the most comprehensive report available on this market covering 12+ geographies.
- Understand how the market is being affected by the coronavirus and how it is likely to emerge and grow as the impact of the virus abates.
- Create regional and country strategies on the basis of local data and analysis.
- Identify growth segments for investment.
- Outperform competitors using forecast data and the drivers and trends shaping the market.
- Understand customers based on the latest market research findings.
- Benchmark performance against key competitors.
- Utilize the relationships between key data sets for superior strategizing.
- Suitable for supporting your internal and external presentations with reliable high quality data and analysis
- Report will be updated with the latest data and delivered to you within 3-5 working days of order.
Where is the largest and fastest growing market for the cryptocurrency? How does the market relate to the overall economy, demography and other similar markets? What forces will shape the market going forward? “The Cryptocurrency market global report” from The Business Research Company answers all these questions and many more.
The report covers market characteristics, size and growth, segmentation, regional and country breakdowns, competitive landscape, market shares, trends and strategies for this market. It traces the market's historic and forecast market growth by geography. It places the market within the context of the wider cryptocurrency market, and compares it with other markets.
이더리움 트랜잭션 예측
엉클블록(uncle block)은 블록의 유효성은 통과되었지만 최종 블록으로 인정받지 못하여 고아블록으로 이루어진 체인의 첫 번째 블록이다. 이더리움, 하이콘 등에서는 엉클블록의 생성자도 보상을 지급하고, 이에 대한 해시도 네트워크에 포함시켜 안정적으로 네트워크를 유지한다.
개요 [ 편집 ]
블록 생성 시간은 매우 중요하다. 블록 생성이 매우 빠르면, 즉 블록 생성 난이도가 낮으면 네트워크의 보안 수준이 나빠진다. 반대로, 블록 생성이 매우 느리면, 즉 블록 생성 이더리움 트랜잭션 예측 난이도가 높으면 네트워크 보안 수준은 올라가지만, 언제 블록이 생성되는지 알기 어렵기 때문에, 트랜잭션 처리가 언제 될지 예측하기 어려운 문제가 발생하게 된다. 따라서 적절한 블록 생성 시간이 설정되어야 하는 것이다. 만약 두 채굴자가 거의 비슷한 시간에 블록을 채굴한다면 어떻게 처리해야 할까? 이더리움 네트워크는 총 블록의 채굴 난이도가 더 높은 체인을 선택한다. 그러면 채굴 난이도가 낮은 체인은 그냥 버리는게 좋을까? 이처럼 선택되지 못한 블록을 스테일 블록(stale block)이라고 하는데, 이더리움에서는 스테일 블록을 엉클 블록(uncle block)이라고 부른다. [1]
특징 [ 편집 ]
이더리움의 경우 현재 합의 알고리즘인 POW(Proof of Work, 작업 증명 방식)로 블록을 계속해서 생성하고 있다. 만약 서로 다른 채굴자가 동시에 블록을 생성하는 경우, 더 어려운 채굴 난이도와 큰 논스(nonce) 값을 가진 블록은 블록체인에 연결되고, 다른 하나는 버려지게 된다. 이 때, 버려지는 블록을 엉클 블록이라고 한다. [2]
이더리움의 엉클블록은 비트코인의 고아블록에 상당하는 것이지만, 비트코인에서는 무효화되는 고아블록이 이더리움에서는 엉클블록으로서 메인체인의 구성 요소로 다뤄지며 채굴에 대한 보상도 주어진다. 엉클블록을 통해 채굴의 효율성과 네트워크의 안정성을 높일 수 있으며, 이더리움 블록체인에 있어 엉클블록의 비율 조작은 신규 이더리움 발행빈도의 부정조작을 방지하는 의미 또한 있다.
엉클블록은 블록 생성 평균 시간이 짧아지면 자주 발생하게 된다. 왜냐하면, 채굴자가 블록을 찾아서 다른 노드에 전파시키는데 시간이 소요되고 블록 생성 시간이 짧다는 것은 채굴자들이 쉽게 퍼즐의 해답을 찾을 수 있다는 말이 되는데, 이렇게 되면 블록을 찾았다는 신호가 전달되기 전에 다른 채굴자가 새로운 블록을 찾을 수 있기 때문이다. 엉클 블록의 문제점은 트랜잭션 승인(confirmation)을 늦춘다는 것이다. 어떤 트랜잭션이 엉클블록에 속한다면, 그 트랜잭션은 승인되지 못한다. 즉 해당 트랜잭션이 포함된 블록이 이더리움 트랜잭션 예측 다시 채굴되어야 한다는 것이다. 또 엉클 블록이 자주 발생한다는 것은 엉클블록을 채굴하는데 그만큼 해시파워가 소모되었다는 것이고, 즉 해시파워가 불필요한 곳에 사용된 것이다. 이것은 평균 블록 생성 시간을 늦추게 되고, 평균 블록 생성 시간이 늦어졌기 때문에, 결국 난이도를 낮추게 되어 네트워크 보안 수준을 떨어트리는 문제까지 번진다.
이더리움은 고스트 프로토콜(이더리움 트랜잭션 예측 Ghost Protocol)이란 방식으로 이러한 엉클블록 문제를 해결한다. 즉 정상적인 블록들이 N개의 엉클블록을 가질 수 있게 함으로써, 엉클블록이 메인체인에 붙도록 한 것이다. 그렇게 되면 엉클블록도 메인체인에 속하므로, 채굴 난이도가 낮아지지 않는 효과를 가져온다. [1]
엉클블록 규칙과 보상 [ 편집 ]
엉클블록에 관한 규칙은 다음과 같다.
- 이더리움의 GHOST 구현을 통해, 블록과 함께 유효성 검사를 받는 엉클블록은 정식 블록 보상의 8분의 7, 또는 4.375 이더를 받는다.
- 블록당 최대 두 개의 엉클 블록이 허용된다.
- 두 개의 엉클 블록은 선착순으로 선택된다.
- 엉클 블록에 대해서는 트랜잭션 수수료의 징수나 지불이 이루어지지 않는다. 사용자는 유효한 블록에 이미 한 번 비용을 지불했고 명령을 실행하기 때문이다.
- 결정적으로, 보상을 받기 위해서는 엉클 블록이 지난 7블록 이내의 승자 블록과 동일한 조상을 가져야 한다. [3]
이더리움 [ 편집 ]
Ethereum은 블록체인 기술을 기반으로 스마트 계약 기능을 구현하기 위한 분산 컴퓨팅 플랫폼이다. 이더리움이 제공하는 이더(Ether)는 비트코인과 마찬가지로 암호화폐의 일종으로 거래되고 있다. 이더리움의 화폐 단위는 ETH로 표시한다. 비트코인 이후에 등장한 알트코인 중 시가 총액이 가장 높은 대표적인 알트코인이다. Ethereum의 정확한 발음은 미국식으로는 이씨리엄([iˈθɪɹiəm])이고, 영국식으로는 이씨어리엄([iˈθɪəɹiəm])이다. 이더리움은 초기에 '이시리움' 또는 '에테리움'이라고 표기하기도 하였으나, 요즘에는 '이더리움'으로 표기하는 경우가 많다. 이더리움에서 하나의 블록만이 블록체인에 올라가고 나머지 하나는 버려지게 되는데, 이 때 버려지는 블록을 엉클블록이라고 한다. 이더리움은 2015년 7월 30일 비탈릭 부테린(Vitalik Buterin)이 개발하였다. 비탈릭 부테린은 가상화폐인 비트코인에 사용된 핵심 기술인 블록체인에 화폐 거래 기록뿐 아니라 계약서 등의 추가 정보를 기록할 수 있다는 점에 착안하여, 전 세계 수많은 사용자들이 보유하고 있는 컴퓨팅 자원을 활용해 이더리움 가상 머신(EVM)을 만들고, 이 플랫폼을 이용하여 SNS, 이메일, 전자투표 등 다양한 정보를 기록하는 시스템을 창안했다. 이더리움은 C++, 자바, 파이썬, GO 등 주요 프로그래밍 언어를 지원한다. 이더리움을 사물 인터넷(IoT)에 적용하면 기계 간 금융 거래도 가능해진다. 예를 들어 고장난 청소로봇이 정비로봇에 돈을 내고 정비를 받고, 청소로봇은 돈을 벌기 위해 정비로봇의 집을 청소하는 것도 가능해진다.
이더리움에서 스마트 계약을 처리하기 위한 가상 머신(EVM)은 모든 형태의 알고리즘을 처리할 수 있는 튜링 기계로서, 먼저 들어온 데이터를 우선적으로 처리하는 스택 구조를 가진다.EVM은 저수준의 기계어에 가까운 바이트 코드만을 실행할 수 있기 때문에 고급 프로그래밍 언어를 실행하기 위해서는 바이트 코드로 컴파일 과정을 거쳐야 한다. 이 가상 머신을 이용하기 위해서는 '가스'라는 대가를 지불해야 한다. [4]
메인체인 [ 편집 ]
메인체인(main chain)은 제네시스블록부터 가장 최근의 블록까지 연결되어 있는 체인이다. 최장체인 또는 주요체인이라고도 부르며 가장 많은 해시파워가 투입되는 체인에 그 다음 블록이 연결된다. 네트워크 전파 속도 차이로 인해 하나의 체인으로 수렴하기 전에 같은 블록을 채굴하는 경우가 종종 발생하며 이는 분기, 즉 포크 를 유발한다. 동시 채굴이라는 용어는 정확히 같은 순간에 채굴에 성공했다는 개념이 아니며, 모든 노드들에게 블록이 전파되기 전, 같은 블록에 있어서 다른 노드에 의해 채굴이 완성되면 포크가 생겼다고 볼 수 있다. [5]
작업증명방식(POW) [ 편집 ]
작업증명(PoW, Proof of Work)은 블록체인 상의 대표적 알고리즘이다. 목표값 이하의 해시를 찾는 과정을 무수히 반복하면서 해당 작업에 참여했음을 증명하는 방식의 합의 알고리즘을 말한다. 작업증명 과정은 보통 마이닝(채굴)을 통해 이뤄진다. 암호화폐 2대 대장주인 비트코인과 이더리움이 PoW 방식을 사용하고 있다. 비트코인 계열의 라이트코인, 비트코인캐시, 비트코인골드, 시아코인 등도 PoW의 대표 암호화폐며 익명성을 보장받는 다크코인 계열인 모네로, 지캐시 등도 PoW 방식을 이용한다.PoW 개념은 지난 1993년 신시아 더크(Cynthia Dwork)와 모니 나노어(Moni Naor)가 처음으로 고안되었다. 이후 마커스 제이콥슨(Markus_Jakobsson)과 아리 쥬엘스(Ari Juels)가 1999년 Proof of Work라는 명칭을 사용하면서 널리 알려되어 진다. 앞서 1997년 아담 백(Adam Back)이 개발한 해시캐시가 PoW를 적용한 사례이지만 큰 성과를 보진 못했다. 해시캐시는 대량 발송의 스팸메일을 차단하기 위해 만들어진 일종의 암호화폐이다.
이메일을 보낼 때 우표 대신 해시캐시를 지불하게 한 것이다. 이는 스팸메일을 대량으로 보내기 위해선 해시캐시를 모두 지불해야 하기 때문에 시간과 비용에 큰 부담이 들 수밖에 없고 결국 스팸메일 발송을 포기하게 된다는 아이디어이다. 해시캐시를 받기 위해선 컴퓨터 연산 과정을 통한 일정한 해시(hash)를 찾는 PoW 과정을 거쳐야만 한다. PoW의 특징은 수많은 반복 연산을 수행해 특정 해시값을 찾도록 하면서 대량 메일 발송 자체를 어렵게 하고 있다. 해시캐시는 상업적으로 크게 성공하지 못했지만 결국 2009년 사토시 나카모토가 개발한 비트코인의 결정적 아이디어로 작용하는 역사의 한 페이지를 장식하게 된다. PoW는 암호화폐 시장성 측면에서 최소 가격대 형성을 이룰 수 있게 하고 보안성이 매우 높다는 장점을 가지고 있다. 일명 ‘51% 공격’을 손쉽게 방어할 수 있는 뛰어난 보안성을 자랑한다.
51% 공격이란 공격자가 위변조 등 악의를 가진 행위를 벌이더라도 51% 이상의 컴퓨팅 파워를 확보해야만 성공할 수 있다는 의미이다. 현실적으로 작업증명(PoW) 방식에서 51% 이상을 획득하는 것은 천문학적 비용이 발생할뿐더러 매우 많은 시간을 필요로 하기 때문에 현실적으로 불가능하다. 그러나 높은 채굴 난이도에 개인 채굴자는 채굴을 전혀 할 수 없는 수준까지 이르자 이를 위해 연산에 필요한 고사양 장비를 도입하게 되는 문제점을 일으키고 있다. 과도한 전력소모로 에너지 낭비가 심각한 사회문제까지 대두되고 있다. [6]
활용 [ 편집 ]
DAG와 논스 [ 편집 ]
각 노드는 현재의 블록을 유효하게 만들 수 있는 논스를 찾아내는 추측을 반복하게 된다. 그리고 올바른 논스를 찾는 데 성공하면 블록 보상을 획득하게 되며, 찾아내지 못하면 네트워크의 다른 노드가 승자 블록을 찾았다는 소식을 들을 때까지 계속 논스 추측을 반복한다. 다른 노드가 승자 블록을 찾으면, 노드는 채굴 중이던 블록을 버리고 새로운 블록을 다운로드한 다음 그 위에서 다음 블록을 채굴하기 시작한다. 하지만 추측 게임을 위한 매개변수 역시 받게 되며, 다음 블록을 찾기 수월한 일종의 주사위 이더리움 트랜잭션 예측 이더리움 트랜잭션 예측 쌍을 받게 된다. 이 추측 게임은 개별 노드가 시스템보다 한 수 앞서서 채굴 보상을 쉽게 얻어 가지 못하게 하는 방식으로 설계되어 있다. 따라서 DAG 파일을 작업 증명 알고리즘의 풀이 시간(solution time)을 표준화하는 방법이라고 할 수 있다. DAG 파일은 채굴 경쟁을 평준화하며, 나아가서 대용량의 컴퓨팅 성능으로도 경쟁자보다 훨씬 정확한 논스를 추측할 수 없도록 해서 15초의 블록 시간이 유지되도록 한다. 노드는 추측에 사용하는 모든 데이터를 블록체인 자체에서 가져온다. 암호화 과정에서 암호 시드(seed)를 사용하면 의사 난수를 생성하고, Ethash 알고리즘이 생성한 암호화 출력의 임의성을 높일 수 있다. 이더리움과 비트코인에서는 각 노드가 마지막으로 알려진 승자 블록의 해시를 보고 시드를 얻는다. 이와 같은 방식으로 각 노드는 공정한 게임 진행을 위해 올바른 정식 체인 위에서 채굴을 진행할 수밖에 없게 된다. 잘못된 블록(엉클 블록)에 대한 작업 증명을 수행하면 승자 블록을 얻을 수 없다. 덕분에 누군가가 작업 증명 방식의 허점을 노려 대규모 채굴 풀을 통해 이더를 빼돌리는 가짜 블록을 계속 쌓기가 매우 어렵다. 노드가 실제로 PoW 추측 게임을 수행하는 과정은 다음과 같다.
- 채굴 노드는 블록 헤더에서 파생된 암호화 시드로부터 16MB의 의사 난수 캐시를 생성한다.
- 캐시는 노드 사이에 일관성이 유지되는 대규모 1GB 데이터셋을 생성하는 데 사용된다. 이것이 DAG다. 이 데이터셋의 크기는 시간이 지남에 따라 선형적으로 이더리움 트랜잭션 예측 증가하며 모든 전체 노드에 저장된다.
- 논스를 추측하려면 컴퓨터가 DAG 데이터셋의 임의의 조각을 잡고 함께 해시해야 한다. 이것은 해시 함수에 솔트를 사용하는 방식과 유사하다.
암호학에서 단방향 해시 함수에 첨가하는 임의의 데이터를 솔트(salt)라고 부른다. 솔트는 논스(nonce)와 마찬가지로 무작위성을 늘리는, 즉 보안을 강화하는 역할을 한다. [3]
빠른 블록 생성 [ 편집 ]
이더리움의 구성 요소 중 비트코인 패러다임을 수정한 부분은 모두 빠른 블록 시간을 실현하기 위한 수정이었다. 3~5초 정도의 블록 시간이 가능하다는 점은 수학적으로 입증되었다. 비트코인과 이더리움의 블록 시간은 트랜잭션을 수집하기 위한 시간이다. 왜냐하면 이 시스템이 인체가 향상성을 유지하려고 하는 것처럼 블록을 가능한 한 이상에 가깝게 유지하기 때문이다. 비트코인 프로토콜은 10분의 블록 시간을 목표로 하며, 이더리움은 15초를 목표로 한다. 진짜 블록이 발견되면 다른 노드가 그 블록을 발견하기 전까지 약간의 시간이 걸린다. 이 시간 동안, 엉클블록을 버리고 새로운 블록 위에서 채굴하기 전까지는 새로운 블록에 대한 합의가 아닌 경쟁이 일어나며, 그 결과 고아 블록에 소비된 에너지는 낭비된다. 채굴자가 대기 시간으로 인해 진짜 블록에 대한 정보를 전달받는 데에 평균 1분이 소요되고, 새 블록이 10분마다 발생하면 전체 네트워크는 해시파워의 10%를 낭비하는 셈이다. 블록 사이의 시간을 길게 하면 이러한 낭비를 줄일 수 있다. 일부 블록체인 이론가들의 견해에 따르면, 나카모토 사토시가 이 비율을 선택한 이유는 이 정도 에너지 낭비를 허용 가능한 수준으로 보았기 때문이라고 한다. 이더리움은 블록 시간을 단축한 덕택에 더 빠른 트랜잭션 확인이 가능해졌지만, 대가로 빠른 블록 시간에 따른 보안성의 감소를 해결하기 위한 프로토콜 안에서의 대안을 마련해야 했다. 사용자 경험의 관점에서 볼 때 빠른 블록 시간이 가지는 이점은 이미 논의했다. 그러나 빠른 블록 시간은 바람직하지 않은 영향도 줄 수 있다. 현실적인 문제는 노드가 전 세계에 위치하고 있기 때문에 완벽하게 동기화되기 어렵다. 아무리 빠른 인터넷 속도를 가진 세계라 하더라도 현재의 기술력으로는 아직 정보가 노드에서 노드로 인터넷을 통해 이동하는 데 시간이 걸리기 때문이다. 이 시간을 대기 시간(latency)라고 부른다. 그리 긴 시간이 아닐 수도 있지만, 트랜잭션 기록 사이의 잔고 내역이 일치하지 않은 충돌을 일으키기에는 충분한 시간이다. 이더리움 또는 비트코인 네트워크를 통해 트랜잭션이 전파되는 데에는 평균적으로 약 12초가 걸린다. 실제로 이 시간의 상당 부분은 노드가 트랜잭션을 다운로드하는 데 소비된다. 노드는 새로운 블록 발견 소식을 듣기 전에 이전의 블록 위에서 채굴을 계속하고, 새 승자 블록이 나타나면 채굴하던 블록을 버리게 된다. 앞에서 설명한 것처럼, 유효한 블록이 네트워크의 다른 위치에서 발견된 후에도 계속 채굴되는 엉클 블록은 실효 블록(stale block), 또는 폐지 블록(extinct block)이라고 부른다. 블록 시간이 빨라지면 실효(효력을 잃는) 블록이 발생할 확률이 높아지고, 실효 블록이 많을수록 네트워크는 공격에 취약해진다. 더 큰 문제는, 실효 블록의 비율이 높을수록 채굴 풀이 단독 채굴자보다 효율성 측면에서 큰 이점을 가지게 되고 채굴 보상을 독점할 가능성이 커진다는 점이다. 시스템이 불공평해진다는 점을 차치하고서라도, 악의적인 공격자가 네트워크 공격에 필요한 비용이 줄어든다는 큰 문제가 생기게 된다. [3]
종류 [ 편집 ]
고아블록 [ 편집 ]
고아블록(orphan block)은 두 개의 블록이 동시에 승인되었을 때 메인체인으로 연결되지 못해 따로 떨어져 존재하는 블록을 말한다. 스테일블록(stale block)이라고도 한다. 고아블록에도 승인된 거래내역은 담겨져 있기 때문에 트랜잭션이 유실되지는 않는다. 고아블록은 두 명의 채굴자들이 비슷한 시기에 블록을 생성할 때, 혹은 해커가 거래를 교란시키기 위한 공격을 시도할 때 생성된다.
채굴자들은 컴퓨팅 파워만 있다면 누구든지, 언제든지 블록 채굴작업에 참여할 수 있다. 전체 네트워크에 있는 수많은 채굴자들이 블록 채굴작업에 참여하기 때문에, 일정한 시간 간격을 두고 한 두 개의 블록만 채굴할 수 있도록 난이도가 자동으로 조정된다. 따라서 네트워크 내에 있는 두 노드가 동시에 블록을 채굴할 가능성은 매우 낮다. 만약 두 노드가 동시에 블록을 채굴하여 블록체인의 분기가 일어났다고 해도, 한 번 더 두 개의 블록이 동시에 생성될 확률은 적으므로 메인체인은 계속해서 길어지고 더 이상 길어지지 못하고 현재 길이를 유지하는 엉클체인이 생성된다. 결국 길이가 더 긴 메인체인에 더 많은 데이터가 들어있다고 판단되어 엉클체인은 버려지게 된다. 평균적으로 분기가 일어났을 때 2~3개의 블록이 추가된 후에 블록체인의 분기가 해결된다고 한다. 이 엉클체인에 포함된 블록을 고아블록이라고 한다. [7]
고아블록과 엉클블록의 차이점 [ 편집 ]
블록체인에서 블록이 생성될 때 우연히 동시에 블록이 생성되어 블록체인이 분기(Fork) 경우가 있다. 이때 블록체인은 무엇을 메인 체인으로 볼 것인가 하는 것을 결정하게 되는데, 비트코인의 경우는 길이가 가장 긴(더 긴 블록체인을 완성한) 체인이 메인 체인으로 인정받아 계속해서 이어지게 된다. 이때 생성되었지만 메인 체인에 포함되지 못한 블록을 고아 블록이라고 한다. 반면 이더리움의 경우 이러한 메인체인 선택의 문제에서 고스트 프로토콜을 적용하게 된다. 고스트 프로토콜이란 이더리움 블록체인에서 동시에 블록이 생성될 경우 어느 것을 메인 체인으로 볼 것인지를 결정하는데 필요한, 약속된 규약이라고 할 수 있다. 앞서 말했듯이 보통 가장 길이가 긴 블록체인을 메인 체인으로 삼지만 이더리움의 고스트 프로토콜에 따르면 메인체인이 아닌 엉클블록에게도 보상을 지급(일반 블록 채굴의 93.75% 수준)하며, 메인체인에 엉클 블록을 포함시킨 채굴자는 일종의 트랜젝션 수수료로 일반 채굴 보상의 3.125%의 추가 보상을 받을 수 있게 된다. 이처럼 이더리움의 고스트 프로토콜에 따르면 단순히 블록의 길이가 가장 긴 체인이 메인체인이 되는 것이 아니라 분기된 같은 경로 상에 있는 엉클 블록(최대 2개)까지 다 합쳤을 때 가장 많은 블록을 포함하고 있어 가장 무거운 체인을 메인 체인으로 삼게 된다. 이렇게 되면 엉클블록들이 발생되더라도 메인체인을 일관되게 이어나갈 수 있고 엉클 블록을 생성한 사람에게도 보상을 줄 수 있으며 단순히 길이가 긴 체인을 선택하는 것에 비해 더 많은 블록을 포함한 무거운 체인을 빠르게 선택하므로 메인체인을 선택하는 시간을 줄여 안정적으로 이어나갈 수 있게 된다고 할 수 있다. 결론적으로 고아블록, 엉클블록이 생성되었을 때 비트코인과 이더리움 블록체인이 메인체인을 선택하는 방법의 차이로 인해 이런 차이점이 생긴다고 할 수 있다. [8]
문제점 [ 편집 ]
블록 생성에 성공하고 검증에 문제가 없어 이더리움 네트워크를 통해 다른 노드들에게 브로드캐스팅은 되었으나 다른 채굴자가 생성한 다른 블록에 비해 난이도가 낮아 블록체인에 등록되지 못한 블록을 엉클 블록(Uncle Block)이라고 합니다. 비트코인은 고아 블록이라고도 말한다. 이러한 엉클 블록이 많아질 경우 여러가지 문제가 발생하게 된다.
가령, 두 명의 채굴자가 거의 동시에 블록을 채굴 할 때 생성된 블록에는 서로 다른 트랜잭션들이 포함되게 된다. 따라서 정상 블록에 포함된 트랜잭션은 처리가 되지만 엉클 블록 내에 트랜잭션들은 즉시 처리되지 않는다.
두 개의 블록이 거의 같은 시간에 생성 될 경우 블록체인은 두 개의 체인으로 분리되고 이 중에서 길이가 더 긴 체인을 정상으로 등록하게 된다. (비트코인의 분기와 같음) 길이가 짧은 다른 체인은 엉클 블록을 포함한 체인이 되고, 이후 엉클 블록체인 뒤에 연결된 블록들은 모두 엉클 블록이 된다. 결국, 엉클 블록의 짧은 체인의 생성 과정은 불필요한 해시 계산을 위한 컴퓨팅 파워를 쓴 셈이 되는 것이다.
엉클 블록 생성 후 다음 블록을 생성하면 평균 블록 생성 시간이 더 길어지기 때문에 블록 생성 후 난이도가 줄어들게 된다. 난이도가 줄면 블록 타임이 줄어들고 컴퓨팅 파워가 큰 채굴자의 영향력이 커지는 문제가 밸생한다. 또한, 엉클 블록 비율이 너무 높을 경우 블록체인의 폭이 넓어지고, 자칫 컴퓨팅 파워가 강한 채굴자에 의해 블록체인이 악의적으로 변경되는 등의 문제가 발생 할 수 있다. [9]
대안 [ 편집 ]
고스트 프로토콜 [ 편집 ]
위에 엉클 블록에 의해 발생되는 문제점들을 이야기 해보았는데 그렇다면 이러한 엉클 블록에 대해서 어떻게 해결할 수 있을까? 이더리움은 엉클 블록의 문제를 고스트(Ghost, Greedy Heaviest Observed Subtree) 알고리즘을 사용하여 해결하였다. 고스트 프로토콜은 블록들을 트리 형태로 생성하여 해당 블록의 부모블록, 조상블록 그리고 자손블록까지 블록의 가중치 값을 계산하여 블록의 길이를 정한다. 이렇게 트리 형태의 블록체인이 형성되면 단일 형태로 생성된 악의적인 블록의 선택을 방지할 수 있고 정보의 무결성을 보장할 수 있을 뿐만 아니라 네트워크의 보안 손실을 방지할 수 있다. 고스트 알고리즘은 블록 생성 시 정상 블록에 최대 2개의 엉클 블록까지 추가하고 보상하여 엉클 블록의 문제점을 해결하게 된다. 다음은 이더리움에서 사용하는 고스트 알고리즘에 대한 설명이다.
- 하나의 블록은 반드시 하나의 부모 블록을 지정하며, 0 또는 그 이상의 엉클블록을 지정한다. 현재는 최대 엉클 블록은 2개까지 지원한다.
- 블록 A에 포함된 엉클 블록은 다음과 같은 속성을 갖는다.
- 블록 A의 k번째 조상의 직접적인 자손이어야 한다. 여기서 2
- 블록 A의 조상이어서는 안된다.
- 엉클 블록은 반드시 유효한 블록헤더를 가지고 있어야하지만 미리 검증되거나 유효한 블록일 필요는 없다.
엉클 블록의 채굴자는 일반 블록 생성 시에 받는 보상의 93.75%를 보상으로 받고, 엉클 블록이 포함된 정상 블록의 채굴자에게는 3.125%의 추가 보상을 지급합니다. 참고로, 엉클 블록 내에 포함된 트랜잭션은 처리되지 않기 때문에 수수료 는 엉클 블록 채굴자에게 지급되지 않으나, 비잔티움 버전의 경우 엉클 블록의 채굴자는 해당 엉클 블록을 포함한 정상 블록과 블록 번호 차이에 따른 상대적인 엉클 블록 보상을 받게 된다.
- 블록 채굴자의 보상: 블록 보상(3이더) + 트랙잭션 수수료 + 엉클 블록 1개당 블록 보상의 3.125%(최대 2개)
- 엉클 블록 채굴자의 보상: (8 - (정상 블록 번호 - 엉클 블록 번호)) / 8 * 블록 보상 [9]
중계망 활용 [ 편집 ]
이더리움의 엉클블록은 정상 블록은 아니지만 거의 비슷하게 채굴자들이 보상을 받지만 그럼에도 불구하고 엉클블록을 줄이는것이 효율성을 더 높여준다고 중계망을 활용하기도 한다. 이더리움의 고스트 프로토콜에 따르면 단순히 길이가 긴 체인을 선택하는 것에 비해 더 많은 블록을 포함(엉클블록까지)한 무거운 체인을 메인 체인으로 선택하게 된다. 그런데 엉클 블록까지 포함하여 블록을 이어나가는 것도 좋지만 그것보다 더 좋은 것은 애초에 엉클블록이 발생되지 않도록 그 확률을 줄이는 것이라고 할 수 있다. 그렇기 때문에 릴레이 네트워크, 즉 중계망을 통한 엉클 블록의 생성을 줄이는 방법이 제안되기도 한다. 이 중계망은 블록의 생성 여부에 대한 정보를 빠르게 전달해 주는 역할을 한다. 지금은 블록 생성이 되고 그것이 노드들에게 전파되고 그 노드가 또 다른 노드들에게 전파하는 방식으로 이루어진다고 할 때 중계망이 있어 블록 생성에 대한 정보를 각 마이닝 노드나 풀노드에게 빠르게 전달해 줄 수 있다면 엉클 블록의 생성이 줄어들 수 있게 되는 것이다. 예를 들어 강원도에서 산불이 일어났다고 할 때 방송국에서 그 현장에 있는 사람과 직접 연락할 방법이 없다면 입에서 입으로 전달되는 정보, 인터넷에 올라온 글이나 사진 등을 찾아서 정보를 느리게 전달할 수 밖에 없고 그 정보가 맞는 것인지 확인하기도 어려울 것이다. 하지만 만약 방송국이 중계차와 기자를 사건 현장으로 파견한다면 어떻게 될까? 사건 현장과 방송국 사이에 위치하는 중계차가 빠르게 정보를 제시함으로써 잘못된 정보를 전달할 수 있는 위험이나 최신 정보를 전달하지 못하는 한계를 극복할 수 있게 될 것이다. 이와 마찬가지로 이더리움이 중계망을 운영하게 되면 블록 생성에 대한 최신 정보가 빠르게 전달될 수 있기 때문에 엉클 블록의 생성이 줄어들 수 있다. [10]
각주 [ 편집 ]
- ↑ 1.01.1 etainclub, 〈[Smart Contract 개발 #8 이더리움 핵심 개요 정리 2]〉, 《steemit》
- ↑ 〈엉클 블록〉, 《토큰 포스트》
- ↑ 3.03.13.2 브이핏,〈엉클 블록, PoW과 PoS〉, 《네이버 블로그》, 2018-06-07
- ↑ 〈이더리움〉, 《위키백과》
- ↑ 〈메인체인〉, 《해시넷》
- ↑ 강희영 기자,〈[암호화폐 초딩 작업증명(PoW) 방식이란?]〉, 《CBC NEWS》, 2019-06-03
- ↑ 〈고아블록〉, 《해시넷》
- ↑ erc20,〈이더리움의 비정상적으로 생성된 엉클블록이란 무엇 인가요?〉, 《아하》, 2019-07-24
- ↑ 9.09.1 〈고스트 프로토콜〉, 《해시넷》
- ↑ erc20,〈엉클블록을 줄이기 위한 중계망은 어떻게 사용되나요?〉, 《아하》, 2019-05-27
참고자료 [ 편집 ]
- 이재운 기자, 〈국산 블록체인 ‘하이콘’, 고스트프로토콜로 채굴 효율성-안정성↑〉, 《이데일리》, 2018-11-05
- 박재균 기자, 〈‘하이콘’, 고스트프로토콜로 채굴 효율성-안정성 높인다〉, 《파이낸스투데이》, 2018-11-05
- 김형중 교수, 〈(김형중 칼럼) 엉클 마이닝〉, 《코리아아이티타임즈》, 2017-10-13
- etainclub, 〈[Smart Contract 개발 #8 이더리움 핵심 개요 정리 2]〉, 《steemit》
- 〈메인체인〉, 《해시넷》
- 〈이더리움〉, 《위키백과》
- 강희영 기자,〈[암호화폐 초딩 작업증명(PoW) 방식이란?]〉, 《CBC NEWS》, 2019-06-03
- 〈엉클 블록〉, 《토큰 포스트》
- 브이핏,〈엉클 블록, PoW과 PoS〉, 《네이버 블로그》, 2018-06-07 이더리움 트랜잭션 예측
- erc20,〈엉클블록을 줄이기 위한 중계망은 어떻게 사용되나요?〉, 《아하》, 2019-05-27
- 〈고스트 프로토콜〉, 《해시넷》
- 〈고아블록〉, 《해시넷》
- erc20,〈이더리움의 비정상적으로 생성된 엉클블록이란 무엇 인가요?〉, 《아하》, 2019-07-24
같이 보기 [ 편집 ]
이 엉클블록 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.
레이어2 블록체인 – 크립토의 다음 단계를 가져오다
Qredo는 자체 레이어2 블록체인에 탈중앙화 MPC(multi-party computation)를 결합해 디지털 자산 투자자들에게 근본적이고 새로운 인프라를 제공합니다.
레이어2 블록체인은 정확히 무엇이며, 저희는 무엇때문에 내년에 레이어2 블록체인의 빠른 성장을 예측 하고 있을까요?
크립토에 대해 배우는 사람들을 위해 작성된 이 글에 서는 레이어2가 무엇이고, 무엇때문에 블록체인의 미래에 중요한지 설명합니다.
BTC와 ETH 같은 주 암호화폐의 가격은 2021년에 사상 최고치로 치솟았고, 대체불가능 토큰의 혁신은 투자 열풍을 일으켜, 많은 사람들이 주목하고, 참여했습니다.
그러나 새로운 사용자의 갑작스러운 유입, 활동 및 트랜잭션의 급격한 증가로 인해 네트워크의 트랜잭션 처리 및 확정 능력에 부담이 가해지는 근본적인 문제를 이더리움 트랜잭션 예측 다시한번 상기시켰습니다.
이더리움과 같은 기관 및 개인 거래자에게 가장 친숙하고 있기 있는 블록체인은 네트워크상의 자산 유지, 마이닝 및 거래에 관련된 수백만 명의 주주들 에게 보안 및 탈중앙화를 약속합니다.
이에 따른 문제 또한 발생합니다. 즉, 점점 더 많은 트랜잭션이 검증을 위해 네트워크로 전송되고, 트랜잭션을 확인하는 데 걸리는 시간이 증가함에 따라 해당 정보를 보내고 받는 시간 및 수수료가 증가하게 됩니다.
블록체인 확장성 문제
블록체인 확장성 문제 또는 확장성 트릴레마(scalability trilemma) : 안전성 및 탈중앙화의 펀더맨털을 유지하기 위해 트랜잭션을 처리하는 것은 점점 더 어려워지고 많은 비용을 요구합니다.
예를 들어, NFT를 발행하고 거래하는데 사용되는 가장 인기 있는 블록체인 중 하나인 이더리움에서 네트워크가 NFT를 보유하고자 하는 사용자들로 과부하가 걸리면서, 특정 경우에는 가스 요금(트랜잭션 비용)이 각각 1,000달러까지 상승한 경우도 존재합니다.
이 문제를 해결하기 위해 기본 블록체인 또는 ‘레이어1’ 블록체인과 상호 작용하는 보완 인터페이스로 설계된 ‘레이어2’ 솔루션을 개발하여 확장성과 관련된 일부 문제를 개선합니다.
그럼, 레이어2 솔루션은 무엇이고 크립토 시장이 확장성 문제를 해결하는 데 어떻게 도움이 될 수 있을까요?
레이어2 블록체인 이란?
많은 이용자들에게 가장 친숙한 블록체인은 비트코인, 이더리움, 라이트코인 또는 카르다노와 같은 ‘레이어1’ 프로토콜 입니다.
레이어1 은 블록체인 세계의 기본 레이어를 나타내며 이는 크립토 자산과 관련된 탈중앙화 생태계에서 개인 지갑의 발행, 거래, 저장될 수 있도록 하는 기본 인프라 입니다.
‘레이어2’ 블록체인은 레이어1에서 작동하지만 레이어1 체인에서 발견되는 확장성과 비용 문제를 해결하기 위한 추가적인 네트워크로 생각하면 됩니다.
레이어2 솔루션에는 몇 가지 유형이 있습니다:
● 중첩 블록체인(Nested Blockchain)
기존 네트워크의 또 다른 레이어로 기능하면서 사용자의 트랜잭션의 일정 부분을 처리하는 데 도움이 되는 완전한 두 번째 체인입니다.
● 상태 채널(State Channel)
기본적으로 두 사용자 간의 커뮤니케이션을 위한 양방향 채널로서 내부적으로 공유된 트랜잭션의 기록을 요약하고, 지정된 참가자들만 이용할 수 있습니다. 이후 채널이 닫히면 트랜잭션 내역이 레이어1 체인에 업로드 되는데, 이는 메인 블록체인에 한건의 트랜잭션만 전송되는것을 뜻하며, 따라서 확인에 소요되는 비용과 시간을 줄이는 것에 도움이 됩니다.
● 사이드체인(Side Chain)
이름에서 알 수 있듯이 사이드체인은 메인 블록체인과 함께 작동하지만 거래를 확인하기 위해 자체적인 합의 메커니즘을 사용합니다. A사이드체인은 레이어1 플랫폼에 브릿지로 연결되며, 신뢰할 수 있는 당사자 간의 반복적인 거래를 편리하게 사용할 수 있습니다.
● 플라즈마 및 옵티미스틱 롤업(Plasma & Optimistic Rollups)
이 두 솔루션 모두 기본 레이어 1 블록체인의 트랜잭션을 다른 형태의 사이드체인으로 이동하여 작동하며, 신뢰할 수 있는 당사자(trusted party)에게 네트워크에 저장된 정보가 사실인지 확인 할 수 있는 권한이 생깁니다. 주요 차이점은 플라즈마 롤업은 개별 토큰 또는 자산에 사용되는 반면 옵티미스틱 롤아웃(Optimistic rollout)은 스마트 컨트랙트로 작동한다는 점이 가장 큰차이점 입니다.
●Zero-Knowledge Rollups
ZK- Rollups은 감독의 필요성을 없애고 zero-knowledge proof을 사용하여 메인체인에 정보를 저장하고 게시함으로써 플라즈마 및 옵티미스틱 롤업의 공통된 주요 단점 중 하나를 해결합니다.
크립토에 레이어2 블록체인이 필요한 이유는 무엇입니까?
2021년 크립토 시장의 급속성장하기 전에는 사용 가능한 레이어2 블록체인 솔루션이 거의 없었습니다.
이용자가 증가하고 네트워크와 사용자의 부담이 커지면서 생태계 발전을 돕고, 높은 비용과 대기 시간 없이 보다 쉽고 저렴하고 안전하게 거래할 수 있도록 하는 레이어2 플랫폼들이 더 많은 관심을 받게 되었습니다.
레이어2는 속도와 확장성에 맞춰져 있지만 특별한 셀링포인트를 가질 수 있습니다. 예를 들어 비트코인에서 라이트닝 네트워크는 빠른 트랜잭션이 가능하도록 하는 것을 목표로 하고 루트스탁은 정교한 스마트 컨트랙트(smart contract) 기능을 제공하고자 합니다.
Qredo와 같은 다른 제품은 여러 블록체인에서 탈중앙화 커스터디(decentralized custody) 및 세틀먼트(settlement)를 가능하게 합니다.
최고의 블록체인 확장 솔루션
이 문제를 해결하기 위해 비트코인캐시 체인의 블록 크기를 늘리는 등 몇가지 해결책이 지속적으로 나오고 있지만 시장이 확대되면서 대안이 필요하다는 것은 분명합니다.
이용자 수와 거래 건수가 계속 증가할 것으로 예상되는 상황에서 암호화폐 업계에 근본적인 블록체인 아키텍처와 상호작용하고, 규모에 맞는 보다 실용적인 사용자 경험을 제공할 수 있는 기능의 레이어2 솔루션 도입이 시급하다는 것은 분명합니다.
NFT, 게임과 같이 현재 가장 인기 있는 블록체인의 몇몇 사용 사례는 현재의 트랜잭션 시간과 비용적인 측면을 고려했을 때, 효과적인 실현이 불가합니다.
레이어 2 솔루션을 사용하면, 데일리 베이스의 크립토와 상호작용하는 수많은 유저들을 위한 다양한 이슈들을 즉시 효과적으로 해결할 수 있습니다.
애널리스트들은 수요가 크게 감소함에 따라 이더리움에 대해 이것을 예측합니다.
거시적 요인은 암호화폐 자산의 수행 능력을 강하게 압박해 왔습니다. 따라서 가격에 계단식 효과가 발생합니다. 예를 들어, 두 번째로 큰 암호화폐 에테르 지난 주에 거의 5% 하락했고 $3,000선 아래로 떨어졌습니다. 자산은 11월에 사상 최고치를 기록한 이후 가치가 거의 40%나 떨어졌습니다. 따라서 많은 분석가들이 이전에 가지고 있던 낙관적인 관점을 재고하도록 합니다.
사실 Finder.com의 가장 최근 이더리움 가격 예측은 보고서 “훨씬 더 약세다.” 흥미롭게도 분석가들은 이전 예측과 비교할 때 가격 기대치를 크게 낮췄습니다. 흥미롭게도 10월 보고서는 ETH가 2021년 말까지 5,144달러에 이를 것으로 예측했습니다. 그러나 1월 두 번째 설문조사 당시 ETH는 그 가격대보다 훨씬 낮았습니다.
분석가들은 이제 ETH의 연말 가격이 6,500달러가 될 것으로 예상하고 있으며 2025년에는 10,810달러, 2030년에는 26,338달러가 목표로 설정되어 있습니다.
“이더리움이 2030년까지 도달할 수 있는 가치에 대한 패널의 예측은 크게 뒤로 미뤄졌습니다. 암호화폐 시장의 가격 상승에 대한 긍정적인 전망은 2022년 초 국제 규제가 강화되고 현재 가치가 급락하면서 큰 영향을 받았습니다.”
예를 들어 CoinFlip의 설립자 Daniel Polotsky는 ETH 가격이 2022년 말까지 4000달러에 이를 것이라고 생각합니다. 첫째, 경쟁업체의 풍부한 성능 때문입니다. 또한 ETH의 현재 유틸리티는 폴리곤과 같은 레이어 2 솔루션의 성공에 달려 있으며 Daniel은 ETH에서 많은 가치를 얻을 것이라고 믿습니다. 이 전망은 지난 1년 동안 두 자산의 가격 상승을 보면 어느 정도 신빙성을 가질 수 있습니다. 폴리곤의 매틱 이 기간 동안 ETH의 62% 상승에 비해 약 1394% 상승했습니다.
Polygon은 2021년 이더리움 생태계의 필수적인 부분이 되었습니다. MATIC은 자체적으로 분기하기 시작했으며 분석가는 앞으로 ETH와 경쟁할 수 있다고 우려하고 있습니다.
이더리움의 높은 거래 수수료가 최근 하락했습니다. 실제로 지난 2월 13일에는 지난해 7월 이후 최저치를 기록했다. 모든 부정적인 이유에도 불구하고. Santiment에 따르면 이번 수수료 하락은 최근 ETH가 직면한 가격 하락으로 인한 것입니다. 또한 ETH 거래에 대한 수요가 계속해서 감소했기 때문입니다.
마찬가지로 최근 네트워크에서 대규모 토큰 보유자가 크게 감소한 것으로 나타났습니다. 이는 ETH 대규모 보유자가 네트워크를 대량으로 이탈할 수 있음을 나타냅니다. 1,000 ETH가 넘는 주소는 2018년 이후 최저치를 기록하고 있습니다. 따라서 가격 하락이 고래 덤핑을 동반하고 있음을 나타냅니다.
0 개 댓글