SlideShare a Scribd company logo
1 of 27
© Hitachi America, Ltd. 2019. All rights reserved.
Hyperledger Weather Report 2/19/2019
Satoshi Oshima (大島 訓)
Senior Researcher
Financial Innovation Lab.
Global Center for Social Innovation
Hitachi America Ltd.
Hyperledger Tokyo Meetup 2/19/2019
© Hitachi America, Ltd. 2019. All rights reserved.
Agenda
1. Hyperledger Community Update
2. Hyperledger Fabric Update
© Hitachi America, Ltd. 2019. All rights reserved.
Agenda
1. Hyperledger Community Update
2. Hyperledger Fabric Update
© Hitachi America, Ltd. 2019. All rights reserved.
1.1. Governing Board update
• Blythe Masters (Digital Asset Holdings) resigned
Governing Board Chair.
• Robert Platnick (DTCC) was elected as new
Governing Board Chair.
© Hitachi America, Ltd. 2019. All rights reserved.
1.2. Technical Steering Committee update
• Chris Ferris (IBM) had worked as Technical
Steering Committee (TSC) chair since Feb/2016.
• Dan Middleton (Intel) was elected as TSC chair
from Sep/2019.
© Hitachi America, Ltd. 2019. All rights reserved.
1.3. Hyperledger Staff update
• Todd Benzies step up as Sr. Director
Program Management & Operations
• Tracy Kuhrt was community architect
and left Hyperledger staff.
– She was the key staff to host Hyperledger
developer's event.
• Ry jones works as community
architect.
© Hitachi America, Ltd. 2019. All rights reserved.
1.4. Hyperledger Project update
• Hyperledger Ursa became an incubation project.
– Hyperledger Ursa is the shared crypt library for Hyperledger projects.
– Hyperledger Ursa contains sub-projects.
• Base Crypt Library: Shared modular signature library
• Z-Mix: (to be) zero-knowledge proofs library
• Hyperledger Grid
– reference implementations of supply chain-centric data types, data
models, and smart contract based business logic
© Hitachi America, Ltd. 2019. All rights reserved.
1.5. Hyperledger Event update
• Hyperledger Member Summit
– Annual, all member company hold the seat to attend
– 2017: Singapore, 2018: Montreal, 2019: Tokyo
• Hyperledger Hackfest
– Developers get together, discuss technical direction and exchange the
information among projects.
– 4 times a year (east coast, west coast, Europe, Asia) but cancelled.
• Hyperledger Bootcamp
– First attempt held in Hong Kong on Mar/7-8.
• Hyperledger Contributors Summit
– Planning
© Hitachi America, Ltd. 2019. All rights reserved.
Agenda
1. Hyperledger Community Update
2. Hyperledger Fabric Update
© Hitachi America, Ltd. 2019. All rights reserved.
2.1. Hyperledger Fabric 1.4 LTS
• Released on Jan/11/2019
• Improved stability and production operations
© Hitachi America, Ltd. 2019. All rights reserved.
2.2. Improved Serviceability
• Operations Services
– Motivation
• Monitoring is required in production systems
– Feature
• Introduced operations service which provides health information and metrics.
• Metrics provided are based on Prometheus
– Metrics
• Launch time for chaincode
• Memory status in Go runtime
– Heap etc.
• Process status
– File descriptors, memory, CPU times
Orderer
Prometheus
Peer
Peer
Peer
© Hitachi America, Ltd. 2019. All rights reserved.
2.3. Improved Programming Model
• High-level API (“fabric-network”, “fabric-contract-api”) in NodeJS
– Motivation
• Existing API are too low-level and developers have to care too many things
– Feature
• Provide High-level API for applications and chaincodes to enable developers to
concentrate on business logics
• Existing low-level APIs are also supported
Application
fabric
network
*The image was based on https://jira.hyperledger.org/secure/attachment/16735/fabric-sdk-programming-model.pdf
© Hitachi America, Ltd. 2019. All rights reserved.
2.4. Private data enhancements
• Enhancements in Private Data (Side DB)
– Motivation
• A peer who is not active in the transaction can not receive the private data in the
transaction even if it is entitled to receive it. (Issues for newly added peers or
organizations)
• Access control to the private data should be explicitly written in a chaincode logic
– Features
• Reconciliation
– A newly added peer receives the private data in the past transactions by gossip protocol from
other peers
• Client access control
– By setting the “memberOnlyRead” flag in the private data collection, Fabric automatically
checks whether the creator of the transaction is entitled to access the private data
© Hitachi America, Ltd. 2019. All rights reserved.
2.5. Is Fabric 1.4 really Long Term Support?
• Fabric 1.4 LTS will be supported for "ONE" year by Hyperledger
Fabric development community.
• Currently, no maintenance policy is defined. No dedicated
maintainer is assigned.
• Fabric 1.4.1 will support Raft consensus for orderer in addition to
Kafka.
© Hitachi America, Ltd. 2019. All rights reserved.
2.6. What's going on for Fabric 2.0
• Fabric 2.0 Beta will be released in April hopefully
• New Chaincode lifecycle model
• Additional operational metrics
• Programming model improvement and porting to JavaSDK
• Token: UTXO base data management model
© Hitachi America, Ltd. 2019. All rights reserved.© Hitachi America, Ltd. 2018. All rights reserved.
Hitachi is a Premier Member of Hyperledger and one of the leading
contributors to Hyperledger Fabric
etc.
• Trustful Application as
“Smart Contract”
• Consensus Mechanism
• Immutable Ledger
Contributor Ranking by Company*
1 IBM
2 Hitachi
3 IT People
*1: Number of commits from v1.0 until v1.1 release​ (official Git
repositories (fabric v1.1 supported))
*2: Excludes Gmail, Hotmail, etc.
Hitachi provides “Blockchain
Environment Cloud Service“ based on
Hyperledger Fabric
2.7. Hitachi’s contribution to Hyperledger Fabric
© Hitachi America, Ltd. 2019. All right reserved.
© Hitachi America, Ltd. 2018. All rights reserved.
© Hitachi America, Ltd. 2019. All rights reserved.
APPENDIX
© Hitachi America, Ltd. 2019. All rights reserved.
Improved Serviceability (1/6)
• Operations Service
– Provides health information and metrics of peers and orderers for
monitoring needed in production systems
– Metrics are exported in either two ways:
• “Pull” model based on Prometheus
– An external tool accesses the endpoint of the peer/orderer (pulls metrics from peer/orderer)
• “Push” model based on StatsD
– The peer/orderer periodically pushes metrics to the specified server
Reference: https://hyperledger-fabric.readthedocs.io/en/release-1.4/operations_service.html
© Hitachi America, Ltd. 2019. All rights reserved.
Improved Serviceability (2/6) – Health Information
• Health information
– By default, health information is available on Port 8443 (orderer) or 9443
(peer)
– When some error occurs, it returns 503 and the reason as JSON.
$ curl http://localhost:9443/healthz
{"status":"OK","time":"2019-02-08T22:15:44.769565359Z"}
{"status": "Service Unavailable",
"time": "2009-11-10T23:00:00Z",
"failed_checks": [{
"component": "docker",
"reason": "failed to connect to Docker daemon: invalid endpoint"
}]}
© Hitachi America, Ltd. 2019. All rights reserved.
Improved Serviceability (3/6) – Metrics
• Metrics (Prometheus)
– Can be enabled by editing core.yaml/orderer.yaml or an environment
variable as follows:
– The endpoint returns metrics for the peer/orderer
CORE_METRICS_PROVIDER=prometheus
$ curl http://localhost:9443/metrics
# HELP chaincode_launch_duration The time to launch a chaincode.
# TYPE chaincode_launch_duration histogram
chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.005"} 1
chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.01"} 1
chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.025"} 1
chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.05"} 1
...
© Hitachi America, Ltd. 2019. All rights reserved.
Improved Serviceability (4/6) – Metrics
• Metrics can be visualized with Prometheus or other tools..
© Hitachi America, Ltd. 2019. All rights reserved.
Improved Serviceability (5/6) – Metrics
• Metrics currently available:
– Launch time for chaincode
– Execution time for shim requests (GetState, PutState, etc.)
– GRPC connection counts/statuses
– Memory status in Go runtime (heap etc.)
– Ledger commit time
– Process status (file descriptors, memory, cpu times)
– etc.
© Hitachi America, Ltd. 2019. All rights reserved.
Improved Serviceability (6/6) – Bonus: Log level
• Log level now can be controlled dynamically
– Get the current log level
– Set the log level
$ curl http://localhost:9443/logspec
{"spec":"gossip=debug:debug"}
$ curl -X PUT -d '{"spec":"info"}' http://localhost:9443/logspec
$ curl http://localhost:9443/logspec
{"spec":"info"}
© Hitachi America, Ltd. 2019. All rights reserved.
New Programming Model (1/3)
• Improved (high-level) programming model in Node.js
– SDK / chaincode SDK in the previous versions were too low-level
– New programming model are intended to enable application developer to
easily write chaincodes and Fabric applications
• The low level (existing) APIs are also supported.
– Proposed and developed mainly by IBM developers in UK who used to be
in charge of Hyperledger Composer development.
© Hitachi America, Ltd. 2019. All rights reserved.
New Programming Model (2/3) - Application
• “fabric-network” library in Node.js SDK
– New Concepts (classes)
• Wallet : Identity (certificate and private key)
• Gateway : Connection information for peer(s)
• Network : Fabric channel
• Contract : Chaincode
const { FileSystemWallet, Gateway } = require('fabric-network');
const CommercialPaper = require('../contract/lib/paper.js’);
const wallet = new FileSystemWallet('../identity/user/isabella/wallet');
...
const gateway = new Gateway();
const userName = 'User1@org1.example.com’;
...
await gateway.connect(connectionProfile, connectionOptions);
const network = await gateway.getNetwork('mychannel');
const contract = await network.getContract('papercontract', 'org.papernet.commercialpaper');
const issueResponse = await contract.submitTransaction('issue’,
'MagnetoCorp', '00001', '2020-05-31', '2020-11-30', '5000000');
© Hitachi America, Ltd. 2019. All rights reserved.
New Programming Model (3/3) - Chaincode
• “fabric-contract-api” in Node.js Chaincode
– Contract
• Function routing implemented with namespaces
• Hooks (executed before/after invokes)
(Contract Example)
const { Contract, Context } = require('fabric-contract-api');
...
class CommercialPaperContract extends Contract {
constructor() {
super('org.papernet.commercialpaper');
}
...
async issue(ctx, issuer, paperNumber, issueDateTime, maturityDateTime, faceValue) {
let paper = CommercialPaper.createInstance(issuer, paperNumber,
issueDateTime, maturityDateTime, faceValue);
paper.setIssued();
paper.setOwner(issuer);
await ctx.paperList.addPaper(paper);
return paper.toBuffer();
}
...
}

More Related Content

What's hot

NetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsNetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO Configurations
Hank Preston
 

What's hot (20)

Introducing PMDK into PostgreSQL
Introducing PMDK into PostgreSQLIntroducing PMDK into PostgreSQL
Introducing PMDK into PostgreSQL
 
PostgreSQL 10: What to Look For
PostgreSQL 10: What to Look ForPostgreSQL 10: What to Look For
PostgreSQL 10: What to Look For
 
Container security within Cisco Container Platform
Container security within Cisco Container PlatformContainer security within Cisco Container Platform
Container security within Cisco Container Platform
 
Why Automate the Network?
Why Automate the Network?Why Automate the Network?
Why Automate the Network?
 
NetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO ConfigurationsNetBox as the Source of Truth for Cisco NSO Configurations
NetBox as the Source of Truth for Cisco NSO Configurations
 
Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...
 
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
Triangle Kubernetes Meetup: Container cloud networking - Contiv for K8S & Ope...
 
Chips alliance omni xtend overview
Chips alliance omni xtend overviewChips alliance omni xtend overview
Chips alliance omni xtend overview
 
Securing k8s With Kubernetes Goat
Securing k8s With Kubernetes GoatSecuring k8s With Kubernetes Goat
Securing k8s With Kubernetes Goat
 
Swimming upstream
Swimming upstreamSwimming upstream
Swimming upstream
 
How to be a Network Engineer in a Programmable Age
How to be a Network Engineer in a Programmable AgeHow to be a Network Engineer in a Programmable Age
How to be a Network Engineer in a Programmable Age
 
Model-driven Telemetry: The Foundation of Big Data Analytics
Model-driven Telemetry: The Foundation of Big Data AnalyticsModel-driven Telemetry: The Foundation of Big Data Analytics
Model-driven Telemetry: The Foundation of Big Data Analytics
 
Kubernetes in Higher Education
Kubernetes in Higher EducationKubernetes in Higher Education
Kubernetes in Higher Education
 
OpenStack-Based NFV Cloud at Swisscom: challenges and best practices
OpenStack-Based NFV Cloud at Swisscom: challenges and best practicesOpenStack-Based NFV Cloud at Swisscom: challenges and best practices
OpenStack-Based NFV Cloud at Swisscom: challenges and best practices
 
給 RD 的 Kubernetes 初體驗 (gcpug 2019-06 version)
給 RD 的 Kubernetes 初體驗 (gcpug 2019-06 version)給 RD 的 Kubernetes 初體驗 (gcpug 2019-06 version)
給 RD 的 Kubernetes 初體驗 (gcpug 2019-06 version)
 
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
Debug, Analyze and Optimize Games with Intel Tools - Matteo Valoriani - Codem...
 
OaaS:Open as a Strategy
OaaS:Open as a StrategyOaaS:Open as a Strategy
OaaS:Open as a Strategy
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
 
Secure GitOps pipelines for Kubernetes with Snyk & Weaveworks
Secure GitOps pipelines for Kubernetes with Snyk & WeaveworksSecure GitOps pipelines for Kubernetes with Snyk & Weaveworks
Secure GitOps pipelines for Kubernetes with Snyk & Weaveworks
 
Learn OpenStack from trystack.cn
Learn OpenStack from trystack.cnLearn OpenStack from trystack.cn
Learn OpenStack from trystack.cn
 

Similar to Hyperledger weatherreport20190219 公開版

Big Data - Hadoop and MapReduce for QA and testing by Aditya Garg
Big Data - Hadoop and MapReduce for QA and testing by Aditya GargBig Data - Hadoop and MapReduce for QA and testing by Aditya Garg
Big Data - Hadoop and MapReduce for QA and testing by Aditya Garg
QA or the Highway
 

Similar to Hyperledger weatherreport20190219 公開版 (20)

Beginner's Guide to High Availability for Postgres - French
Beginner's Guide to High Availability for Postgres - FrenchBeginner's Guide to High Availability for Postgres - French
Beginner's Guide to High Availability for Postgres - French
 
3 Reasons to Select Time Series Platforms for Cloud Native Applications Monit...
3 Reasons to Select Time Series Platforms for Cloud Native Applications Monit...3 Reasons to Select Time Series Platforms for Cloud Native Applications Monit...
3 Reasons to Select Time Series Platforms for Cloud Native Applications Monit...
 
Advanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsAdvanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applications
 
Open Sourcing GemFire - Apache Geode
Open Sourcing GemFire - Apache GeodeOpen Sourcing GemFire - Apache Geode
Open Sourcing GemFire - Apache Geode
 
An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)
 
