의견.png

"라이트노드"의 두 판 사이의 차이

해시넷
이동: 둘러보기, 검색
(같이 보기)
4번째 줄: 4번째 줄:
 
라이트노드는 블록체인에 참여하여 거래를 수행하는 노드로, [[풀노드]]에 거래 [[데이터]]를 요청하여 개별 거래를 검증하는 기능을 수행한다. 풀노드처럼 모든 블록 정보의 원본을 가지고 있지는 않고 일종의 요약본, 즉 [[블록헤더]]에 있는 중요한 데이터만 보유하고 있다. [[스마트폰]]의 경우, 100GB 저장 공간을 가진 폰이 아직 많지 않기 때문에 [[안드로이드]] [[모바일]] [[비트코인]] [[지갑]]은 라이트 노드로 사용된다. 참고로 데스크톱 컴퓨터의 비트코인 지갑은 풀노드로 사용된다.
 
라이트노드는 블록체인에 참여하여 거래를 수행하는 노드로, [[풀노드]]에 거래 [[데이터]]를 요청하여 개별 거래를 검증하는 기능을 수행한다. 풀노드처럼 모든 블록 정보의 원본을 가지고 있지는 않고 일종의 요약본, 즉 [[블록헤더]]에 있는 중요한 데이터만 보유하고 있다. [[스마트폰]]의 경우, 100GB 저장 공간을 가진 폰이 아직 많지 않기 때문에 [[안드로이드]] [[모바일]] [[비트코인]] [[지갑]]은 라이트 노드로 사용된다. 참고로 데스크톱 컴퓨터의 비트코인 지갑은 풀노드로 사용된다.
  
