본문 바로가기

Blockchain17

[Ethereum] Web3.js 라이브러리 Web3 라이브러리 Web3은 웹과 이더리움 블록체인 네트워크의 연결을 도와주는 라이브러리다. 이더리움 블록체인에 로컬(IPC), 원격(RPC 혹은 HTTP) 모두 접속할 수 있게 도와주는 툴이라고 할 수 있다. JavaScript 로 작성된 모듈로 내장 함수를 사용해 프론트 웹에서 블록체인 네트워크에 쉽게 접근할 수 있다. 본 포스트에서 기본적인 Web3 API 명령어들과 예제코드를 정리해두었다. Web3 명령어 기본적인 web3 명령어 몇 개를 적어놓았다. 어떻게 선언되고 및 사용되는지 참고가 되었으면 좋겠다. 만약 사용하고자 하는 기능이 따로 있다면 공식 홈페이지(https://web3js.readthedocs.io/en/v1.7.1/)에 잘 정리되어 있으니 아래 링크를 잘 활용하자. web3.js.. 2022. 3. 17.
[Ethereum] 트렌젝션(Transaction)과 콜(Call) 개요 이더리움 블록체인 네트워크에서는 데이터 읽기(Reading)와 수정(Writing)이 구분된다. 블록체인에서 데이터를 읽어오는 것은 네트워크를 참조하는 것이기 때문에 가스비(Gas)가 소모되지 않지만, 블록 데이터를 업데이트하는 것은 가스비가 발생하기 때문이다. 이러한 관점에서 데이터를 단순히 읽어오는 작업을 콜(Call)이라고 하며, 블록 수정이 필요한 작업을 트렌젝션(Transaction)이라고 한다. 트렌젝션 (Transaction) 트렉젝션이 발생한다는 것은 블록체인 네트워크 상태(State)가 변경된다는 것과 같다(Writing). 이러한 상태 변경은 어카운트(Acount)들 사이의 이더(Ether) 교환, 블록체인 네트워크에 스마트 컨트렉트의 배포(Deploy), 배포된 컨트렉트의 함수에.. 2022. 3. 17.
[Quorum] 쿼럼(Quorum)으로 프라이빗 블록체인 구축하기 이번 포스트에서 쿼럼(Quorum)이라는 오픈 소스 프로토콜을 통해 이더리움 기반 프로이빗 블록체인 네트워크를 구축하는 가이드를 작성하고자 한다. 우선, 쿼럼이란 자세히 어떤 프로젝트인지 살펴보자. 쿼럼(Quorum)이란? 쿼럼의 풀 네임은 ConsenSys Quorum으로 ConcenSys 사에서 제공하는 오픈 소스 프로토콜이다. 해당 패키지를 통해 개발자는 이더리움 기반 블록체인을 보다 편의성 있게 구축할 수 있다. 이더리움 블록체인의 메인넷과의 차이점이라고 하면, 쿼럼은 사용자(혹은 노드 운영자) 권한(Permission)에 따라 네트워크가 구축된다는 점(Private)으로 이더리움은 모든 사용자에게 오픈되어 있는 것(Public)과 대비된다. 덧붙여 이러한 네트워크의 특성(Private, Perm.. 2022. 3. 7.
[Ethereum] DApp과 이더리움 프로그래밍 App과 DApp IT에 대한 소식을 접하다보면 DApp이란 단어를 들어보았을 것이다. 탈중앙화 애플리케이션(Decentralized Application) 의 줄임말인 DApp은 우리가 일상에서 사용하는 App과 크게 차이가 있을까 싶을 수 있지만, 개발자 입장에서 나는 DApp과 App은 개발부터 실행까지 큰 차이가 있다고 말하고 싶다. 일반적으로 App은 사용자측에서 요청이 들어왔을 때, 웹 서버(정확히는 웹 서버와 웹 에플리케이션 서버)를 통해 해당 요청에 맞는 응답을 전해주는 원리로 동작한다. 소스에 저장되어 있는 정적 데이터를 전달하기도 하지만, 데이터베이스 서버를 경유한 동적인 데이터 처리가 많다. 간단히 말해 App은 사용자 -> 서버 -> 데이터베이스 의 흐름으로 동작한다고 할 수 있다... 2022. 3. 6.