読書時間:3.0h
一読:判定不能
再読:あり
R指定:なし
監修:早川勝
著者:清水智則/田町京子/上ノ原勇人/佐藤卓由/齋藤新/近藤仁/平山毅/笠原章弘/岩崎竜矢/小笠原万値
刊行:2018年6月
価格:3400円+税
出版:株式会社リックテレコム
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ブロックチェーンの概要
Hyperledger Fabricの概要
Hyperledger Fabricを動作させる
Hyperledger Fabricのアプリケーション開発
Composerを活用したアプリケーションの開発
Hyperledger Fabricの環境設定
![]()
docker exec peer0.org1.example.com peer chaincode query -C mychannel
-n marbles -c '{"Args":["read_everything"]}'
peerコマンド Hyperledger Fabric platform binaries curl
https://goo.gl/kFFqh5 | bash -s 1.0.6 ←Hyperledger Fabricのインストール
cryptogen
configtxgen
peer
chaincode
install
instantiate
invoke
package
query
signpackage
upgrade
channel
create
fetch
join
list
update
logging
node
status
start
version
orderer
core.yaml peerコマンドの設定ファイル
wget -Nq https://raw.githubusercontent.com/hyperledger/fabric/release-1.0/sampleconfig/core.yaml
peer -help
configtx.yaml ←basic-networkの中にある
docker-compose.yaml
environment
- FABRIC_CA_SERVER_TLS_CERTFILE ←FABRIC_CA_SERVER_CERTFILE は間違い
- FABRIC_CA_SERVER_TLS_KEYFILE ←FABRIC_CA_SERVER_KEYFILE は間違い
honya.go
func (this *CarTransferCC) Init(stub shim.ChaincodeStubInterface) pb.response {
logger := shim.NewLogger("cartransfer")
logger.info("chaincode intialized")
logger.infof("chaincode intialized%s", "honya")
return shim.Success([]byte{})
}
shim
ChaincodeStubInterface
Success
Error
NewLogger
NewMockStub
ChaincodeStubInterface
GetArgs
GetAtringArgs
GetFunctionAndParameters
GetArgSlice
GetTxTimestamp
GetTxID
CreateCompositKey
PutState
GetState
GetStateByPartialCompositKey
GetStateByRange
honya := new(package.Honya)
err := json.Unmarshal([]byte(args[0]), honya)
var id, id2 string
err := json.Unmarshal([]byte(args[0]), &id)
msg := fmt.Sprintf("%s", id)
iter, err := stub.GetStateByPartialCompositKey("Car", []string{})
iter.HasNext
iter.Next
defer iter.Close() メソッドから抜けたときに自動的に呼ばれる
honyas := []*package.Honya{}
honyas = append(honyas, honya)
go get -u github.com/kardianos/govendor
govendor init
-------------------
let eh = client.newEventHub()
eh.setPeerAddr(
CONFIG[targetOrg].peer1.events,
{
pem: Buffer.from(edata).toString(),
'ssl-target-name-override': CONFIG[targetOrg].peer1['server-hostname'],
'grpc.http2.keepalive_time': 15
}
);
eh.connect();
ehs.push(eh); ←ehsの定義が無い
register.js: default.jsonのusers変数で指定されたユーザーを登録します
composer Hyperledgerfabric
v0.16x v1.0.5
v0.19x v1.1 GA Only
npm install -g composer-cli@0.16.6
crypto-config.yaml
http://localhost:5984/_utils/