라이트노드는 모든 블록정보를 가지고 있지 않기 때문에 어떤 새로운 거래 정보를 수신받았을 경우 이 거래가 정상적인지 검증할 수 없다.<ref>Yuna, 〈[https://brunch.co.kr/@fish-soul/65 블록체인 용어 정리]〉, 《브런치》, 2018-07-20</ref> 반대로 풀노드의 경우 모든 데이터를 가지고 있기 때문에 로컬에 있는 블록 정보를 조회하여 검증을 할 수 있다.<ref>Crocus, 〈[https://www.crocus.co.kr/1365 SPV(Simple Payment Verification)란?〉, 《티스토리》, 2018-10-02</ref> 따라서 라이트노드는 개별 거래에 대한 [[트랜잭션]]을 확인하기 위한 SPV(Simple Payment Verify, 단순 지불 검증)를 사용한다. SPV는 라이트노드에서 거래를 검증하기 위해 풀노드에게 블록정보를 요청하여 [[머클트리]]를 통해 이 거래가 검증된 거래인지를 확인하는 방법이다.<ref>yahweh87, 〈[https://steemit.com/kr/@yahweh87/12-feat # 12 – 블록체인 노드에 대한 개념정리(Feat. 지갑)], 《스팀잇》</ref>
+
라이트노드는 모든 블록정보를 가지고 있지 않기 때문에 어떤 새로운 거래 정보를 수신받았을 경우 이 거래가 정상적인지 검증할 수 없다.<ref>Yuna, 〈[https://brunch.co.kr/@fish-soul/65 블록체인 용어 정리]〉, 《브런치》, 2018-07-20</ref> 반대로 풀노드의 경우 모든 데이터를 가지고 있기 때문에 로컬에 있는 블록 정보를 조회하여 검증을 할 수 있다.<ref>Crocus, 〈[https://www.crocus.co.kr/1365 SPV(Simple Payment Verification)란?〉, 《티스토리》, 2018-10-02</ref> 따라서 라이트노드는 개별 거래에 대한 [[트랜잭션]]을 확인하기 위한 SPV(Simple Payment Verify, 단순 지불 검증)를 사용한다. SPV는 라이트노드에서 거래를 검증하기 위해 풀노드에게 블록정보를 요청하여 [[머클트리]]를 통해 이 거래가 검증된 거래인지를 확인하는 방법이다.<ref>yahweh87, 〈[https://steemit.com/kr/@yahweh87/12-feat # 12 – 블록체인 노드에 대한 개념정리(Feat. 지갑)]〉《스팀잇》</ref>
 +
 
 +
==노드란?==
 +
[[블록체인]]은 중앙 집중형 서버에 거래 기록을 보관, 관리하지 않고 거래에 참여하는 개개인의 서버들이 모여 [[네트워크]]를 유지 및 관리한다. 이 개개인의 서버, 즉 참여자를 [[노드]]라고 한다. 중앙 관리자가 없기 때문에 블록을 배포하는 노드의 역할이 중요하며, 참여하는 노드들 가운데 절반 이상의 동의가 있어야 새 블록이 생성된다. 노드들은 [[블록체인]]을 컴퓨터에 저장해 놓고 있는데, 일부 노드가 해킹을 당해 기존 내용이 틀어져도 다수의 노드에게 데이터가 남아 있어 계속적으로 데이터를 보존할 수 있다. 블록체인 네트워크의 모든 거래 정보를 모두 가지고 있으면 [[풀 노드]](full blockchain node), [[머클트리]]만 가지고 있으면 라이트 노드(lightweight node)라고 부른다.<ref>〈[https://terms.naver.com/entry.nhn?docId=5569380&cid=43667&categoryId=43667 블록체인 관련 용어]〉《네이버 지식백과》</ref>
 +
 
 +
==풀노드와 라이트노드 차이점==
 +
노드는 풀노드(full node)와 라이트노드(light node)로 나뉜다. 풀노드는 네트워크의 모든 거래정보를 전부 저장하고 사용자들의 지갑을 관리한다. 라이트노드는 사용자 지갑을 저장하지만 네트워크 접근을 위해 풀 노드에 의존한다. 노드는 네트워크의 구성요소이며 풀노드는 블록체인을 유지하는 것, 라이트노드는 참여자를 위해 접속권한을 부여하는 것이라고 이해할 수 있다. 금고와 파수꾼 비유를 다시 사용해보면 풀노드는 군대급의 강화된 파수꾼이고, 라이트노드는 금고를 활용해 입출금을 시도하는 통로로 볼 수 있다. 풀노드와 라이트노드 중에서 블록체인 네트워크에 기여가 큰 것은 역시 풀노드이다. 결국 라이트노드와 개별 노드는 노드에 저장되어 있는 블록체인을 읽어 와서 네트워크에 참여되는 것이기 때문이다.
  
 
==지갑==
 
==지갑==
20번째 줄: 26번째 줄:
  
 
==참고자료==
 
==참고자료==
* yahweh87, 〈[https://steemit.com/kr/@yahweh87/12-feat # 12 – 블록체인 노드에 대한 개념정리(Feat. 지갑)]〉, 《스팀잇》
+
* yahweh87, 〈[https://steemit.com/kr/@yahweh87/12-feat # 12 – 블록체인 노드에 대한 개념정리(Feat. 지갑)]〉《스팀잇》
 +
* 〈[https://terms.naver.com/entry.nhn?docId=5569380&cid=43667&categoryId=43667 블록체인 관련 용어]〉《네이버 지식백과》
 +
 
  
 
==같이 보기==
 
==같이 보기==
26번째 줄: 34번째 줄:
 
* [[노드]]
 
* [[노드]]
 
* [[블록체인]]
 
* [[블록체인]]
* [[ wallet]]
+
* [[wallet]]
  
 
{{ 블록체인 기술|토막글}}
 
{{ 블록체인 기술|토막글}}

2019년 7월 30일 (화) 14:38 판

라이트노드(light node)는 블록체인 거래내역 중 일종의 핵심본만 저장하는 노드이다. 모든 블록 정보를 가지고 있지 않고, 필요한 부분만 저장한다는 특징이 있다.

개요

라이트노드는 블록체인에 참여하여 거래를 수행하는 노드로, 풀노드에 거래 데이터를 요청하여 개별 거래를 검증하는 기능을 수행한다. 풀노드처럼 모든 블록 정보의 원본을 가지고 있지는 않고 일종의 요약본, 즉 블록헤더에 있는 중요한 데이터만 보유하고 있다. 스마트폰의 경우, 100GB 저장 공간을 가진 폰이 아직 많지 않기 때문에 안드로이드 모바일 비트코인 지갑은 라이트 노드로 사용된다. 참고로 데스크톱 컴퓨터의 비트코인 지갑은 풀노드로 사용된다.

라이트노드는 모든 블록정보를 가지고 있지 않기 때문에 어떤 새로운 거래 정보를 수신받았을 경우 이 거래가 정상적인지 검증할 수 없다.[1] 반대로 풀노드의 경우 모든 데이터를 가지고 있기 때문에 로컬에 있는 블록 정보를 조회하여 검증을 할 수 있다.[2] 따라서 라이트노드는 개별 거래에 대한 트랜잭션을 확인하기 위한 SPV(Simple Payment Verify, 단순 지불 검증)를 사용한다. SPV는 라이트노드에서 거래를 검증하기 위해 풀노드에게 블록정보를 요청하여 머클트리를 통해 이 거래가 검증된 거래인지를 확인하는 방법이다.[3]

노드란?

블록체인은 중앙 집중형 서버에 거래 기록을 보관, 관리하지 않고 거래에 참여하는 개개인의 서버들이 모여 네트워크를 유지 및 관리한다. 이 개개인의 서버, 즉 참여자를 노드라고 한다. 중앙 관리자가 없기 때문에 블록을 배포하는 노드의 역할이 중요하며, 참여하는 노드들 가운데 절반 이상의 동의가 있어야 새 블록이 생성된다. 노드들은 블록체인을 컴퓨터에 저장해 놓고 있는데, 일부 노드가 해킹을 당해 기존 내용이 틀어져도 다수의 노드에게 데이터가 남아 있어 계속적으로 데이터를 보존할 수 있다. 블록체인 네트워크의 모든 거래 정보를 모두 가지고 있으면 풀 노드(full blockchain node), 머클트리만 가지고 있으면 라이트 노드(lightweight node)라고 부른다.[4]

풀노드와 라이트노드 차이점

노드는 풀노드(full node)와 라이트노드(light node)로 나뉜다. 풀노드는 네트워크의 모든 거래정보를 전부 저장하고 사용자들의 지갑을 관리한다. 라이트노드는 사용자 지갑을 저장하지만 네트워크 접근을 위해 풀 노드에 의존한다. 노드는 네트워크의 구성요소이며 풀노드는 블록체인을 유지하는 것, 라이트노드는 참여자를 위해 접속권한을 부여하는 것이라고 이해할 수 있다. 금고와 파수꾼 비유를 다시 사용해보면 풀노드는 군대급의 강화된 파수꾼이고, 라이트노드는 금고를 활용해 입출금을 시도하는 통로로 볼 수 있다. 풀노드와 라이트노드 중에서 블록체인 네트워크에 기여가 큰 것은 역시 풀노드이다. 결국 라이트노드와 개별 노드는 노드에 저장되어 있는 블록체인을 읽어 와서 네트워크에 참여되는 것이기 때문이다.

지갑

  • 마이셀리엄(Mycelium) : 씬 클라이언트 지갑(Thin Client Wallet) 중 하나로, 안드로이드 비트코인 지갑 애플리케이션이다. 마이셀리움은 스마트폰을 잃어버리거나 도난당했을 때, 해당 지갑에 저장된 비트코인을 훔쳐내지 못하도록 백업 기능을 제공한다.[5] 온라인에 저장되어 있는 블록체인을 이용하기 때문에 동기화가 비교적 빠르지만, 인터넷에 로그인되어 있을 때 개인키를 따로 격리하지 않아 보안에 취약해질 수 있다는 단점이 있다.[6]
  • 마이이더월렛(My Ether Wallet) : 이더리움의 브라우저 기반 자바스크립트 원격 클라이언트로 웹 브라우저를 통한 접속만으로 사용 가능하다. 만들기 쉽고 저장 용량을 차지하지 않는다. 또한 동기화 시간이 없고 테스트넷과 하드웨어 지갑을 위한 인터페이스로서 매우 유용하다는 장점이 있다. 하지만 마이이더월렛은 브라우저를 통한 공격에 노출되어 있고 안전한 키 저장 시스템이 아니기 때문에 주 소프트웨어 지갑으로 사용해서는 안 된다. 또한 웹이 다운되거나 해킹을 당한 경우 접근에 제한되는 단점이 있다. 마이이더월렛은 다음과 같은 기능을 한다.
  1. 자바스크립트로 실행되는 소프트웨어 지갑
  2. 트레저(Trezor)와 레저(Ledger) 같은 인기 있는 하드웨어 지갑으로 연결
  3. 다른 클라이언트에 의해 주입된 web3 인스턴스에 연결할 수 있는 web3 인터페이스
  4. 이더리움 풀 클라이언트에게 연결할 수 있는 RPC 클라이언트
  5. 계약의 주소와 애플리케이션 바이너리 인터페이스가 있는 스마트 게약과 상호작용할 수 있는 기본적인 인터페이스

각주

  1. Yuna, 〈블록체인 용어 정리〉, 《브런치》, 2018-07-20
  2. Crocus, 〈[https://www.crocus.co.kr/1365 SPV(Simple Payment Verification)란?〉, 《티스토리》, 2018-10-02
  3. yahweh87, 〈# 12 – 블록체인 노드에 대한 개념정리(Feat. 지갑)〉《스팀잇》
  4. 블록체인 관련 용어〉《네이버 지식백과》
  5. 손경호 기자, 〈“비트코인 해킹, 정말로 어렵다”..왜?〉, 《지디넷코리아》, 2014-11-10
  6. Crypto Actually, 〈암호화폐 지갑 파헤치기(+핫월렛&콜드월렛)〉, 《네이버 블로그》, 2017-11-18

참고자료


같이 보기


  의견.png 이 라이트노드 문서는 블록체인 기술에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.