Beginners Guide to High Availability for Postgres
Beginners Guide to High Availability for PostgresBeginners Guide to High Availability for Postgres
Beginners Guide to High Availability for Postgres
 
Lessons Learned from Leveraging Real-Time Power Consumption Data with Apache ...
Lessons Learned from Leveraging Real-Time Power Consumption Data with Apache ...Lessons Learned from Leveraging Real-Time Power Consumption Data with Apache ...
Lessons Learned from Leveraging Real-Time Power Consumption Data with Apache ...
 
Public Sector Virtual Town Hall: High Availability for PostgreSQL
Public Sector Virtual Town Hall: High Availability for PostgreSQLPublic Sector Virtual Town Hall: High Availability for PostgreSQL
Public Sector Virtual Town Hall: High Availability for PostgreSQL
 
MongoDB World 2019: High Performance Auditing of Changes Based on MongoDB Cha...
MongoDB World 2019: High Performance Auditing of Changes Based on MongoDB Cha...MongoDB World 2019: High Performance Auditing of Changes Based on MongoDB Cha...
MongoDB World 2019: High Performance Auditing of Changes Based on MongoDB Cha...
 
What's New Overview for IBM Streams V4.3
What's New Overview for IBM Streams V4.3 What's New Overview for IBM Streams V4.3
What's New Overview for IBM Streams V4.3
 
