관리 메뉴

평행우주 : world 1

[블록체인이론] 클라이언트 종류와 노드 본문

텃밭 1 : BlockChain/이론

[블록체인이론] 클라이언트 종류와 노드

parallelworlds 2022. 3. 17. 00:38

전체 클라이언트

전체 이더리움 블록체인을 저장

전체 클라이언트를 사용하면, 연결된 노드가 마이닝, 트랜잭션 및 블록 헤더 유효성 검사, 스마트 계약 실행을 포함하여 네트워크에서 모든 작업을 수행할 수 있다.

엄청난 양의 디스크 공간이 필요한 프로세스

 

원격 클라이언트

풀 클라이언트의 일부 기능을 제공한다

블록체인의 로컬 사본을 저장하지 않거나 블록 및 트랜잭션의 유효성을 확인하지 않음

대신, 이더리움 블록체인 네트워크에 대한 액세스를 제공하기 위해 전체 또는 라이트 클라이언트에 완전히 의존한다

풀 클라이언트를 신뢰해 블록체인에 대한 접근 권한을 부여하므로 보안 및 익명성 보장 수준이 떨어진다

지갑의 기능을 제공하며 트랜잭션을 생성하고 전파할 수 있다

원격 클라이언트를 사용하여, 자신의 풀 노드, 공개 블록체인, 공개 또는 허가된 테스트넷 또는 로컬 블록체인 같은 기존 네트워크에 연결할 수 있다.

실제로 다른 모든 노드 옵션 간에 전환하기 편리한 방법으로 메타마스크 같은 원격 클라이언트 사용

주로 거래를 보내고 받기 위한 지갑으로 사용

*지갑과 차이점으로, 원격 클라이언트는 지갑의 트랜잭션 기능 외에도 API를 제공한다

원격 클라이언트의 다른 용도로는 JavaScript 객체 내의 web3 인스턴스, dapp 브라우저 및 환율 데이터 검색 등 존재

 

 

+)일반적으로 다음 기능 중 하나 이상을 제공한다

  • 개인키와 이더리움 주소를 지갑에서 관리
  • 트랜잭션 생성, 서명 및 브로드캐스트
  • 데이터 페이로드를 사용하여 스마트 컨트랙트와 상호연동
  • 브라우저와 댑 간 상호연동
  • 블록 탐색기 같은 외부 서비스 링크
  • 이더 단위를 변환하고 외부 소스에서 환율 검색
  • 자바스크립트 객체로서 web3 인스턴스를 웹 브라우저에 삽입
  • 다른 클라이언트가 브라우저에 제공/삽입한 web3인스턴스 사용
  • 로컬 또는 원격 이더리움 노드에서 RPC서비스로 접근

 

라이트 클라이언트

블록 헤더의 유효성을 검사하고, 머클 증명을 사용하여 블록체인에서의 트랜잭션 포함 여부를 확인하고

그 영향도를 결정하여 풀 노드에 대해 비슷한 수준의 보안을 제공한다

일반적으로 데이터 스토리지와 속도가 문제가 될 때 개발자는 "라이트 클라이언트"를 사용하기로 선택한다

라이트 클라이언트는 전체 클라이언트 기능의 하위 집합 제공

전체 클라이언트와 비교할 때, 더 빠른 속도를 제공하고 데이터 저장 가용성을 확보할 수 있다.

라이트 클라이언트의 기능 범위는 이더리움 클라이언트의 목표에 맞게 조정 가능

예를 들어 라이트 클라이언트는 지갑 내에서 개인 키와 이더리움 주소 관리에 자주 사용된다

또한 스마트 계약 상호 작용 및 트랜잭션 브로드캐스트를 처리하는 경향이 있다

 

노드와 클라이언트의 차이점

노드와 클라이언트는 서로 함께 작동하지만, 이더리움 네트워크에 액세스하기 위해 둘 다 별도로 작동한다

컴퓨터를 예로 들면, 노드는 Windows 또는 iOS와 같은 운영 체제이고 클라이언트는 컴퓨터 자체로 비교할 수 있다

클라이언트 컴퓨터는 사용자에게 노드 운영 체제에 액세스할 수 있는 기능을 제공하며,

이는 다시 인터넷에 액세스할 수 있는 기능을 제공한다.

따라서 다른 컴퓨터에서 동일한 운영 체제에 액세스할 수 있고 다른 운영 체제에서 동일한 인터넷에 액세스할 수 있게된다

 

 

 

 

 

 

Comments