전체 글
-
나만의 EtherScan만들기 with ganache, Web3.jsBlockChain/Technology 2021. 8. 5. 22:28
소개 가나슈를 이용하여 간이 블록체인을 만들고, Web3.js를 가지고 이더리움 주소/트랜잭션/블록 정보를 조회하는 사이트를 만들었습니다. 자유롭게 블록체인 내의 계정과 트랜잭션, 블록의 정보들을 조회하고, 확인할 수 있습니다. 관련 코드는 https://github.com/HongDaeEui/BlockchainProject/tree/main/MyEtherscan 에서 보실 수 있습니다. Ganache 가나슈(Ganache)란 테스트 목적으로 PC에 설치해서 사용할 수 있는 일종의 간이 블록체인입니다. 네트워크와 연결할 필요없이 로컬에서 작동시킬 수 있어 손쉽게 테스트할 수 있습니다. 테스트를 위해 100개의 이더가 미리 탑재된 10개의 테스트 계정을 확보하게 된다. ! 이더스캔을 사용하기 전에 가나슈를..
-
[C] 숫자 오름차순 만들기WEBn/Algorithm Study 2021. 8. 4. 00:32
#include int main() { int a[] = {95, 75, 85, 100, 50}; int i, j, temp; int n = sizeof(a)/sizeof(int); for(i= 0; i a[1] // 95 > 75 = true temp = 95 a[0] = a[1] = 75 a[1] = temp = 95 ∴ a[0] = 75, a[1] = 95 a[0]와 a[1]의 위치가 바뀌었다. 즉. a의 연달아 있는 두 요소를 비교했을 때 앞에 요소가 더 크다면, 순서를 바꿔준다. 그래서 i=0의 for문을 돌리면 a=[ 75 85 95 50 100 ]가 된다. i = 1 일 때 a = [ 75 85 50 95 100 ] i = 2 일 때 a = [ 75 50 85 95 100 ] i = 3 일 ..
-
나만보는 Blockchain 개념 (4) 솔리디티로 이더 송금하기BlockChain/Technology 2021. 7. 27. 15:19
오늘의 주제 1. 컨트랙트에서 이더 송금하기 2. fallback() 함수 3. selfdestruct() 함수 1. 컨트랙트에서 이더 송금하기 Solidity 프로그래밍을 위해 remix.ethereum에 들어갑니다. 새로 파일을 하나 만들고, 아래 코드를 작성하고 컴파일을 합니다. pragma solidity 0.8.6; contract Test1 { uint nonce; constructor(uint _nonce) payable { nonce = _nonce; } function getNonce() public view returns (uint) { return nonce; } function withdraw(uint _nonce) public { require(nonce == _nonce); pa..
-
나만보는 블록체인 개념 (3) 토큰 컨트랙트 -1BlockChain/Technology 2021. 7. 27. 15:19
오늘의 주제 1. 토큰 2. 토큰의 컨트랙트 1. 토큰 ERC-20 Ethereum Request for Comment 20의 약자. EIPs에서 관리하는 공식 프로토콜이며 이더리움 블록체인 네트워크에서 정한 표준 토큰 스펙이다. ERC-20 토큰은 이더리움과 교환 가능하며 이더리움 지갑으로 전송이 가능하다. 코인과 토큰의 차이 코인 : 블록체인 네트워크(메인넷)을 구축하여 독립적인 블록체인 생태계 구성이 가능하다. 토큰 : 특정 블록체인을 기반으로 한 dApp*분산화 애플리케이션에 사용되는 암호화폐이다. 토큰은 스마트 계약을 통해 생성된다. 스마트 계약은 불가역적으로 전개되는 기능을 통해 중앙관리가 배제된 서비스를 구현한다. 이더리움 블록체인 플랫폼을 활용해 토큰을 발행하여 자신의 비즈니스를 구현하고,..
-
나만보는 Blockchain 개념 (2) 스마트 컨트랙트카테고리 없음 2021. 7. 26. 21:56
오늘의 주제 1. 스마트 컨트랙트 2. 스마트 컨트랙 Testnet에 배포하기(실습) 1. 스마트 컨트랙트 이더리움의 강력한 기능 중 하나이며, 다른 암호화페와 차별화 되는 특징이다. 한줄 개념은 아래와 같다. 계약 내용을 코드로 구현하고, 특정 조건이 충족되었을 때 해당 계약이 자동으로 이행하게 하는 Scrpit. 스마트 컨트랙의 동작과정은 다음과 같다. 내용을 Solidity 등으로 구현한다. Solidity 코드를 컴파일 하여 네트워크에 배포할 수 있는 Bytecode를 생성한다. Transaction에 Bytecode를 담고, 마이너가 해당 Transaction이 담긴 블록을 채굴하고, Blockchain Network에 기록된다. 유저는 ABI를 통해 배포된 함수를 호출하는 Bytecode를 생..
-
나만보는 Blockchain 개념 (1) 이더리움BlockChain/Technology 2021. 7. 26. 15:29
오늘의 주제 1. 이더리움의 구조 2. 트랜잭션 처리과정 3. 블록 헤더 4. 이더리움이란? 1. 이더리움의 구조 State 블록체인의 계정 정보들을 담고 바뀐 정보를 업데이트 Account 외부 소유 어카운트(EOA)와 컨트랙트 어카운트(Contract Account)로 구분되는 오브젝트 Tx 어카운트가 보낼 메시지를 담고있는 서명된 데이터 패키지 Block 트랜잭션이 담긴 후 노드들의 합의에 의해 생성되어 트랜잭션을 처리 2. 트랜잭션 처리 과정 이더리움 트랜잭션은 3가지 기능이 있다. 이더리움 전송/ Smart Contract 배포/ Smart Contract 실행 동작하기 위한 조건은 개인키 서명, Gas 수수료가 필요하다. => 생성, 서명, 전송 Tx { to: 메시지 수신처 Signature..
-
Vue 세팅하기카테고리 없음 2021. 7. 2. 11:40
• Vsc extension에서 vetur 설치 • Npm으로 vue 설치 https://www.npmjs.com/ 개발자들이 상상하는 기능들을 왠만한 거 다 만들어놔서 갖다 쓸 수 있음. 터미널로 이동 ! • Cli(Command-line interface) 설치 • test01 만들기(프로젝터 생성) Vue3 설치 *VSC에서 잘 안된다 ?! => 터미널로 이동해서 하자(주의: vue 폴더로 이동한 후 명령어 입력) 잠깐 VSC 터미널에서 되게 하는 법 ! - VSC 터미널을 관리자 권한으로 실행하고 아래 명령어를 입력한다. 그럼 해결 ! • cd test01 npm run serve -에러 날시 : npm install @vue/cli-service@5.0.0-beta.0 @vue/cli-plugi..
-
JavaScript - 아직도 function 쓰니? (feat. Arrow function)WEBn/JavaScript 2021. 6. 30. 00:00
이번 주제는 Arrow function 입니다. 화살표 함수는 ES6 문법으로 자바스크립트에서 간단하게 함수를 표현할 수 있어요. // generic function var apple = function () { console.log("apple") }; // apple // Arrow function var apple = () => console.log("apple"); // apple 언뜻보면 function하나 없어진 거 아닌가? 싶지만 한번 Arrow 함수를 쓴 사람은 다시 function을 쓰는 때로 돌아가기 어려울 정도로 편리하고 좋습니다 사용시에 몇가지 규칙이 있습니다. 자세히 알아봅시다. 1. 기본형 함수 표현식으로 사용 가능하다. → var 함수명 = function() { } 형태의 함..