SlideShare a Scribd company logo
가상화폐 개념 및
거래 기초개발
지앤클라우드 송상욱
가상화폐
출처 : https://coinmarketcap.com/all/views/all/
• 암화화 화폐 Crypto currency
• 현재 사용되는 전자화폐와는 다른 개념
• 종속성이 없는 블록체인이 핵심기술
• 집단지성, 탈중앙화된 자율조직, 암호화 등 혁신적
인 기술과 이데올로기
• 현재 가상화폐는 1147개가 존재 (17년 9월)
• 상위에 비트코인, 이더리움, 리플, 라이트코인 존
재
블록체인
• 분산 원장 (분산 데이터베이스)
• 지속적으로 성장하는 데이터 기록 리스트
• 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안
• 많은 업계에서 블록체인 기술을 이용한 실증 실험이 검토
이미지 출처 : http://www.itworld.co.kr/news/100106
기본원리
• 비트코인의 화폐는 10분에 한번씩 블록 생성
• 이더리움의 화폐는 15초에 한번씩 블록 생성
• 마이닝에 참여한 사용자 중 한 명에게 블록 지급
• 마이닝이란 특정한 조건을 가지는 해시값을 찾는 일
• 해당 시간(10분, 15초)에 하나의 블록이 생성될수 있도록 문제
의 난이도가 조정됨.
이더리움
• 스마트 계약 분산 기술
• 가상화폐단위
• Ether
• Szabo : 10-8 Ether
• Wei : 10-18 Ether
• 실행환경 : EVM ( Ethereum Virtual Machine)
• 클라이언트
• Geth - golang
• Eth – c++
• Pyethapp - python
• Ethereumj - Java
• Web3.js – javascript
작업증명
• 블록 생성 조건: 블록의 해시가 일부 목표 값보다 작아야함
• 이유
• 분산 시스템에서 누구나 블록을 생산할 수 있음
• 네트워크가 블록으로 넘치지 않도록 함.
• 특정 버전의 블록 체인 뒤에 얼마나 많은 합의가 이루어 졌는지 측정 할 수있는 방법
을 제공하기 위해서.
• 블록을 만드는 것이 어려워야 함.
• 해시가
000000100000000000000000000000000000000000000000000000000000
000 미만인 블록을 찾는 데 평균 43억 회 소요.
이더리움 채굴
• 채굴의 보상
• 5.0 Ether로 구성된 'winning'블록에 대한 보상
• 블록 내에서 소비 된 가스 비용
• Uncles 포함에 따른 추가 보상
• Mining에는 geth보다는 c++로 만들어진 eth가 유리
• 싱글 GPU 명령
• eth -v 1 -a 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name
"OPTIONALNAMEHERE" -x 50 -m on -G
• 멀티 GPU 명령
• eth -v 1 -a 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name
"OPTIONALNAMEHERE" -x 50 -j
• ethminer --no-precompute -G --opencl-device X
비트코인 개발
• 테스트넷 기동
• $ bitcoind –regtest –daemon
• 블록생성
• $ bitcoin-cli –regtest generate 101
• 블록수 확인
• $ bitcoin-cli –regtest getblockcount
• 계좌생성
• $ bitcoin-cli –regtest getnewaddress swsong
• > 1GZaq7gue1fJ3Xv4pXymJ1F7WPLwMax4Rv
• 잔고확인
• $ bitcoin-cli –regtest getbalance
• 송금
• $ bitcoin-cli –regtest sendtoaddress 1GZaq7gue1fJ3Xv4pXymJ1F7WPLwMax4Rv 10
이더리움 개발
• 테스트 네트워크 구축
• $ geth –networkid “123” –datadir “eth_data” –olympic console
• 계좌생성
• > personal.newAccount(“swsong”)
• 잔고확인
• > eth.getBalance(eth.accounts[0])
• 블록수 확인
• > eth.blockNumber
• 송금
• > eth.sendTransaction({from: ‘0x19f0..’, to: ‘0x382..’, value: web3.toWei(1, “ether”)})
• 송금확인
• > eth.getBalance(eth.accounts[1])
이더리움 Contract 개발
• Solidity 이더리움 고유언어를 사용하여 개발
• EVM위에서 동작
• geth의 RPC 기동
• $ geth –networkid “123” –rpc –rpcaddr “192.168.56.105” –rpcport 8545 –
rpccorsdomain “*” –rpcapi “net,eth,web3,personal” –datadir “eth_data” –
olympic console
• web3.js 의 접근
• var master = web3.eth.contract(masterABI).at(“0x8aece3……”);
• 개발환경
• Remix – 웹 브라우저기반의 IDE. https://remix.ethereum.org/
• IDEA Plugin
• Visual Studio Extension
• Etheratom
참고
• https://github.com/ethereum/wiki/wiki

