본문 바로가기

블록체인18

[Ethereum] 엉클블록과 고스트 프로토콜 이번에는 이더리움의 엉클블록과 고스트 프로토콜에 대해서 알아보겠습니다. 엉클블록 블록 생성에 성공하고 검증에 문제가 없어 이더리움 네트워크를 통해 다른 노드들에게 브로드캐스팅은 되었으나 다른 채굴자가 생성한 다른 블록에 비해 난이도가 낮아 블록체인에 등록되지 못한 블록을 엉클 블록(Uncle Block)이라고 합니다. 비트코인은 고아 블록이라고도 말하는데요. 이러한 엉클 블록이 많아질 경우 여러가지 문제가 발생하게 되는데, 첫번째, 트랜잭션을 지연시킨다. 가령, 두 명의 채굴자가 거의 동시에 블록을 채굴 할 때 생성된 블록에는 서로 다른 트랜잭션들이 포함되게 됩니다. 따라서 정상 블록에 포함된 트랜잭션은 처리가 되지만 엉클 블록 내에 트랜잭션들은 즉시 처리되지 않습니다. 두번째, 컴퓨팅의 파워 낭비 두 .. 2019. 4. 25.
[Ethereum] 계좌와 트랜잭션 이더리움 플랫폼 구성 중 데이터 계층에 대해서 알아보도록 하겠습니다. 이더리움 플랫폼에서 account는 모든 트랜잭션의 실행 주체이자 기본 단위로서 모든 것은 account에서 실행된다고 생각할 수 있습니다. 이러한 account는 2가지 타입을 갖는데요. 외부 소유 어카운트 (EOA, Extenally owned Account) 일반적으로 말하는 Account가 외부 소유 어카운트입니다. 사람이 직접 개인키를 관리하며, 스마트 컨트랙트 실행 코드는 가지고 있지 않습니다. EOA는 개인 키를 사용하여 전자 서명된 트랜잭션을 생성하고 실행함으로써 다른 EOA나 컨트랙트 어카운트에 메세지를 보낼 수 있습니다. 보통은 EOA간의 메세지는 이더를 보내지만, EOA는 컨트랙트 어카운트에 메세지를 보내 해당 코드.. 2019. 4. 23.
[Ethereum] 이더리움 플랫폼의 작동 원리 우선 간단하게 이더리움은 스마트 컨트랙트와 탈중앙화 된 앱인 댑 등의 기술을 통해 다양한 분야에 적용할 수 있는 컴퓨팅 플랫폼입니다. 조금 자세하게 설명하자면 이더리움은 스마트 컨트랙트라는 혁신적인 기능을 제공해주는데, 이 기능을 통해 이더리움 개발자들은 거래 세부 내용을 직접 개발 코드로 프로그래밍하고 이를 블록 내에 포함 할 수 있으며 제3자의 개입 없이 특정 계약 조건이 만족되면 자동으로 실행할 수 있습니다. 예를 들어, 특정 사람 간에 어떤 작업을 완료했을 경우 자동으로 암호화폐를 통해 대가를 지급되도록 만들 수 있습니다. 이 기능이 비트코인과 이더리움의 가장 큰 차이점이라고 할 수 있죠. 그러면 지금부터 이더리움 플롯폼에 대해서 하나씩 알아보겠습니다. 이더리움 단일 상태 모델 이더리움은 네트워크.. 2019. 4. 23.
[BitCoin] 단순지불검증(SPV) 노드 이전 글에서 말했다시피 풀 블록체인을 가지고 있기에는 용량이 너무나도 많이 차지하게 됩니다. 그러기에 단순지불검증(SPV) 방법을 이용하여 풀 블록체인을 저장하지 않고도 운영하는 방법을 사용하는데요. SPV노드는 블록에 있는 거래내용들은 받지 않고 블록의 헤더만 다운로드 받습니다. 이러한 거래내용이 없는 블록체인은 풀 블록체인 보다 약 1000배 정도 크기가 작아지게 됩니다. SPV노드는 네트워트상의 거래 전부에 대해서는 잘 알지 못하기 때문에 소비할 수 있는 UTXO 전분에 대한 큰 그림을 그릴 수 없습니다. 하지만 이웃 노드들에게 의하는 조금 다른 방법을 이용해 거래를 검증하고, 요청된 블록체인의 필요한 부분들만을 보여주는 방식으로 진행됩니다. 단순지불검증은 블록체인 내에서 해당 블록의 높이 대신 깊.. 2019. 4. 16.
[BitCoin] 비트코인 네트워크 비트코인 네트워크는 P2P ( peer-to-peer )네트워크 아키텍처 구조를 이루고 있습니다. 이겨서 P2P란 클라이언트, 서버 개념 없이 네트워크에 참여한 개인이 서버이기도, 클라이언트이기도 하면서 모두 동등한 지위를 가지고 있고, '특별한' 노드는 존재하지 않으며 모든 노드가 네트워크에 서비스를 공급, 지원하는 역할을 하는 네트워크를 의미합니다. 여기서 가장 중요한 것은 서버가 없다는 것입니다. P2P 네트워크의 노드는 서비스를 제공하고 동시에 서비스를 이용하며, 네트워크에 참여에 대한 인센티브를 제공함으로써 호혜적인 역할도 수행합니다. 대표적인 예로, 예전의 소리바다, 토렌트가 있습니다. 다시 본론으로 들어가 비트코인 네트워크는 '비트코인 P2P 프로토콜'을 실행하는 노드들의 집합이라고 할 수 .. 2019. 4. 16.
[BitCoin] 비트코인내에서의 거래 거래는 비트코인 시스템의 가장 중요한 요소인데 비트코인에서 말하는 거래는 비트코인 시스템 내에 있는 참가자들 간 가치를 전송하는 행위를 인코딩한 데이터 구조를 의미합니다. 거래 입력값과 출력값 이러한 거래는 입력값과 출력값으로 구성되어 있으며 거래의 입력값과 출력값은 계좌 혹은 신분에 상관 없이 소유주나 비밀키를 알고 있는 사람만이 풀 수 있는 특수 비밀키로 잠겨 있고 수많은 필드를 포함하고 있습니다. 비트코인 거래의 기본 요소는 소비되지 않은 거래 출력값(unspent transaction output), 즉 UTXO입니다. UTXO는 특정 소유주에 대해 암호로 잠겨 있고, 블록체인상에 기록되어 있으며, 전체 네트워크에 의해 통화 단위로 인정받은 불가분의 비트코인 덩어리입니다. 모든 비트코인 거래는 출.. 2019. 4. 16.
반응형