Sdlc phases
Sdlc phasesSdlc phases
Sdlc phases
 
Sdlc phases
Sdlc phasesSdlc phases
Sdlc phases
 
Implementing security and availability requirements for banking API system us...
Implementing security and availability requirements for banking API system us...Implementing security and availability requirements for banking API system us...
Implementing security and availability requirements for banking API system us...
 
Genomics Deployments - How to Get Right with Software Defined Storage
 Genomics Deployments -  How to Get Right with Software Defined Storage Genomics Deployments -  How to Get Right with Software Defined Storage
Genomics Deployments - How to Get Right with Software Defined Storage
 
仕事ではじめる機械学習
仕事ではじめる機械学習仕事ではじめる機械学習
仕事ではじめる機械学習
 
DATAOPS: THE NEXT BIG WAVE ON YOUR DATA JOURNEY - Big Data Expo
DATAOPS: THE NEXT BIG WAVE ON YOUR DATA JOURNEY - Big Data ExpoDATAOPS: THE NEXT BIG WAVE ON YOUR DATA JOURNEY - Big Data Expo
DATAOPS: THE NEXT BIG WAVE ON YOUR DATA JOURNEY - Big Data Expo
 
Big Data - Hadoop and MapReduce for QA and testing by Aditya Garg
Big Data - Hadoop and MapReduce for QA and testing by Aditya GargBig Data - Hadoop and MapReduce for QA and testing by Aditya Garg
Big Data - Hadoop and MapReduce for QA and testing by Aditya Garg
 
Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for PostgresBeginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres
 