More Related Content

What's hot

블록체인 이슈와 전망 New db
블록체인 이슈와 전망 New db블록체인 이슈와 전망 New db
블록체인 이슈와 전망 New db
HongSuk Seo
 

What's hot (20)

[고숙한 세미나] 블록체인 취약점 분석
[고숙한 세미나] 블록체인 취약점 분석[고숙한 세미나] 블록체인 취약점 분석
[고숙한 세미나] 블록체인 취약점 분석
 
비트코인 프로토콜
비트코인 프로토콜비트코인 프로토콜
비트코인 프로토콜
 
블록체인 이슈와 전망 New db
블록체인 이슈와 전망 New db블록체인 이슈와 전망 New db
블록체인 이슈와 전망 New db
 
코어 이더리움
코어 이더리움 코어 이더리움
코어 이더리움
 
블록체인
블록체인블록체인
블록체인
 
JWT
JWTJWT
JWT
 
쉽게 풀어쓴 블록체인과 이더리움
쉽게 풀어쓴 블록체인과 이더리움쉽게 풀어쓴 블록체인과 이더리움
쉽게 풀어쓴 블록체인과 이더리움
 
Cloudoc supermicro mini_svr_appliance_kor_20171019
Cloudoc supermicro mini_svr_appliance_kor_20171019Cloudoc supermicro mini_svr_appliance_kor_20171019
Cloudoc supermicro mini_svr_appliance_kor_20171019
 
가상화폐와 블록체인 기술 Cryptocurrency & Blockchain Technology (KOR ver.)
가상화폐와 블록체인 기술 Cryptocurrency & Blockchain Technology (KOR ver.)가상화폐와 블록체인 기술 Cryptocurrency & Blockchain Technology (KOR ver.)
가상화폐와 블록체인 기술 Cryptocurrency & Blockchain Technology (KOR ver.)
 
Blockchain 2nd ethereum_core
Blockchain 2nd ethereum_coreBlockchain 2nd ethereum_core
Blockchain 2nd ethereum_core
 
블록체인(Block Chain)이란? - 블록체인의 구성요소, 작동원리, 메커니즘의 이해
블록체인(Block Chain)이란? - 블록체인의 구성요소, 작동원리, 메커니즘의 이해블록체인(Block Chain)이란? - 블록체인의 구성요소, 작동원리, 메커니즘의 이해
블록체인(Block Chain)이란? - 블록체인의 구성요소, 작동원리, 메커니즘의 이해
 
Bitcoin 기술분석 - 조남수
Bitcoin 기술분석 - 조남수Bitcoin 기술분석 - 조남수
Bitcoin 기술분석 - 조남수
 
세션1. block chain as a platform
세션1. block chain as a platform세션1. block chain as a platform
세션1. block chain as a platform
 
비트코인으로 이해하는 블록체인 기술
비트코인으로 이해하는 블록체인 기술비트코인으로 이해하는 블록체인 기술
비트코인으로 이해하는 블록체인 기술
 
블록체인
블록체인블록체인
블록체인
 
비트코인 개인간 전자화폐시스템 요약 설명
비트코인 개인간 전자화폐시스템 요약 설명비트코인 개인간 전자화폐시스템 요약 설명
비트코인 개인간 전자화폐시스템 요약 설명
 
(131102) #fitalk get windows logon password in memory dump
(131102) #fitalk   get windows logon password in memory dump(131102) #fitalk   get windows logon password in memory dump
(131102) #fitalk get windows logon password in memory dump
 
비트코인 아직도 몰라?
비트코인 아직도 몰라?비트코인 아직도 몰라?
비트코인 아직도 몰라?
 
