스마트컨트랙트 3

Hotel Reservation Smart Contract with SOLIDITY

1. payable 키워드 : 계약 계정에 이더를 사용(송금, 수신)할 수 있도록 해 줌 book() 함수 안의 transfer() 함수는 이더의 수량만큼 전송할 수 있게 해 줌 2. enum (열거형) : enum을 사용해 호텔 예약 여부에 대한 상태 변수를 추가 : 미리 정의된 상수들의 목록 : 함수 내에서 선언 불가, 계약의 전역 이름 공간에 선언 가능 -> Vacant에는 정수값 0, Occupied에는 정수값 1이 세팅 됨 (자동으로 0,1,2..순서로 할당) 3. require () 함수 예약을 위해 체크해야 할 2가지 정보 -가격 -방이 비었는지에 대한 여부 -> 이를 확인하기 위해 require () 함수 사용 -> require 함수 첫 번째 값이 true면 실행; msg.value가 2..

PBL Ⅲ/BlockChain 2022.06.09

Create a Simple Ethereum SmartContract (2)

간단한 이더리움 스마트 컨트랙트를 구현해보자. -> remix IDE 검색해 가장 먼저 뜨는 검색결과로 이동 -> editor 내에서 sample contract가 담긴 default_workspace를 제공함 default_workspace의 contracts > 3_Ballot.sol 에 들어가서 코드 다 지우고 여기서 fresh하게 시작해보자. * file 확장자가 .sol 임 -> solidity file을 위한 default file extension //most recent version of solidity //declaring what version of solidity this conttact will be authored in //솔리디티 버전 9전까지 사용 pragma solidity..

PBL Ⅲ/BlockChain 2022.06.01

[PBL 주제 스터디] Smart Contract

Smart Contract : 서면으로 이루어지던 계약을 코드로 구현하고 특정 조건이 충족되었을 때 해당 계약이 이행되게 하는 script 특징 : 두 당사자가 서로를 모르거나 신뢰하지 않더라도 계약 체결 가능 : 특정 조건이 충족되어야만 계약이 체결됨=> 중개인 없이도 계약 이행 가능 ; 조건에 맞는 정확한 작동을 수행하는 능력 갖춤 : 대표적으로 이더리움 블록체인 플랫폼 위에서 구현되어 있음 왜 하필 블록체인에서 스마트 컨트랙트가 구현되었을까? 1. 블록체인은 많은 감시자들을 갖고 있음 2. 입력을 기반한 결과 도출 플랫폼임 그럼 스마트 컨트랙트가 왜 필요한가? 1. 누구나 배포 가능 2. 컨트랙트의 소유자가 아니더라도 누구든지 검증 가능 3. 코드의 실행 자동화 가능 4. 위변조 어려움 5. 블록체..

PBL Ⅲ 2022.03.19