본문 바로가기

학교 공부54

[AWS] EC2 인스턴스 생성 및 환경설정 1. 회원가입 후, 메인 페이지에서 관리 콘솔에 들어간다. 2. 모든 서비스에서 EC2를 선택한다. : EC2 외에도 lamda와 같은 유연한 서비스도 존재하지만, 우분투 같은 일반 서버를 운영하기 위해서 EC2를 선택했다. ** 이벤트가 많은 경우 lamda를 사용하면 좋고 (nodejs로 함수 구현할 수 있음) NAS 용도로 스토리지만 필요할 경우 S3를 사용하는 등, 본인이 사용하려는 목적에 따라 결정하자. 3. 인스턴스 시작 클릭 4. 우분투 서버 20.04 LTS 선택 : 제일 위에 본인들의 아마존 리눅스를 제공하고 있지만, 평소에 사용해왔던 우분투를 서버를 선택한다. 5. 본인이 필요로 하는 CPU 성능 선택 : 기본은 t2 micro로 되어있으며, 후에 용량이 더 필요하다면 하드디스크를 탑재.. 2021. 11. 3.
[Ethereum] Solidity 기본 변수와 함수 종류 Solidity Language란? : EVM에 byte코드로 생성된다. 따라서 bytecode만 해석하면 되고, javascript, C++, JAVA 등과 비슷하다. Solidity version 표현 (ex1) pragma solidity>= 0.4.16 > 600 sec - Ether unis : wei, Szabo, ether 이미 선언된 변수명(global variable) 1) msg object 종류 : msg.sender(address) / msg.value(ether 값) / msg.data(data payload) / msg.sig(어떤 function을 갖고 있는지) 2) tx object 종류 : tx.gasprice(gas price) / tx.origin(transaction을.. 2021. 8. 1.
[도커 #2] 도커 이미지(docker image)란? (제가 이해한 내용을 바탕으로 작성하였습니다. 잘못된 부분이 있을 경우에는 댓글 남겨주세요.) "도커(docker)"를 생각하면 이미지와 컨테이너를 떠올리도록 하자. 도커 이미지를 떠올리면 layer 저장 방식을 사용한 것까지 떠올리면 좋을 텐데 일단 먼저 도커 이미지가 뭔지 알아야 할 테니 글을 보면서 이해할 수 있도록 해보자. Docker Image(도커 이미지)란? : "이미지 = 설정 파일" 정의를 알아보기보다는 도커 사용을 먼저 설명하려고 한다. 우리가 우분투 서버에 APM을 구축하려고 할 때 우분투가 여러 대 존재하면 각각의 우분투에다가 apache 설치하고, php 설치하고, mysql 설치하고 연동해야 한다. 하지만 도커를 사용하면 apache 이미지를 한번 다운로드하고, php와 mysq.. 2021. 7. 28.
[Ethereum] Smart Contract 보안 취약점 이더리움 보안 가이드라인 - Minimalism : 꼭 필요한 기능들만 가진 contract을 제작하자. - Code reuse : 코드를 작성할 때 library를 찾아서 써라. - Code quality : 제작된 contract은 항상 블록체인에 올라가 있다. 따라서 처음 만들 때 제대로 만들어서 사용하자. - Readability : 가독성이 좋도록 작성하자. - Test coverage : 다양한 형태의 input 값을 테스트 해보자. 대표적인 취약점 1) Reentrancy 공격 : fallback() 함수를 이용한 취약점이다. 사용자가 외부 공격자의 contract 코드를 사용했을 때, 호출한 함수가 존재하지 않는다면 공격자 contract의 fallback() 함수가 동작된다. 그럼 이때,.. 2021. 6. 11.
[Ethereum] solidity언어 문법 Solidity Language : smart contract 과정 중 EVM에서 byte코드를 생성하고, smart contract을 만들기 위한 가장 많이 쓰이는 언어이다. 1) solidity 버전 선언 : 두 가지 중 마음에 드는 걸 사용하자. - pragma solidity >= 0.4.16 2021. 6. 11.
[Ethereum] Smart Contract이란? Smart Contract이란? : 디지털화된 계약으로 생각하자. EVM을 기반으로 동작하고 decentralized된 world computer 그 자체라고 말할 수 있다. Smart Contract 생성 과정 1) 컴파일을 통해 EVM에서 동작할 수 있는 코드로 변환됨. 2) deploy smart contract이 생성됨. 3) key가 존재하지 않는 하나의 address가 생성됨. - smart contract은 생성자 및 소유자가 존재하지 않는다. 단지 누군가의 호출에 의해서 실행될 뿐이다. - EOA로부터 tx를 받아 동작하는데, 이때 또 다른 contract에 의해, 혹은 또 다른 contract을 호출할 수 있다. >> 이것은 contract chain이라고 부름. Contract Chai.. 2021. 6. 3.