Blockchain Study(2) - POW&POS
Blockchain Study(2) - POW&POSBlockchain Study(2) - POW&POS
Blockchain Study(2) - POW&POS
 
비트코인과 블록체인 핵심개념정리
비트코인과 블록체인 핵심개념정리비트코인과 블록체인 핵심개념정리
비트코인과 블록체인 핵심개념정리
 

Similar to 가상화폐 개념 및 거래 기초개발

Similar to 가상화폐 개념 및 거래 기초개발 (20)

Blockchain Basic Concept Theory (Beginner Version) / 초보자를 위한 블록체인 기초 개념 이론
Blockchain Basic Concept Theory (Beginner Version) / 초보자를 위한 블록체인 기초 개념 이론Blockchain Basic Concept Theory (Beginner Version) / 초보자를 위한 블록체인 기초 개념 이론
Blockchain Basic Concept Theory (Beginner Version) / 초보자를 위한 블록체인 기초 개념 이론
 
블록체인과 암호화폐 그리고 악성코드
블록체인과 암호화폐 그리고 악성코드블록체인과 암호화폐 그리고 악성코드
블록체인과 암호화폐 그리고 악성코드
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Introblockchaininfra 180806105137
Introblockchaininfra 180806105137Introblockchaininfra 180806105137
Introblockchaininfra 180806105137
 
Blockchain
BlockchainBlockchain
Blockchain
 
Ethereum Basics Part 2
Ethereum Basics Part 2Ethereum Basics Part 2
Ethereum Basics Part 2
 
비트코인에 관한 교육자료 입니다.
비트코인에 관한 교육자료 입니다.비트코인에 관한 교육자료 입니다.
비트코인에 관한 교육자료 입니다.
 
Blockchain 1st bitcoin_core
Blockchain 1st bitcoin_coreBlockchain 1st bitcoin_core
Blockchain 1st bitcoin_core
 
Bitcoin 2.0(blockchain technology 2)
Bitcoin 2.0(blockchain technology 2)Bitcoin 2.0(blockchain technology 2)
Bitcoin 2.0(blockchain technology 2)
 
About the Blockchain_imcloud
About the Blockchain_imcloudAbout the Blockchain_imcloud
About the Blockchain_imcloud
 
이더리움의 현황, 한계점 및 개선노력
이더리움의 현황, 한계점 및 개선노력 이더리움의 현황, 한계점 및 개선노력
이더리움의 현황, 한계점 및 개선노력
 
블록체인 개요
블록체인 개요블록체인 개요
블록체인 개요
 
블록체인 개요
블록체인 개요블록체인 개요
블록체인 개요
 
W3C HTML5 컨퍼런스 2020 - 웹 환경에서 블록체인 노드와 통신 및 신원인증 (DID)
W3C HTML5 컨퍼런스 2020 - 웹 환경에서 블록체인 노드와 통신 및 신원인증 (DID)W3C HTML5 컨퍼런스 2020 - 웹 환경에서 블록체인 노드와 통신 및 신원인증 (DID)
W3C HTML5 컨퍼런스 2020 - 웹 환경에서 블록체인 노드와 통신 및 신원인증 (DID)
 
Mastering ethereum
Mastering ethereumMastering ethereum
Mastering ethereum
 
Twitter의 snowflake 소개 및 활용
Twitter의 snowflake 소개 및 활용Twitter의 snowflake 소개 및 활용
Twitter의 snowflake 소개 및 활용
 
[블록체인 기업으로 가는 길] 1일차 블록체인 일반
[블록체인 기업으로 가는 길] 1일차 블록체인 일반[블록체인 기업으로 가는 길] 1일차 블록체인 일반
[블록체인 기업으로 가는 길] 1일차 블록체인 일반
 
세션2. 이더리움 합의 알고리즘과 마이닝
세션2. 이더리움 합의 알고리즘과 마이닝세션2. 이더리움 합의 알고리즘과 마이닝
세션2. 이더리움 합의 알고리즘과 마이닝
 
Linux Kernel 101 for Beginner
Linux Kernel 101 for BeginnerLinux Kernel 101 for Beginner
Linux Kernel 101 for Beginner
 
