본문 바로가기

개발 일기장/Block Chain3

블록체인을 파보자(3) 게스(Geth) / 패리티(Parity) 클라이언트 Geth- Geth는 이더리움 재단이 제공하는 공식 클라이언트 SW로, Go언어로 개발되었다. 처음 시작하면 네트워크 내의 다른 이더리움 클라이언트(또는 node)에 연결하는 작업을 먼저 시작하고 블록체인의 전체 사본을 내려받게 된다. Geth는 블록체인의 복사본을 최신 상태로 유지하기 위해 끊임없이 다른 노드와 통신한다. 또한 블록을 채굴하고, 블록체인의 트랜잭션을 추가하고 블록의 트랜잭션을 검증하며 트랜잭션을 실행할 수도 있다. 그리고 RPC를 통해 상호작용할 수 있는 API를 노출하여 서버 역할을 하기도 한다. 블록체인에 연결할 수 있는 자바스크립트 클라이언트도 있다. 패리티- 패리티는 이더리움 프로토콜의 또 다른 구현체이며, 러스트(Rust) 언.. 2025. 1. 26.
블록체인을 파보자(2) 스마트 컨트랙트(Smart Contracts)- 이더리움에서는 응용 프로그램을 스마트 계약이라고 한다.왜 그렇게 부르는가? 일반적으로 계약은 법으로 진행되는 두 당사자 또는 여러 당사자 간의 서면 합의이다. 계약서를 작성하여 코드로 변환하고 블록체인에 배포하면 디지털 계약이 체결되는 모습으로 보인다. 또 블록체인에 있는 이 코드의 장점은 당사자 간의 합의 강화이다.  이것이 바로 응용 프로그램을 스마트 계약이라고 부르는 이유이다. 그렇다면 이 코드가 어떻게 계약을 시행할 수 있을까? 일단 계약이 블록체인에 배포되면 이를 중지하거나 수정할 수 없다. 이것이 계약이 시행되는 방식이다. 간단한 예를 든다. 예시- Crowdsale 프로그램을 작성한다. 제작자는 1만 달러의 이익을 얻고 싶어하며, 이 제품에 선.. 2025. 1. 26.
블록체인을 파보자(1) 이더리움- 이더리움은 퍼블릭 블록체인 기반의 분산 컴퓨팅 플랫폼이다. 응용 프로그램을 작성하고 글로벌 컴퓨터에서 실행 가능하며, 중단 시간, 검열 사기 등 제 3자의 간섭 없이 항상 실행되도록 보장함.  - 이더리움은 블록체인을 통해 중앙 권한 없이 두 사람끼리 돈을 이체할 수 있다. 이러한 모든 컴퓨터(노드)는 서로 연결되어 있고, 코드와 데이터의 전체 복사본을 가지고 있다.  이더리움 블록체인에 코드를 배포하면 코드가 네트워크의 모든 노드로 복제된다.응용 프로그램에 데이터가 저장되면 모든 노드에서 해당 데이터가 복제된다. 네트워크에는 수천 개의 노드가 있어 모든 노드를 중지시키는 것은 거의 불가능하다. 따라서 응용 프로그램에 항상 엑세스할 수 있다.   이더리움 이해하기- 기존 클라이언트 / 서버 아.. 2025. 1. 25.