Ethereum 기반 블록체인을 구축할 수 있는 Kaleido를 만져 보았다
가이 우물
Ethereum 기반 블록체인을 구축할 수 있는 AWS의 서비스입니다.
현재는 무료로 시도할 수 있습니다.
튜토리얼
※AWS 계정 필요
Kaleido 소개
아래 링크에서 "Continue to Subscrbe"를 수행합니다.
htps : // 아 ws. 아마존. 코 m / 마르 tp ぁ 세 / p / B07 CSLDS7R
이후는 화면에 따라, Kaleido의 계정 작성등을 실시해 주세요.
블록체인 구축
Create Environment
이름, 공급자, 합의를 지정합니다. 이번에는 Sample, Quorum, Raft를 지정했습니다.
컨센서스 알고리즘에 대해서는 아래가 상세합니다.
Raft는 블록 생성 시간이 짧고 일반적인 네트워크에서의 평균 블록 생성 시간은 1초 미만이다.
ぇtps : // 이오 / 콘센스 s-A l 고리 thms- Poa-i bft-r-r ft /
MAINNET ANCHOR
이대로 FINISH합니다.
노드 만들기
노드의 이름을 설정합니다.
App Credential 만들기
노드 생성 화면에서 Generate additional credential을 선택합니다.
NAME 설정
사용자 이름과 암호가 발급되므로 메모
truffle에서 배포까지
truffle 설치
npm install -g truffle
프로젝트 폴더 만들기
mkdir truffleProject && cd truffleProject
프로젝트 초기화
npm init
때의 entry point는 truffle.js를 설정했습니다.
truffle init
npm init
계약 작성
이후에는 Visual Studio Code를 사용하여 작업했습니다.
contract 폴더에서 SimpleStorage.sol을 만들고 다음 코드를 작성합니다.
SimpleStorage.solpragma solidity ^0.4.23;
contract SimpleStorage {
uint public storedData;
constructor(uint initVal) public {
storedData = initVal;
}
function set(uint x) public {
storedData = x;
}
function get() view public returns (uint retVal) {
return storedData;
}
}
마이그레이션 파일 작성
migrations 폴더에서 2_deploy_simplestorage.js를 만들고 다음 코드를 작성합니다.
2_deploy_simplestorage.jsconst SimpleStorage = artifacts.require("SimpleStorage");
module.exports = function (deployer) {
deployer.deploy(SimpleStorage, 123);
};
Web3 설치
※1.0계에서는 truffle.js로 에러가 발생해, 동작하지 않았습니다.
npm install [email protected] --save
네트워크 설정
truffle.js를 다시 씁니다.
truffle.jsvar Web3 = require('web3');
const endpoint = "";
const user = "";
const pass = "";
module.exports = {
networks: {
sample_node: {
provider: new Web3.providers.HttpProvider(endpoint, 0, user, pass),
network_id: "*", // Match any network id
gasPrice: 0,
gas: 4500000
},
}
};
endpoint는 작성한 노드의 Details에 대한 "RPC ENDPOINT"를 입력합니다.
user와 pass는 방금 만든 credential의 값을 입력합니다.
sh 만들기
RAFT 컨센서스를 실행하는 Quorum 네트워크는 truffle에서 배포가 느리므로 셸을 만들어 해결합니다.
프로젝트 바로 아래에 truffle_migrate.sh를 만듭니다.
truffle_migrate.sh#!/bin/bash
truffle migrate --network sample_node --reset > /dev/null &
sleep 1
set -x
truffle migrate --network sample_node --reset
계약 배포
chmod +x truffle_migrate.sh
./truffle_migrate.sh
계약이 배포되었는지 확인
KALEIDO Block Explorer에서 확인할 수 있습니다.
계약을 만져보세요
truffle console --network sample_node
저장된 값 확인
SimpleStorage.deployed().then(function(instance){return instance.get()});
> BigNumber { s: 1, e: 2, c: [ 123 ] }
상태 변수 업데이트
SimpleStorage.deployed().then(function(instance){return instance.set(234)});
다시 저장된 값 확인
SimpleStorage.deployed().then(function(instance){return instance.get()});
> BigNumber { s: 1, e: 2, c: [ 234 ] }
요약
Kaleido를 사용하여 자체 블록체인을 만들 수 있었습니다.
Raft는 정말로 빨랐기 때문에 사용해 보려고 생각했습니다.
참고
KALEIDO - Docs
h tp // // 안녕하세요. 아니. 이오 / 도 cs / 도 cs / 칭찬 /
Connecting with Truffle
h tp : // / 안녕하세요. 아니. 이오/도 cs/도 cs/t 루 fぇ/
Reference
이 문제에 관하여(Ethereum 기반 블록체인을 구축할 수 있는 Kaleido를 만져 보았다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Mr_Y/items/25056e7eb890fcd5c5bc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
※AWS 계정 필요
Kaleido 소개
아래 링크에서 "Continue to Subscrbe"를 수행합니다.
htps : // 아 ws. 아마존. 코 m / 마르 tp ぁ 세 / p / B07 CSLDS7R
이후는 화면에 따라, Kaleido의 계정 작성등을 실시해 주세요.
블록체인 구축
Create Environment
이름, 공급자, 합의를 지정합니다. 이번에는 Sample, Quorum, Raft를 지정했습니다.
컨센서스 알고리즘에 대해서는 아래가 상세합니다.
Raft는 블록 생성 시간이 짧고 일반적인 네트워크에서의 평균 블록 생성 시간은 1초 미만이다.
ぇtps : // 이오 / 콘센스 s-A l 고리 thms- Poa-i bft-r-r ft /
MAINNET ANCHOR
이대로 FINISH합니다.
노드 만들기
노드의 이름을 설정합니다.
App Credential 만들기
노드 생성 화면에서 Generate additional credential을 선택합니다.
NAME 설정
사용자 이름과 암호가 발급되므로 메모
truffle에서 배포까지
truffle 설치
npm install -g truffle
프로젝트 폴더 만들기
mkdir truffleProject && cd truffleProject
프로젝트 초기화
npm init
때의 entry point는 truffle.js를 설정했습니다.truffle init
npm init
계약 작성
이후에는 Visual Studio Code를 사용하여 작업했습니다.
contract 폴더에서 SimpleStorage.sol을 만들고 다음 코드를 작성합니다.
SimpleStorage.sol
pragma solidity ^0.4.23;
contract SimpleStorage {
uint public storedData;
constructor(uint initVal) public {
storedData = initVal;
}
function set(uint x) public {
storedData = x;
}
function get() view public returns (uint retVal) {
return storedData;
}
}
마이그레이션 파일 작성
migrations 폴더에서 2_deploy_simplestorage.js를 만들고 다음 코드를 작성합니다.
2_deploy_simplestorage.js
const SimpleStorage = artifacts.require("SimpleStorage");
module.exports = function (deployer) {
deployer.deploy(SimpleStorage, 123);
};
Web3 설치
※1.0계에서는 truffle.js로 에러가 발생해, 동작하지 않았습니다.
npm install [email protected] --save
네트워크 설정
truffle.js를 다시 씁니다.
truffle.js
var Web3 = require('web3');
const endpoint = "";
const user = "";
const pass = "";
module.exports = {
networks: {
sample_node: {
provider: new Web3.providers.HttpProvider(endpoint, 0, user, pass),
network_id: "*", // Match any network id
gasPrice: 0,
gas: 4500000
},
}
};
endpoint는 작성한 노드의 Details에 대한 "RPC ENDPOINT"를 입력합니다.
user와 pass는 방금 만든 credential의 값을 입력합니다.
sh 만들기
RAFT 컨센서스를 실행하는 Quorum 네트워크는 truffle에서 배포가 느리므로 셸을 만들어 해결합니다.
프로젝트 바로 아래에 truffle_migrate.sh를 만듭니다.
truffle_migrate.sh
#!/bin/bash
truffle migrate --network sample_node --reset > /dev/null &
sleep 1
set -x
truffle migrate --network sample_node --reset
계약 배포
chmod +x truffle_migrate.sh
./truffle_migrate.sh
계약이 배포되었는지 확인
KALEIDO Block Explorer에서 확인할 수 있습니다.
계약을 만져보세요
truffle console --network sample_node
저장된 값 확인
SimpleStorage.deployed().then(function(instance){return instance.get()});
> BigNumber { s: 1, e: 2, c: [ 123 ] }
상태 변수 업데이트
SimpleStorage.deployed().then(function(instance){return instance.set(234)});
다시 저장된 값 확인
SimpleStorage.deployed().then(function(instance){return instance.get()});
> BigNumber { s: 1, e: 2, c: [ 234 ] }
요약
Kaleido를 사용하여 자체 블록체인을 만들 수 있었습니다.
Raft는 정말로 빨랐기 때문에 사용해 보려고 생각했습니다.
참고
KALEIDO - Docs
h tp // // 안녕하세요. 아니. 이오 / 도 cs / 도 cs / 칭찬 /
Connecting with Truffle
h tp : // / 안녕하세요. 아니. 이오/도 cs/도 cs/t 루 fぇ/
Reference
이 문제에 관하여(Ethereum 기반 블록체인을 구축할 수 있는 Kaleido를 만져 보았다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Mr_Y/items/25056e7eb890fcd5c5bc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
KALEIDO - Docs
h tp // // 안녕하세요. 아니. 이오 / 도 cs / 도 cs / 칭찬 /
Connecting with Truffle
h tp : // / 안녕하세요. 아니. 이오/도 cs/도 cs/t 루 fぇ/
Reference
이 문제에 관하여(Ethereum 기반 블록체인을 구축할 수 있는 Kaleido를 만져 보았다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Mr_Y/items/25056e7eb890fcd5c5bc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)