Cedar Day 2018 - Cloud IaaS - Ken MacMahon
Cedar Day 2018 - Cloud IaaS - Ken MacMahonCedar Day 2018 - Cloud IaaS - Ken MacMahon
Cedar Day 2018 - Cloud IaaS - Ken MacMahon
 
Mass Scale Networking
Mass Scale NetworkingMass Scale Networking
Mass Scale Networking
 

More from Hyperleger Tokyo Meetup

More from Hyperleger Tokyo Meetup (20)

Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
 
Hyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperledger FireFly - HYPERLEDGER Workshop, WebXHyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperledger FireFly - HYPERLEDGER Workshop, WebX
 
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
 
エンタープライズブロックチェーン構築の基礎
エンタープライズブロックチェーン構築の基礎エンタープライズブロックチェーン構築の基礎
エンタープライズブロックチェーン構築の基礎
 
ブロックチェーンを用いた自己主権型デジタルID管理
ブロックチェーンを用いた自己主権型デジタルID管理ブロックチェーンを用いた自己主権型デジタルID管理
ブロックチェーンを用いた自己主権型デジタルID管理
 
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
異種ブロックチェーン統合ツールHyperledger Cactiご紹介異種ブロックチェーン統合ツールHyperledger Cactiご紹介
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
 
ファイアフライ「蛍」FireFly to Public and Private Chains
ファイアフライ「蛍」FireFly to Public and Private Chainsファイアフライ「蛍」FireFly to Public and Private Chains
ファイアフライ「蛍」FireFly to Public and Private Chains
 
