NEW
-
[Solidity] call, delegateCall
모든 call들은 특정 주소의 다른 컨트랙트를 데이터, 가스, 이더와 함께 특정 함수를 호출합니다. 어떤 호출이냐에 따라 msg.sender나 변동 storage가 바뀌므로 기본 방식을 이해하고 사용하심이 바람직합니다. call 컨트랙트 A를 통해 컨트랙트 B의 함수 호출시 B의 Storage를 변경시키며 msg.sender(호출자)는 컨트랙트A의 주소가 됩니다. delegate call 컨트랙트 A를 통해 컨트랙트 B 호출시 B의 Storage를 변경시키지 않고, B의 코드를 A에서 실행합니다. msg.sender와 msg.value가 컨트랙트 A 호출시와 같고, 변동되지 않습니다. static call 상태를 변경하거나 읽는 경우를 구분하기 위해서 사용되며 다른 컨트랙트로 리다이렉트 되는 경우에도 상..
2019.06.18 23:37 -
Solidity Guide 정리 문서
1. 개발환경셋팅 Truffle VIM에서 sol파일 코드 알록달록하게보기 git에서 sol파일 코드 알록달록하게보기 2. Solidity 솔리디티란 Gas 3.기본문법 기본틀과 관례 데이터 저장 위치 데이터타입 접근제한자 / 상태제어자/ 함수제어자 이벤트 상속 폴백함수 (fallback function) 4. 전역변수와 전역함수 전역변수 전역함수 5. 취약점 Overflow, Underflow 6. Truffle 설정 테스트 배포 콘솔 7. ERC20 토큰 프로젝트 예제 ERC20 규약 sol코드 배포 트러플로 함수실행 web3로 함수실행 재직 중 신입 가이드용 문서로 만들었던 파일입니다. 19년 04월 30일 기준 0.5.0 버전 이상으로 맞게 업데이트 하긴하였으나 문서작성 초기에 0.5.0 버전에 ..
2019.04.30 11:17 -
[Klaytn] Linux / EN Install (클레이튼 EN 설치하기)
원문 ...더보기 https://docs.klaytn.com/node/en/installation/linux Linux Binaries docs.klaytn.com CC : Core Cell / 트랜잭션을 검증하는 핵심셀 EN : Endpoint Nodes / 트랜잭션을 생성, RPC API 요청을 처리하며 서비스체인에서 데이터를 처리 SC : Service Chain / EN 하드웨어 요구사항 1. KEN 패키지 다운로드 다운로드 링크 ken-vX.X.X-linux-amd64.tar.gz 파일명의 최신버전 다운로드 KEN 설치 할 경로에서 압축풀기 tar zxvf 파일명 * tar zxvf : tar 파일을 tar.gz를(z), 추출하며(x), 추출과정을 보이며(v), 대상지정(f) KEN 환경변수 설..
2019.04.07 22:35 -
Metamask 연동 체크
var userAddress; $(function(){ //메타마스크 계정 불러오기 web3.eth.getAccounts(function(err, accs) { if (err != null) { var message = "PC 크롬을 이용해주시기 바라며, \n크롬의 확장프로그램 MetaMask를 설치해주세요."; alert(message); show(message); return; } if (accs.length == 0) { var message = "Metamask 계정을 가져올 수 없습니다.\nMetamask에 로그인 해주세요."; alert(message); show(message); return; } userAddress = accs.toString(); }) //네트워크 확인 web3.vers..
2019.03.24 16:38 -
Dapp Method ID Data 추출
Method ID는 '함수명(매개변수타입)' 을 sha3를 돌려서 나온 결과값의 앞에서부터 4Byte 입니다.이는 Dapp의 특정 메소드를 호출하고싶을 경우 Transaction을 발생 시 data에 넣어야하는 코드이며 아래는 이더스캔 Dapp호출 Transaction에 Input Data 예시 입니다. 방법1)var sha_Method = web3.utils.sha3('함수명(매개변수타입)')var methodId = sha_Method.substring(0,10)*web3 v1.0 방법2)var methodId = web3.eth.abi.encodeFunctionSignature("함수명(매개변수타입)") ( 예제 ) Solidity.solcontract Exsample{ function TestNa..
2019.03.15 23:55 -
이더리움 keystore <-> PrivateKey 변환 Node
Private Key -> keystore (암호화)사용 노드 패키지 : fs , ethereumjs-wallet const Wallet = require("ethereumjs-wallet")const fs = require("fs") const pk = new Buffer.from('PK값', 'hex')const account = Wallet.fromPrivateKey(pk)const jsonContent = JSON.stringify(account.toV3('password값')) // keystore 암호화/복호화에 사용 될 패스워드 // 파일 생성const address = account.getAddress().toString('hex')const fileName = `UTC--${new Dat..
2019.03.15 23:26 -
Block Chain 이란
블록체인이란데이터를 관리하는 중심매체 없이 네트워크에 참여하는 모든 사용자가 "블록"이라 불리는 데이터를 분산시켜 검증, 기록, 보관하는 분산 데이터 저장 기술입니다.비트코인을 만들기 위한 기술로 시작되었기 때문에 초기엔 가상화폐 중심이었습니다.이후 기술적인 특징을 주목받기 시작하여 가상화폐가 아닌 독자적인 기술로 발전하는 방향에 있습니다.현재까지 게임, 미디어, IoT, 유통, 교육, 부동산, 은행 등 다양한 분야에서 사용되었지만 이렇게 사용되는 사실도 극소수의 사람들만 제한적으로 아는 만큼 이 기술이 누구나 쉽게 접할 수 있기까지 자리잡는 시간은 꽤나 필요해보입니다. 블록체인의 특징대표적인 특징은 데이터가 분산되어 있다는 점입니다.이 특징으로 모든 사용자가 갖고있는 데이터를 서로 비교하여 데이터의 정..
2019.03.14 23:07 -
핀테크 (Fintech)
금융 (Finance)와 기술 (Technology)를 결합한 서비스나 서비스를 하는 회사를 가리키는 말입니다. ex) 자산관리, 투자, 가상화폐 등
2019.03.14 22:55