8 week: Technology of Platformless Media Blockchain
8 week: Technology of Platformless Media Blockchain8 week: Technology of Platformless Media Blockchain
8 week: Technology of Platformless Media Blockchain
 

More from 상욱 송

SaaS Flatform metering and billing
SaaS Flatform metering and billingSaaS Flatform metering and billing
SaaS Flatform metering and billing
상욱 송
 
Realtimestream and realtime fastcatsearch
Realtimestream and realtime fastcatsearchRealtimestream and realtime fastcatsearch
Realtimestream and realtime fastcatsearch
상욱 송
 
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
상욱 송
 

More from 상욱 송 (17)

클레이튼 BApp 서비스 현황
클레이튼 BApp 서비스 현황클레이튼 BApp 서비스 현황
클레이튼 BApp 서비스 현황
 
쿠버네티스의 이해 #2
쿠버네티스의 이해 #2쿠버네티스의 이해 #2
쿠버네티스의 이해 #2
 
쿠버네티스의 이해 #1
쿠버네티스의 이해 #1쿠버네티스의 이해 #1
쿠버네티스의 이해 #1
 
이더리움 스마트계약 보안지침 가이드 2. 솔리디티 권고안
이더리움 스마트계약 보안지침 가이드 2. 솔리디티 권고안이더리움 스마트계약 보안지침 가이드 2. 솔리디티 권고안
이더리움 스마트계약 보안지침 가이드 2. 솔리디티 권고안
 
Go 언어 성공사례 및 강점
Go 언어 성공사례 및 강점Go 언어 성공사례 및 강점
Go 언어 성공사례 및 강점
 
Java 어플리케이션 성능튜닝 Part3
Java 어플리케이션 성능튜닝 Part3Java 어플리케이션 성능튜닝 Part3
Java 어플리케이션 성능튜닝 Part3
 
Java 어플리케이션 성능튜닝 Part1
Java 어플리케이션 성능튜닝 Part1Java 어플리케이션 성능튜닝 Part1
Java 어플리케이션 성능튜닝 Part1
 
Java 어플리케이션 성능튜닝 Part2
Java 어플리케이션 성능튜닝 Part2Java 어플리케이션 성능튜닝 Part2
Java 어플리케이션 성능튜닝 Part2
 
Fastcat 검색구축사례
Fastcat 검색구축사례Fastcat 검색구축사례
Fastcat 검색구축사례
 
클라우드 서비스운영 플랫폼 가루다
클라우드 서비스운영 플랫폼 가루다클라우드 서비스운영 플랫폼 가루다
클라우드 서비스운영 플랫폼 가루다
 
범용 PaaS 플랫폼 mesos(mesosphere)
범용 PaaS 플랫폼 mesos(mesosphere)범용 PaaS 플랫폼 mesos(mesosphere)
범용 PaaS 플랫폼 mesos(mesosphere)
 
빌링:미터링 Bss platform구현
빌링:미터링 Bss platform구현빌링:미터링 Bss platform구현
빌링:미터링 Bss platform구현
 
Let's Go (golang)
Let's Go (golang)Let's Go (golang)
Let's Go (golang)
 
SaaS Flatform metering and billing
SaaS Flatform metering and billingSaaS Flatform metering and billing
SaaS Flatform metering and billing
 
Realtimestream and realtime fastcatsearch
Realtimestream and realtime fastcatsearchRealtimestream and realtime fastcatsearch
Realtimestream and realtime fastcatsearch
 
Realtime search engine concept
Realtime search engine conceptRealtime search engine concept
Realtime search engine concept
 
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
 