Hyperledger Fabric 概説
Hyperledger Fabric 概説Hyperledger Fabric 概説
Hyperledger Fabric 概説
 
Hyperledger Besuの動向
Hyperledger Besuの動向Hyperledger Besuの動向
Hyperledger Besuの動向
 
Hyperledger Iroha
Hyperledger IrohaHyperledger Iroha
Hyperledger Iroha
 
Hyperledger Aries 101
Hyperledger Aries 101Hyperledger Aries 101
Hyperledger Aries 101
 
Introduction; Blockchain 101
Introduction; Blockchain 101Introduction; Blockchain 101
Introduction; Blockchain 101
 
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出すTrusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
 
ブロックチェーン間のインターオペラビリティ概論
ブロックチェーン間のインターオペラビリティ概論ブロックチェーン間のインターオペラビリティ概論
ブロックチェーン間のインターオペラビリティ概論
 
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
 
Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜
Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜
Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜
 
Hyperledger Fabric Private Chaincodeについて
Hyperledger Fabric Private ChaincodeについてHyperledger Fabric Private Chaincodeについて
Hyperledger Fabric Private Chaincodeについて
 
Hyperledger Fabric活用事例:貿易プラットフォームTradeWaltz
Hyperledger Fabric活用事例:貿易プラットフォームTradeWaltzHyperledger Fabric活用事例:貿易プラットフォームTradeWaltz
Hyperledger Fabric活用事例:貿易プラットフォームTradeWaltz
 
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
 
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
 

