Blockchain
-
Truffle로 Smart contract 배포Blockchain 2022. 12. 2. 23:17
Truffle Project 생성 truffle-config.js 설정 위 항목에 주석처리를 제거하고 Ganache에 나오는 값으로 입력한다. Ganache 설치 development: { host: "127.0.0.1", // Localhost (default: none) port: 7545, // Standard Ethereum port (default: none) network_id: "5777", // Any network (default: none) }, Solidity파일코딩 ex: contracts/Contract1.sol 파일을 만들고 아래 내용 입력 pragma solidity 0.6.0; contract Contract1 { struct Voter { uint power; } addre..
-
Truffle Project 생성Blockchain 2022. 11. 30. 21:32
Truffle 환경 준비 Truffle 설치 Project에 사용할 폴더 만들기 C:/>md truffleprj Truffle 초기화 명령 C:/truffleprj>truffle init 초기화 후 자동 생성된 구성물 [contracts], [migrations], [test], truffle-config.js 폴더 Contracts 스마트 컨트랙트를 위한 Solidity 소스 파일. Migrations.sol이라는 중요한 컨트랙트가 포함된다. 프로젝트의 다른 스마트컨트랙트 배포를 쉽게 하는 스크립트를 가지고 있다. 폴더 Migrations Truffle에서 스마트컨트랙트의 배포를 위해 사용하는 마이그레이션 시스템. 개발중인 스마트 컨트랙트의 변화를 관리한다. 폴더 Test 스마트컨트랙트를 위한 java..
-
Truffle 설치Blockchain 2022. 11. 30. 19:03
준비 Nestjs 설치 Truffle설치 명령 기본적인 설치 명령 npm install -g truffle 만약 호환성 문제가 있다면 nodeLTS버전으로 설치 npm uninstall -g truffle npm install -g truffle@nodeLTS 설치 확인 명령어 truffle version 설치 확인 목록 C:\>truffle version Truffle v5.6.7 (core: 5.6.7) Ganache v7.5.0 Solidity v0.5.16 (solc-js) Node v16.17.0 Web3.js v1.7.4 C:\> 블록체인 레이어 설정 Geth(go ethereum)클라이언트, 가나쉬(Ganache) 등이 있다. Ganache 설치
-
Solidity Vsc 개발 환경Blockchain 2022. 11. 28. 17:26
Vsc, visual studio code 확장 설치 solidity Solidity is the language used in Ethereum to create smart contracts, this extension provides: Syntax highlighting Snippets Compilation of the current contract (Press F1 Solidity : Compile Current Solidity Contract), or F5 Compilation of all the contracts (Press F1 Solidity : Compile all Solidity Contracts), or Ctrl + F5 or Cmd + F5 Code completion for all c..
-
Remix에서 solidity 코드 작성 컴파일 배포 ExBlockchain 2022. 11. 28. 17:05
Remix 에서 solidity 코드 작성 컴파일 배포 Ex 준비 웹브라우저로 아래 주소 접속 https://remix.ethereum.org/ 초기 접속 화면 개선 정보 제공, 거절해도 문제 없다. Workspace생성 소스파일 생성 Solidity 코드 작성 아래 solidity 코드 입력 pragma solidity ^0.6.0; contract T1 { uint public val1; address public who1; address public mastaddr; constructor() public { mastaddr = msg.sender; } function increment (uint n) public { val1 = val1 + n; } } 컴파일 compile을 해야 다음 단계에 "d..
-
비잔티움 장군 문제(Byzantine Generals Problem)Blockchain 2022. 11. 13. 23:40
비잔티움 장군 문제(Byzantine Generals Problem) 두 장군의 문제(Two Generals Problem) 비잔티움 장군 문제는 두 장군 문제(Two Generals Problem)를 일반화한 문제다. 비잔티움 장군 문제는 1982년 제시된 논리적 딜레마로 비잔티움의 장군들이 서로의 행동을 합의하려 할 때 발생할 수 있는 의사소통의 문제에 관한 것이다. https://www.microsoft.com/en-us/research/uploads/prod/2016/12/The-Byzantine-Generals-Problem.pdf 비잔티움 장애 허용(Byzantine Fault Tolerance) 비잔티움 장군 문제(영어: Byzantine Generals Problem)로부터 파생된 장애 허..