DApp 2

이더리움 노드와 EVM

이더리움 EVM이란 dAPP(스마트컨트랙트)이 구동되는 이더리움 내 가상머신(Virtual Machine)이다. 이더리움블록체인상에 배포되는 프로그램에서 발생하는 로직들을 처리하고 계산하는 계산기(cpu/computer) 역할을 한다. 또한 JAVA의 JVM에 대해 아는 사람이라면 JVM처럼, EVM은 솔리디티라는 언어를 컴파일하면 생성되는 바이트코드를 운영체제와 상관없이 이더리움 네트워크 내에서 실행하도록 하는 역할을 한다. 보통 처음 블록체인을 공부하기 시작하면, 비트코인의 아키텍처에 대한 자료가 많다. 그런데, 비트코인에는 이 가상머신이라는 개념이 별도로 존재하지는 않는다. 스마트컨트랙트 같은 하나의 프로그램이 구동되는 방식이 아니라, 돈을 주고 받는 트랜잭션만 처리하고 각 노드들이 그것을 기록하는..

이더리움 dapp 개발환경 구성

이더리움 dapp이란 이더리움가상머신(EVM)상에서 돌아가는 애플리케이션을 의미한다. 이를 개발하기 위한 개발환경구성은 사실 2가지만 진행하면 된다. solidity언어의 프레임워크인 truffle설치와 그것을 테스트 해볼 수 있는, 로컬블록체인의 EVM환경인 가나슈 설치. 1.node.js 설치 -이더리움의 dapp의 개발언어는 통상 solidity를 사용한다. solidity는 javascript 기반 언어로서, 이를 사용하기 위한 패키지 및 개발환경 구성을 위해 node.js를 설치한다. node.js설치시 npm(Node Packaged Manager-자바에 메이븐과 같은 라이브러리 관리툴로 보면된다.)이 자동적으로 추가 설치되는데, 이 패키지 툴을 통해 truffle도 설치할 예정. -truff..