Recently uploaded

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

Hyperledger weatherreport20190219 公開版

  • 1. © Hitachi America, Ltd. 2019. All rights reserved. Hyperledger Weather Report 2/19/2019 Satoshi Oshima (大島 訓) Senior Researcher Financial Innovation Lab. Global Center for Social Innovation Hitachi America Ltd. Hyperledger Tokyo Meetup 2/19/2019
  • 2. © Hitachi America, Ltd. 2019. All rights reserved. Agenda 1. Hyperledger Community Update 2. Hyperledger Fabric Update
  • 3. © Hitachi America, Ltd. 2019. All rights reserved. Agenda 1. Hyperledger Community Update 2. Hyperledger Fabric Update
  • 4. © Hitachi America, Ltd. 2019. All rights reserved. 1.1. Governing Board update • Blythe Masters (Digital Asset Holdings) resigned Governing Board Chair. • Robert Platnick (DTCC) was elected as new Governing Board Chair.
  • 5. © Hitachi America, Ltd. 2019. All rights reserved. 1.2. Technical Steering Committee update • Chris Ferris (IBM) had worked as Technical Steering Committee (TSC) chair since Feb/2016. • Dan Middleton (Intel) was elected as TSC chair from Sep/2019.
  • 6. © Hitachi America, Ltd. 2019. All rights reserved. 1.3. Hyperledger Staff update • Todd Benzies step up as Sr. Director Program Management & Operations • Tracy Kuhrt was community architect and left Hyperledger staff. – She was the key staff to host Hyperledger developer's event. • Ry jones works as community architect.
  • 7. © Hitachi America, Ltd. 2019. All rights reserved. 1.4. Hyperledger Project update • Hyperledger Ursa became an incubation project. – Hyperledger Ursa is the shared crypt library for Hyperledger projects. – Hyperledger Ursa contains sub-projects. • Base Crypt Library: Shared modular signature library • Z-Mix: (to be) zero-knowledge proofs library • Hyperledger Grid – reference implementations of supply chain-centric data types, data models, and smart contract based business logic
  • 8. © Hitachi America, Ltd. 2019. All rights reserved. 1.5. Hyperledger Event update • Hyperledger Member Summit – Annual, all member company hold the seat to attend – 2017: Singapore, 2018: Montreal, 2019: Tokyo • Hyperledger Hackfest – Developers get together, discuss technical direction and exchange the information among projects. – 4 times a year (east coast, west coast, Europe, Asia) but cancelled. • Hyperledger Bootcamp – First attempt held in Hong Kong on Mar/7-8. • Hyperledger Contributors Summit – Planning
  • 9. © Hitachi America, Ltd. 2019. All rights reserved. Agenda 1. Hyperledger Community Update 2. Hyperledger Fabric Update
  • 10. © Hitachi America, Ltd. 2019. All rights reserved. 2.1. Hyperledger Fabric 1.4 LTS • Released on Jan/11/2019 • Improved stability and production operations
  • 11. © Hitachi America, Ltd. 2019. All rights reserved. 2.2. Improved Serviceability • Operations Services – Motivation • Monitoring is required in production systems – Feature • Introduced operations service which provides health information and metrics. • Metrics provided are based on Prometheus – Metrics • Launch time for chaincode • Memory status in Go runtime – Heap etc. • Process status – File descriptors, memory, CPU times Orderer Prometheus Peer Peer Peer
  • 12. © Hitachi America, Ltd. 2019. All rights reserved. 2.3. Improved Programming Model • High-level API (“fabric-network”, “fabric-contract-api”) in NodeJS – Motivation • Existing API are too low-level and developers have to care too many things – Feature • Provide High-level API for applications and chaincodes to enable developers to concentrate on business logics • Existing low-level APIs are also supported Application fabric network *The image was based on https://jira.hyperledger.org/secure/attachment/16735/fabric-sdk-programming-model.pdf
  • 13. © Hitachi America, Ltd. 2019. All rights reserved. 2.4. Private data enhancements • Enhancements in Private Data (Side DB) – Motivation • A peer who is not active in the transaction can not receive the private data in the transaction even if it is entitled to receive it. (Issues for newly added peers or organizations) • Access control to the private data should be explicitly written in a chaincode logic – Features • Reconciliation – A newly added peer receives the private data in the past transactions by gossip protocol from other peers • Client access control – By setting the “memberOnlyRead” flag in the private data collection, Fabric automatically checks whether the creator of the transaction is entitled to access the private data
  • 14. © Hitachi America, Ltd. 2019. All rights reserved. 2.5. Is Fabric 1.4 really Long Term Support? • Fabric 1.4 LTS will be supported for "ONE" year by Hyperledger Fabric development community. • Currently, no maintenance policy is defined. No dedicated maintainer is assigned. • Fabric 1.4.1 will support Raft consensus for orderer in addition to Kafka.
  • 15. © Hitachi America, Ltd. 2019. All rights reserved. 2.6. What's going on for Fabric 2.0 • Fabric 2.0 Beta will be released in April hopefully • New Chaincode lifecycle model • Additional operational metrics • Programming model improvement and porting to JavaSDK • Token: UTXO base data management model
  • 16. © Hitachi America, Ltd. 2019. All rights reserved.© Hitachi America, Ltd. 2018. All rights reserved. Hitachi is a Premier Member of Hyperledger and one of the leading contributors to Hyperledger Fabric etc. • Trustful Application as “Smart Contract” • Consensus Mechanism • Immutable Ledger Contributor Ranking by Company* 1 IBM 2 Hitachi 3 IT People *1: Number of commits from v1.0 until v1.1 release​ (official Git repositories (fabric v1.1 supported)) *2: Excludes Gmail, Hotmail, etc. Hitachi provides “Blockchain Environment Cloud Service“ based on Hyperledger Fabric 2.7. Hitachi’s contribution to Hyperledger Fabric © Hitachi America, Ltd. 2019. All right reserved.
  • 17. © Hitachi America, Ltd. 2018. All rights reserved.
  • 18. © Hitachi America, Ltd. 2019. All rights reserved. APPENDIX
  • 19. © Hitachi America, Ltd. 2019. All rights reserved. Improved Serviceability (1/6) • Operations Service – Provides health information and metrics of peers and orderers for monitoring needed in production systems – Metrics are exported in either two ways: • “Pull” model based on Prometheus – An external tool accesses the endpoint of the peer/orderer (pulls metrics from peer/orderer) • “Push” model based on StatsD – The peer/orderer periodically pushes metrics to the specified server Reference: https://hyperledger-fabric.readthedocs.io/en/release-1.4/operations_service.html
  • 20. © Hitachi America, Ltd. 2019. All rights reserved. Improved Serviceability (2/6) – Health Information • Health information – By default, health information is available on Port 8443 (orderer) or 9443 (peer) – When some error occurs, it returns 503 and the reason as JSON. $ curl http://localhost:9443/healthz {"status":"OK","time":"2019-02-08T22:15:44.769565359Z"} {"status": "Service Unavailable", "time": "2009-11-10T23:00:00Z", "failed_checks": [{ "component": "docker", "reason": "failed to connect to Docker daemon: invalid endpoint" }]}
  • 21. © Hitachi America, Ltd. 2019. All rights reserved. Improved Serviceability (3/6) – Metrics • Metrics (Prometheus) – Can be enabled by editing core.yaml/orderer.yaml or an environment variable as follows: – The endpoint returns metrics for the peer/orderer CORE_METRICS_PROVIDER=prometheus $ curl http://localhost:9443/metrics # HELP chaincode_launch_duration The time to launch a chaincode. # TYPE chaincode_launch_duration histogram chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.005"} 1 chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.01"} 1 chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.025"} 1 chaincode_launch_duration_bucket{chaincode="cscc:1.4.0",success="true",le="0.05"} 1 ...
  • 22. © Hitachi America, Ltd. 2019. All rights reserved. Improved Serviceability (4/6) – Metrics • Metrics can be visualized with Prometheus or other tools..
  • 23. © Hitachi America, Ltd. 2019. All rights reserved. Improved Serviceability (5/6) – Metrics • Metrics currently available: – Launch time for chaincode – Execution time for shim requests (GetState, PutState, etc.) – GRPC connection counts/statuses – Memory status in Go runtime (heap etc.) – Ledger commit time – Process status (file descriptors, memory, cpu times) – etc.
  • 24. © Hitachi America, Ltd. 2019. All rights reserved. Improved Serviceability (6/6) – Bonus: Log level • Log level now can be controlled dynamically – Get the current log level – Set the log level $ curl http://localhost:9443/logspec {"spec":"gossip=debug:debug"} $ curl -X PUT -d '{"spec":"info"}' http://localhost:9443/logspec $ curl http://localhost:9443/logspec {"spec":"info"}
  • 25. © Hitachi America, Ltd. 2019. All rights reserved. New Programming Model (1/3) • Improved (high-level) programming model in Node.js – SDK / chaincode SDK in the previous versions were too low-level – New programming model are intended to enable application developer to easily write chaincodes and Fabric applications • The low level (existing) APIs are also supported. – Proposed and developed mainly by IBM developers in UK who used to be in charge of Hyperledger Composer development.
  • 26. © Hitachi America, Ltd. 2019. All rights reserved. New Programming Model (2/3) - Application • “fabric-network” library in Node.js SDK – New Concepts (classes) • Wallet : Identity (certificate and private key) • Gateway : Connection information for peer(s) • Network : Fabric channel • Contract : Chaincode const { FileSystemWallet, Gateway } = require('fabric-network'); const CommercialPaper = require('../contract/lib/paper.js’); const wallet = new FileSystemWallet('../identity/user/isabella/wallet'); ... const gateway = new Gateway(); const userName = 'User1@org1.example.com’; ... await gateway.connect(connectionProfile, connectionOptions); const network = await gateway.getNetwork('mychannel'); const contract = await network.getContract('papercontract', 'org.papernet.commercialpaper'); const issueResponse = await contract.submitTransaction('issue’, 'MagnetoCorp', '00001', '2020-05-31', '2020-11-30', '5000000');
  • 27. © Hitachi America, Ltd. 2019. All rights reserved. New Programming Model (3/3) - Chaincode • “fabric-contract-api” in Node.js Chaincode – Contract • Function routing implemented with namespaces • Hooks (executed before/after invokes) (Contract Example) const { Contract, Context } = require('fabric-contract-api'); ... class CommercialPaperContract extends Contract { constructor() { super('org.papernet.commercialpaper'); } ... async issue(ctx, issuer, paperNumber, issueDateTime, maturityDateTime, faceValue) { let paper = CommercialPaper.createInstance(issuer, paperNumber, issueDateTime, maturityDateTime, faceValue); paper.setIssued(); paper.setOwner(issuer); await ctx.paperList.addPaper(paper); return paper.toBuffer(); } ... }