본문 바로가기

블록체인 기술사업 교육/Solidity3

Truffle Truffle - 이더리움 기반 DApp을 쉽게 개발할 수 있도록 도와주는 블록체인 프레임워크 - Smart Contract 빌드, 컴파일, 배포, 테스트 환경을 제공 - Javascript에게 node.js가 있다면 Solidity는 truffle - truffle 환경 세팅 (truffle init) => sol파일 작성 후 컴파일 (truffle compile) => migration 파일 작성 후 배포 (truffle migrate) => 작동 점검 (truffle test) - migrations에 js파일 생성 시 파일명을 [번호_내용_컨트랙트명] 형식으로 만들어야 함 - Solidity 파일에서 데이터를 JavaScript로 가져올 때 Object 타입으로 가져옴 (js에서 타입 변환 필수).. 2023. 5. 17.
블록체인 기술사업 교육 11일차 (Solidity) Smart Contract 응용 경매 pragma solidity ^0.4.11; contract Auction { address public highestBidder;// 최고 입찰자 어드레스 uint public highestBid;// 최고 입찰액 /// 생성자 function Auction() payable { highestBidder = msg.sender; highestBid = 0; } /// 입찰 처리 함수 function bid() public payable { // 현재 입찰액이 최고 입찰액보다 높은지 확인 require(msg.value > highestBid); // 기존 최고 입찰자에게 반환할 액수 설정 uint refundAmount = highestBid; // 최고입찰자 어드.. 2023. 4. 17.
블록체인 기술사업 교육 8&9일차 솔리디티(Solidity) 정의 - 블록체인 플랫폼에서 Smart Contract 작성과 구현에 사용되는 계약 지향 프로그래밍 언어 특징 - 정적 타입 언어(Statically Typed) = 컴파일 시 변수의 타입이 결정되는 언어 => 프로그래머가 변수에 들어갈 값의 형태에 따라 직접 타입을 명시 - EVM(Ethereum Virtual Machine) = 이더리움 블록체인 네트워크의 참여자(노드)가 공유하는 하나의 가상 머신이자 이더리움 전체를 작동하는 엔진 - 튜링 완전성 = 가능한 모든 형태의 거래를 코드로 작성할 수 있음 + 컴퓨터 코드 작업마다 수수료인 가스(Gas)를 부과해 악의적인 공격을 방어함 Smart Contract 기본 구조 // SPDX-License-Identifier: GPL-.. 2023. 4. 12.