Ethereum
-
SmartContract 개발에 유의해야할 점 (2/2)IT 지식 2019. 5. 10. 12:04
[이전글] SmartContract 개발에 유의해야할 점 (1/2) SmartContract 개발에 유의해야할 점 (1/2) 오늘은 그 동안 블록체인 SmartContract를 개발하며 느낀 점들을 정리해보려고 한다. 블록체인은 잘 알지 못하지만 개발면에서 우수한 개발자분들이 미리 작성해주신 Contract Code를 볼 때 그리고, 블록체인 서비.. ryublock.tistory.com 2. 고려해야할 항목 2-1. GAS SmartContract 개발시 가장 신경을 써야하는 부분은 GAS비용이다. 얼마나 최적화가 되있느냐에 따라 GAS 소모량을 줄일 수 있고, 이는 유저와 서비스 제공자에게도 큰 이점으로 작용한다. 위의 상황은 SafeMath 라는 library 이다. 왼쪽 기존 SafeMath에서는..
-
Transaction Data 살펴보기 (feat. ABI)BlockChain Tech 2019. 4. 10. 12:13
Transaction을 구성하는 여러가지 요소들이 있다. 대부분 쉽게 이해할 수 있는 반면, Data라는 친구는 명확하게 어떤 것을 해주는 항목인지 알기 힘들다. 오늘은 Transaction의 Data가 어떤 역할을 하는지 알아보도록 하자. Transaction의 구성요소 nonce: 해당 계좌에서 발생된 Transaction의 수 from: receive address to: sender address value: 수신자에게 보내는 Ether 수량 gas limit: 가스의 최대 사용량 gas price: 가스 가격 data: 가변길이의 바이너리 데이터 v, r, s: ECDSA 서명 구성 요소 Transfer Transaction var transaction = { nonce: web3.toHex(n..
-
[Klaytn] Contract Execution (feat. Fee Delegated)BlockChain Tech 2019. 4. 6. 22:32
지난 번 글에서 Klaytn의 대(신)납(부) 기능 중 'FEE_DELEGATED_VALUE_TRANSFER'를 살펴보았다. 이번 글에서는 Klaytn IDE가 아닌, Java Script에서 Klaytn Contract 실행 그리고, 컨트랙트 호출 대납을 실행해보려고 한다. 기본 Base 코드는 Klaytn Tutorial 'Count App(링크)'를 사용했다. 이전 글과 대부분 겹치기 때문에 자세한 설명은 생략! (이전 글 링크) [1 Step] Normal Contract Execution setPlus = async () => { const userPrivateKey = '0xb83edaf89879b3c615bb6019af65313984812aa94dce7ca5b5d8abef899c1141' c..
-
[Klaytn] 대(신)납(부) 기능 (feat. Fee Delegated)BlockChain Tech 2019. 4. 6. 16:02
Klaytn 대학(원)생 간담회에 참석을 하고, Klaytn에 대한 소개를 들었을 때. 가장 관심이 있었던 부분은 수수료에 대한 부분을 누군가 대신납부 할 수 있다는 것이였다. 많은 게임 업체 혹은 서비스 업체들이 이더리움 대신 이오스를 택하는 것이 대부분 '수수료'의 문제라고 생각하기 때문이다. Klaytn Private Testnet이 종료 되고, Public Testnet인 Baobab(배오뱁!)이 시작 되었기 때문에 실제로 '대납'이 어떻게 이루어지는지 간략하게 정리 해보자! Klaytn Docs에 위 기능이 필요한 이유가 영어!로 서술 되어 있다. 처음 이 기능에 대한 이야기를 들었을 때는 별다른 고민 없이 'SmartContract를 작성 할 때, 무언가 추가 하겠군.' 이라고 생각했지만 사실..
-
ERC-165 살펴보기BlockChain Tech 2019. 3. 29. 17:51
ERC-165 - SmartContract에 구현되어 있는 인터페이스를 게시하고, 검색하는 표준 매소드를 만든다. 쉽게 생각해보면, 해당 SmartContract에 내가 사용해야할 'function hungry(string food)'라는 함수가 있는지 검색할 수 있는 함수를 구현하는 것이 ERC-165이다. 어떻게 작동하는지 소스코드를 살표보자. 썩 복잡한 코드는 아니였고, 사용하기 쉽고 효율적인 코드라고 생각되지도 않았다. (물론, 구현 해놓으면 사고 예방에는 좋긴 할 것이다.) (1) _registerInterface를 통해 interfaceId를 등록하고, (2) supportsInterface를 통해 해당 interface 즉, 함수가 있는지 확인한다. interfaceID이란? interfac..
-
[알쓸신블] 제6장 Ethereum HardFork History & Constantinople알아두면 쓸모있는 신나는 블록체인 2019. 1. 15. 20:55
2019년 1월 17일 오후 1시경 7,080,000번째 블록에서 이더리움의 콘스탄티노플 업데이트가 진행된다. 이더리움의 하드포크 역사와 이번 '콘스탄티노플'에서는 무엇이 적용 되는 지 알아보도록 하자. 이더리움 로드맵 초기 이더리움은 총 4번의 하드포크를 발표했다. (1) 황무지 이더리움에서 코인이 채굴 되며 이더리움 네트워크가 형성 되는 단계 프론티어 (Frontier)- 2015년 7월 30일 이더리움 Genesis Block 채굴 시점 (2) 사람들이 하나 둘 모여 마을을 만들어가는 단계 홈스테드 (HomeStead)- (#1,150,000 Block) 2016년 3월 14일 * EIP-2- Smart Contract 생성 비용 조절 ( 21,000 -> 53,000 )- 가스 비용이 부족해도, ..
-
ERC20 그리고 EIPBlockChain Tech 2019. 1. 2. 11:20
이더리움 기반의 ‘ERC20 토큰’ 여기서 ERC 는 무엇이고, 20이라는 숫자는 무엇을 의미할까?흔히 우리가 알고 있는 암호화화폐의 약 90% 이상은 이더리움 기반의 토큰이다. 자체 블록체인을 구성하는 코인들과 달리, ERC20은 많은 장점들을 가지고 있다.‘Solidity’ 언어로 쉽게 제작이 가능하다.약속된 규격이 있고, OpenSource로 다양한 예제들이 제공 되어 있다.이더리움 기반으로 상장에 용이하다. (‘거래소는 그저 Token Contract Address를 추가 하면 된다.’)CrowdSale Contract 로 손쉽게 이더리움으로 ICO를 진행할 수 있는 장점등이 있다.반년전만 해도.. 부르는 게 값이였다지..? (자료 링크)이렇듯 ERC20은 충분히 매력적이다. 또한, 자체 블록체인..