가상화폐 개념 및 거래 기초개발

  • 1. 가상화폐 개념 및 거래 기초개발 지앤클라우드 송상욱
  • 2. 가상화폐 출처 : https://coinmarketcap.com/all/views/all/ • 암화화 화폐 Crypto currency • 현재 사용되는 전자화폐와는 다른 개념 • 종속성이 없는 블록체인이 핵심기술 • 집단지성, 탈중앙화된 자율조직, 암호화 등 혁신적 인 기술과 이데올로기 • 현재 가상화폐는 1147개가 존재 (17년 9월) • 상위에 비트코인, 이더리움, 리플, 라이트코인 존 재
  • 3. 블록체인 • 분산 원장 (분산 데이터베이스) • 지속적으로 성장하는 데이터 기록 리스트 • 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안 • 많은 업계에서 블록체인 기술을 이용한 실증 실험이 검토 이미지 출처 : http://www.itworld.co.kr/news/100106
  • 4. 기본원리 • 비트코인의 화폐는 10분에 한번씩 블록 생성 • 이더리움의 화폐는 15초에 한번씩 블록 생성 • 마이닝에 참여한 사용자 중 한 명에게 블록 지급 • 마이닝이란 특정한 조건을 가지는 해시값을 찾는 일 • 해당 시간(10분, 15초)에 하나의 블록이 생성될수 있도록 문제 의 난이도가 조정됨.
  • 5. 이더리움 • 스마트 계약 분산 기술 • 가상화폐단위 • Ether • Szabo : 10-8 Ether • Wei : 10-18 Ether • 실행환경 : EVM ( Ethereum Virtual Machine) • 클라이언트 • Geth - golang • Eth – c++ • Pyethapp - python • Ethereumj - Java • Web3.js – javascript
  • 6. 작업증명 • 블록 생성 조건: 블록의 해시가 일부 목표 값보다 작아야함 • 이유 • 분산 시스템에서 누구나 블록을 생산할 수 있음 • 네트워크가 블록으로 넘치지 않도록 함. • 특정 버전의 블록 체인 뒤에 얼마나 많은 합의가 이루어 졌는지 측정 할 수있는 방법 을 제공하기 위해서. • 블록을 만드는 것이 어려워야 함. • 해시가 000000100000000000000000000000000000000000000000000000000000 000 미만인 블록을 찾는 데 평균 43억 회 소요.
  • 7. 이더리움 채굴 • 채굴의 보상 • 5.0 Ether로 구성된 'winning'블록에 대한 보상 • 블록 내에서 소비 된 가스 비용 • Uncles 포함에 따른 추가 보상 • Mining에는 geth보다는 c++로 만들어진 eth가 유리 • 싱글 GPU 명령 • eth -v 1 -a 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name "OPTIONALNAMEHERE" -x 50 -m on -G • 멀티 GPU 명령 • eth -v 1 -a 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name "OPTIONALNAMEHERE" -x 50 -j • ethminer --no-precompute -G --opencl-device X
  • 8. 비트코인 개발 • 테스트넷 기동 • $ bitcoind –regtest –daemon • 블록생성 • $ bitcoin-cli –regtest generate 101 • 블록수 확인 • $ bitcoin-cli –regtest getblockcount • 계좌생성 • $ bitcoin-cli –regtest getnewaddress swsong • > 1GZaq7gue1fJ3Xv4pXymJ1F7WPLwMax4Rv • 잔고확인 • $ bitcoin-cli –regtest getbalance • 송금 • $ bitcoin-cli –regtest sendtoaddress 1GZaq7gue1fJ3Xv4pXymJ1F7WPLwMax4Rv 10
  • 9. 이더리움 개발 • 테스트 네트워크 구축 • $ geth –networkid “123” –datadir “eth_data” –olympic console • 계좌생성 • > personal.newAccount(“swsong”) • 잔고확인 • > eth.getBalance(eth.accounts[0]) • 블록수 확인 • > eth.blockNumber • 송금 • > eth.sendTransaction({from: ‘0x19f0..’, to: ‘0x382..’, value: web3.toWei(1, “ether”)}) • 송금확인 • > eth.getBalance(eth.accounts[1])
  • 10. 이더리움 Contract 개발 • Solidity 이더리움 고유언어를 사용하여 개발 • EVM위에서 동작 • geth의 RPC 기동 • $ geth –networkid “123” –rpc –rpcaddr “192.168.56.105” –rpcport 8545 – rpccorsdomain “*” –rpcapi “net,eth,web3,personal” –datadir “eth_data” – olympic console • web3.js 의 접근 • var master = web3.eth.contract(masterABI).at(“0x8aece3……”); • 개발환경 • Remix – 웹 브라우저기반의 IDE. https://remix.ethereum.org/ • IDEA Plugin • Visual Studio Extension • Etheratom