본문 바로가기

블록체인/이더리움4

[이더리움 dApp] 로또 스마트 컨트랙트 Tutorial 1. 개요 블록체인은 기존 중앙 시스템과 달리 분산 원장을 가진다는 장점을 가지고있다. 이 장점을 이용하면 데이터가 여러사람에 의해 무결성을 검증받을 수 있다는 점이다. 블록체인 기술로 만들어진 이더리움은 블록체인이 가진 장점에 더해 스마트 컨트랙트를 작성할 수 있게 되었다. 이번 튜토리얼은 로또 스마트컨트랙트를 만들어 보는 내용이다. 위 그림은 로또 dApp의 전체적인 구성도이다. 참여자들은 스마트 컨트랙트를 이용해 일정 금액을 모금하고 모금이 완료되면 컨트랙트 생성을 했던 사람은 당첨자 추첨을 진행합니다. 2. 로또 컨트랙트 작성 pragma solidity ^0.5.10; contract Lottery { } 기본적인 컨트랙트를 작성합니다. 필요한 변수는 2가지가 필요합니다. 스마트 컨트랙트 생성자.. 2019. 8. 10.
[이더리움 dApp] 이더리움으로 간단한 상품관리 dApp 만들기 -- 수정 19.11.18 -- Github 소스코드 약간의 오류를 수정하였습니다. 이더리움의 꽃은 바로 스마트컨트랙트를 이용한 dApp입니다. 비트코인과 다르게 이더리움의 스마트 컨트랙트는 강력한 차별점으로 뽑을 수 있고, 블록체인 기술이 단순한 화폐기능을 넘어서 프로그래밍을 할 수 있게 하여 다양한 활용 어플리케이션들을 만들어 낼 수 있다. 이번에는 이더리움 dApp을 처음만들어 보는 사람 기준으로 설명을 해보았다. Requirement Visual code Geth 약간의 javaScript 지식 git 1. 초기 설정 먼저 Geth를 동작시켜 이더리움 private Network를 구성한다. Geth private Network 구성은 이 게시물을 참고하면된다. https://developer-m.. 2019. 5. 9.
[이더리움]Geth를 이용해 multi node Private network 구성하기 Ethereum Multi node Private network 구성하기Ethereum을 이용해 dApp을 만들어 배포하기 전에 Ethereum Client의 Private Network를 만들어서 테스트 한 후 배포를 해야 불필요한 비용을 줄일 수 있다. 해당 Tutorial에서는 3가지의 방법을 설명한다.Multi node를 가지고 있는 block Chain망 구성하기어떻게 마이닝 노드 구성하는지어떻게 Multi node들간 BlockChain 통신하는지 Geth 설치방법과 기본적인 동작은 생략한다. 1. Genesis Block 생성하기/* genesis.json */{"config": {"chainId": 1004,"homesteadBlock": 0,"eip150Block": 0,"eip155Bl.. 2018. 12. 9.
[이더리움]Genesis json이 무엇인가 Ethereum - Genesis.json실제 이더리움 기반 DApp을 배포하려면 실제 이더를 소비하여 컴파일된 코드를 블록으로 저장을 해야한다. 운이좋게 오류 없이 실행이 된다면 단 한번의 배포비용만 지불하면 되겠지만, 이미 배포된 DApp에 오류가 발견된다면 수정 후 다시 배포를 해야 하기 때문에 추가로 이더를 소비해야 한다. 따라서, 개발자들은 실제 배포단계 이전에 Private Network를 통해 테스트 한다면 손실되는 비용을 줄일 수가 있을 것이다.Geth를 이용해 Ethereum private Network를 구성하기 위해서는 처음 제네시스 블록을 생성해주어야 한다.이때, Genesis.json에 제네시스 블록에 대한 설정을 해주는데, 이 파일의 구조를 알면 대략적인 이더리움 블록의 구조를 .. 2018. 12. 1.