SlideShare a Scribd company logo
Introduction
Problem
Solution
Hyperledger History
December 2015 the Linux Foundation announced the creation of the
Hyperledger Project
February 2016 The founding members of the project were announced
In early 2016, the project began accepting proposals for incubation of codebases
and other technologies as core elements.
12 July 2017 the project announced its production-ready Hyperledger Fabric 1.0
and it started to gain popularity
July 2017 London Stock Exchange Group in a partnership with IBM announced
that it will create a Blockchain platform designed for digitally issuing shares of
Italian companies. Hyperledger Fabric will form the basis of the platform
September 2017 The Royal Bank of Canada (RBC) have started using
Hyperledger Fabric for its US - Canada interbank settlements.
What is Hyperledger?
Where are we now?
Benefits of Private
Blockchains
1. 100%	Uptime
2. Solves	the	Byzantium	Generals	problem	for	data	
synchronization
3. The	data	are	Immutable	/	Incorruptible
4. The	algorithm	is	Immutable	/	Incorruptible
5. Traceable
When do you need a
blockchain?
When not to use
Blockchain
1. The	process	stores	a	lot	of	static	data,	or	the	data	is	quite	
large
2. Rules	of	transactions	change	frequently
3. The	use	of	external	services	to	gather/store	data
Bitcoin Ethereum Hyperledger Frameworks
Cryptocurrency based Yes Yes No
Permissioned No No Yes (in general)
Pseudo-anonymous Yes No No
Auditable Yes Yes Yes
Immutable ledger Yes Yes Yes
Modularity No No Yes
Smart contracts No Yes Yes
Consensus protocol PoW PoW Various**
Comparing
blockchains
**Key	Hyperledger consensus	protocols	are	Apache	Kafka	in	Hyperledger Fabric,	PoET in	Hyperledger Sawtooth,	RBFT	
in	Hyperledger Indy,	Tendermint in	Hyperledger Burrow,	and	Yet	Another	Consensus	(YAC)	in	Hyperledger Iroha.	For	
more	details,	see	the	Hyperledger	Architecture,	Volume	1 paper.
Other Hyperledger
Blockchains
HYPERLEDGER
Burrow
HYPERLEDGER	FABRIC
Other Hyperledger
Tools
Cello
Composer
Explorer
Quilt
Hyperledger Cello:	Implement	Blockchain-as-a-Service	and	contributed	by	IBM.	Baohua Yang	and	Haitao
Yue	from	IBM	Research	are	committed	part-time	to	developing	and	maintaining	the	project.	
Hyperledger Composer:	Blockchain package	management	tooling	contributed	by	IBM.	Composer	is	a	
user-facing	rapid	prototyping	tooling,	running	on	top	of	Hyperledger Fabric,	which	allows	the	easy	
management	of	Assets	(data	stored	on	the	blockchain),	Participants	(identity	management,	or	member	
services)	and	Transactions	(Chaincode,	or	Smart	Contracts	which	operate	on	Assets	on	the	behalf	of	a	
Participant).	The	resulting	application	can	be	exported	as	a	package	(a	BNA	file)	which	may	be	executed	
on	a	Hyperledger Fabric	instance,	with	the	support	of	a	Node.js application	(based	on	the	Loopback	
application	framework)	and	provide	a	REST	interface	to	external	applications.
Hyperledger Explorer: Blockchain analytics	tooling	contributed	by	IBM,	Intel,	and	DTCC.
Hyperledger Quilt:	Transfer	value	between	and	outside	of	distributed	ledgers.	Uses	the	ILP											
payments	protocol.
Products
Hyperledger
Hyperledger
Indy
Hyperledger
Quilt
Hyperledger
Fabric
Hyperledger
Composer
Hyperledger
Explorer
Hyperledger
Cello
Hyperledger
Iroha
Hyperledger
Sawtooth
Hyperledger
Burrow
Frameworks
Tools
What is Hyperledger
Fabric?
Fabric: Key Points
1. Smart	Contracts:	A	shared	ledger	and	smart	contracts	
implemented	as	‘chaincode’
2. Identity	Management:	Privacy	and	permissioning through	
membership	services	enables	confidentiality.
3. Flexible:	Modular	architecture	and	flexible	hosting	options
4. Efficient	processing:	Practical	Byzantine	Fault	Tolerant.
The Lifecycle of a
Smart Contract
Client
Ordering	
Service
Peers
Creates	the	
Smart	
Contract	/	
Transaction
Creates	a	
Block
Accepts	the	
Block	onto	
the	
Blockchain
Peers
Validates	
Transaction
Client
Signs	
Transaction
SDKs
Smart
Contracts
Composer Language,
Libraries and
Frameworks
generator-hyperledger-
composer
Yeoman
skeleton Angular
Application
Angular
Hyperledger	Composer	Components
CLI
composer-cli
REST	Server
composer-rest-
server
Loopback
Connector
Web	Playground
JavaScript	SDK
Supported	Runtimes
Embedded
Node.js
Hyperledger	
Fabric
Web
Yeoman	generates	a	
skeleton	Angular	app.
This	communicates	with	the	REST	api	
generated	by	the	Composer	REST	Server.
ID	Cards	(connection	profiles	and	credentials)	are	
used	to	connect	to	the	distributed	ledger.
Hyperledger Dapp
(Client)
Hyperledger
Composer Project
Structure
Set-up
Open a Terminal from your desktop and move into
the hyperledger directory:
cd ~/hyperledger/my-network
Then type:
code .
To open your IDE.
README.md
Replace all the text in this directory
with:
# My Commodity Trading Network
package.json
Change the text highlighted in Yellow below:
"name": "my-network",
"version": "0.1.6",
"description": "My Commodity Trading network",
"networkImage": "https://hyperledger.github.io/composer-sample-
networks/packages/basic-sample-network/networkimage.svg",
"networkImageanimated":
"https://hyperledger.github.io/composer-sample-networks/packages/basic-sample-
network/networkimageanimated.svg",
"scripts": {
"prepublish": "mkdirp ./dist ; composer archive create --sourceType dir --
sourceName . -a ./dist/my-network.bna",
Model File (.cto)
A Hyperledger Composer CTO file is composed of the following
elements:
● A single namespace. All resource declarations within the file are
implicitly in this namespace.
● A set of resource definitions
● Assets
● Transactions
● Participants
● Events.
● Optional import declarations that import resources from other
namespaces.
CTO Language:
https://hyperledger.github.io/composer/reference/cto_language.html
Model File (.cto)
/**
* Commodity trading network
*/
namespace org.acme.mynetwork
asset Commodity identified by
tradingSymbol {
o String tradingSymbol
o String description
o String mainExchange
o Double quantity
--> Trader owner
}
participant Trader identified by
traderId {
o String traderId
o String firstName
o String lastName
}
transaction Trade {
--> Commodity commodity
--> Trader newOwner
}
Transaction Processing
File (.js)
(aka the business logic)
Transaction processor functions are automatically invoked by the runtime
when transactions are submitted using the BusinessNetworkConnection API.
/**
* A transaction processor function description
* @param {org.example.sampleTransaction} parameter-name A human
description of the parameter
* @transaction
*/
Document:
https://hyperledger.github.io/composer/reference/js_scripts.html
Logic File (.js) /**
* Track the trade of a commodity from one trader to
another
* @param {org.acme.mynetwork.Trade} trade - the
trade to be
* processed
* @transaction
*/
function tradeCommodity(trade) {
// set the new owner of the commodity
trade.commodity.owner = trade.newOwner;
return
getAssetRegistry('org.acme.mynetwork.Commodity')
.then(function (assetRegistry) {
// persist the state of the commodity
return
assetRegistry.update(trade.commodity);
});
}
Access Control
Langage (acl)
Hyperledger Composer differentiates between access control for resources
within a business network (business access control) and access control for
network administrative changes (network access control). Business access
control and network access control are both defined in the access control file
(.acl) for a business network.
Network access control uses the system namespace, which is implicitly
extended by all resources in a business network; and grants or denies access
to specific actions as defined below, and is intended to allow for more
nuanced access to certain network-level operations.
Document:
https://hyperledger.github.io/composer/reference/acl_language.html
Permissions (.acl)
/**
* Access control rules for mynetwork
*/
rule Default {
description: "Allow all participants full access"
participant: "ANY"
operation: ALL
resource: "org.acme.mynetwork.*"
action: ALLOW
}
rule SystemACL {
description: "System ACL to permit all access"
participant:
"org.hyperledger.composer.system.Participant"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
Hyperledger
Composer Query
Language
Queries in Hyperledger Composer are written in a bespoke query
language.
Queries can be written with undefined parameters that must be
supplied when running the query. For example, the following query
returns all drivers where the age property is greater than the supplied
parameter:
query Q17 {
description: "Select all drivers aged older than PARAM"
statement:
SELECT org.acme.Driver
WHERE (_$ageParam < age)
}
Document:
https://hyperledger.github.io/composer/reference/query-language.html
Queries (.qry)
query selectCommoditiesByOwner {
description: "Select all commodities based on
their owner"
statement:
SELECT org.acme.mynetwork.Commodity
WHERE (owner == _$owner)
}
Generate our
Business Network
Archive (.bna)
In the terminal type:
npm install
When this command is complete, move into the dist directory and deploy the network.
cd dist
composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString
Wait for ‘command succeeded’
(Extra Time: Ping the network)
composer network ping -n my-network -p hlfv1 -i admin -s adminpw
Online Playground
http://composer-playground.mybluemix.net
Generate the Rest
Server
In the terminal type:
composer-rest-server
Answer the following questions:
Enter your connection profile name: hlfv1
Enter your business network name: my-network
Enter your enrollment ID: admin
Enter your enrollment secret: adminpw
Do you want namespaces? never use namespaces
Enable auth for the REST API using Passport? No
Enable event publication over web sockets? Yes
Do you want enable TLS security? No
Open the following URL:
http://localhost:3000/explorer
Generate the App In a NEW terminal type:
yo hyperledger-composer
Answer the following questions:
Type of Application: Angular
Connect to a running Business Network? Yes
Name of the application? my-app
Description of the application: Commodities App
Author name: user
Author email: user@acme.org
License: Apache-2.0
Business network identifier? my-network
Connection profile? hlfv1
Enrollment id: admin
Enrollment Secret: adminpw
New REST API? Connect to an existing REST API
REST Server Address?: http://localhost
Port number? 3000
Use namespaces? Namespaces are not used
Generate the App
After it’s finished, type:
cd my-app
npm start
Open the following URL:
http://localhost:4200
SafeBear Blockchain
Courses
Many other Crash
Courses
Other Certified
Courses
Discount
YOLKIT2018
safebear.co.uk/courses/
hello@safebear.co.uk
02921	28	0321
Tech Talk - Blockchain presentation

More Related Content

What's hot

Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Hacken_Ecosystem
 
Introduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerIntroduction to Blockchain and Hyperledger
Introduction to Blockchain and Hyperledger
Dev_Events
 
Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05
Dan Selman
 
Hyperledger Fabric EVM Integration Feb 20, 2018
Hyperledger Fabric EVM Integration Feb 20, 2018Hyperledger Fabric EVM Integration Feb 20, 2018
Hyperledger Fabric EVM Integration Feb 20, 2018
Arnaud Le Hors
 
FIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE Wednesday Webinars - Short Term History within Smart SystemsFIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE
 
Bringing Docker to the Cloud
Bringing Docker to the CloudBringing Docker to the Cloud
Bringing Docker to the Cloud
Andrew Kennedy
 
Hyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest MeetupHyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest Meetup
Imre Kocsis
 
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & ComposerIBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer
IBM France Lab
 
Scaling your logging infrastructure using syslog-ng
Scaling your logging infrastructure using syslog-ngScaling your logging infrastructure using syslog-ng
Scaling your logging infrastructure using syslog-ng
Peter Czanik
 
OpenStack APIs: Present and Future (Beta Talk)
OpenStack APIs: Present and Future (Beta Talk)OpenStack APIs: Present and Future (Beta Talk)
OpenStack APIs: Present and Future (Beta Talk)
Wade Minter
 
A Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeA Tour of Open Source on the Mainframe
A Tour of Open Source on the Mainframe
All Things Open
 
IBM presents: Hyperledger Fabric Hands On Workshop - part 1
IBM presents: Hyperledger Fabric Hands On Workshop - part 1IBM presents: Hyperledger Fabric Hands On Workshop - part 1
IBM presents: Hyperledger Fabric Hands On Workshop - part 1
Grant Steinfeld
 
Hyperledger Composer architecture
Hyperledger Composer architectureHyperledger Composer architecture
Hyperledger Composer architecture
Simon Stone
 
Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...
Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...
Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...
Oleksii Holub
 
Triggers in MongoDB
Triggers in MongoDBTriggers in MongoDB
Triggers in MongoDB
Antonios Giannopoulos
 
The Developer Conference - CloudKit, entendendo a Cloud da Apple
The Developer Conference - CloudKit, entendendo a Cloud da AppleThe Developer Conference - CloudKit, entendendo a Cloud da Apple
The Developer Conference - CloudKit, entendendo a Cloud da Apple
Rodrigo Leite
 
stackconf 2021 | Continuous Security – integrating security into your pipelines
stackconf 2021 | Continuous Security – integrating security into your pipelinesstackconf 2021 | Continuous Security – integrating security into your pipelines
stackconf 2021 | Continuous Security – integrating security into your pipelines
NETWAYS
 
FluentD vs. Logstash
FluentD vs. LogstashFluentD vs. Logstash
FluentD vs. Logstash
All Things Open
 
Fabric Composer - Construct 2017
Fabric Composer - Construct 2017Fabric Composer - Construct 2017
Fabric Composer - Construct 2017
Simon Stone
 

What's hot (20)

Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?
 
Introduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerIntroduction to Blockchain and Hyperledger
Introduction to Blockchain and Hyperledger
 
Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05
 
Hyperledger Fabric EVM Integration Feb 20, 2018
Hyperledger Fabric EVM Integration Feb 20, 2018Hyperledger Fabric EVM Integration Feb 20, 2018
Hyperledger Fabric EVM Integration Feb 20, 2018
 
FIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE Wednesday Webinars - Short Term History within Smart SystemsFIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE Wednesday Webinars - Short Term History within Smart Systems
 
Openstack Keystone
Openstack Keystone Openstack Keystone
Openstack Keystone
 
Bringing Docker to the Cloud
Bringing Docker to the CloudBringing Docker to the Cloud
Bringing Docker to the Cloud
 
Hyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest MeetupHyperledger Composer overview - Hyperledger Budapest Meetup
Hyperledger Composer overview - Hyperledger Budapest Meetup
 
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & ComposerIBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer
IBM Bluemix Nice Meetup - 20171120 - Hyperledger Fabric & Composer
 
Scaling your logging infrastructure using syslog-ng
Scaling your logging infrastructure using syslog-ngScaling your logging infrastructure using syslog-ng
Scaling your logging infrastructure using syslog-ng
 
OpenStack APIs: Present and Future (Beta Talk)
OpenStack APIs: Present and Future (Beta Talk)OpenStack APIs: Present and Future (Beta Talk)
OpenStack APIs: Present and Future (Beta Talk)
 
A Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeA Tour of Open Source on the Mainframe
A Tour of Open Source on the Mainframe
 
IBM presents: Hyperledger Fabric Hands On Workshop - part 1
IBM presents: Hyperledger Fabric Hands On Workshop - part 1IBM presents: Hyperledger Fabric Hands On Workshop - part 1
IBM presents: Hyperledger Fabric Hands On Workshop - part 1
 
Hyperledger Composer architecture
Hyperledger Composer architectureHyperledger Composer architecture
Hyperledger Composer architecture
 
Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...
Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...
Alexey Golub - Dependency absolution (application as a pipeline) | Svitla Sma...
 
Triggers in MongoDB
Triggers in MongoDBTriggers in MongoDB
Triggers in MongoDB
 
The Developer Conference - CloudKit, entendendo a Cloud da Apple
The Developer Conference - CloudKit, entendendo a Cloud da AppleThe Developer Conference - CloudKit, entendendo a Cloud da Apple
The Developer Conference - CloudKit, entendendo a Cloud da Apple
 
stackconf 2021 | Continuous Security – integrating security into your pipelines
stackconf 2021 | Continuous Security – integrating security into your pipelinesstackconf 2021 | Continuous Security – integrating security into your pipelines
stackconf 2021 | Continuous Security – integrating security into your pipelines
 
FluentD vs. Logstash
FluentD vs. LogstashFluentD vs. Logstash
FluentD vs. Logstash
 
Fabric Composer - Construct 2017
Fabric Composer - Construct 2017Fabric Composer - Construct 2017
Fabric Composer - Construct 2017
 

Similar to Tech Talk - Blockchain presentation

Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer
Dr. Ketan Parmar
 
Hyperledger Fabric and Tools
Hyperledger Fabric and ToolsHyperledger Fabric and Tools
Hyperledger Fabric and Tools
Rihusoft
 
MicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexus
MicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexusMicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexus
MicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexus
Emily Jiang
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using Go
CloudOps2005
 
Hyperledger community update 20180528
Hyperledger community update 20180528Hyperledger community update 20180528
Hyperledger community update 20180528
Arnaud Le Hors
 
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code DeployAWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
Adam Book
 
Conoscerehyperledger
ConoscerehyperledgerConoscerehyperledger
Conoscerehyperledger
Daniela Zuppini
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhisk
Daniel Krook
 
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger WorkshopIBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM France Lab
 
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
AppDynamics
 
Logisland "Event Mining at scale"
Logisland "Event Mining at scale"Logisland "Event Mining at scale"
Logisland "Event Mining at scale"
Thomas Bailet
 
DevOPS training - Day 2/2
DevOPS training - Day 2/2DevOPS training - Day 2/2
DevOPS training - Day 2/2
Vincent Mercier
 
Introduction to Hyperledger Composer
Introduction to Hyperledger ComposerIntroduction to Hyperledger Composer
Introduction to Hyperledger Composer
Simon Stone
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
QAware GmbH
 
How to make App with Hyperledger fabric and composer
How to make App with Hyperledger fabric and composerHow to make App with Hyperledger fabric and composer
How to make App with Hyperledger fabric and composer
KUNITO Atsunori
 
.NET @ apache.org
 .NET @ apache.org .NET @ apache.org
.NET @ apache.org
Ted Husted
 
Dev opsec dockerimage_patch_n_lifecyclemanagement_
Dev opsec dockerimage_patch_n_lifecyclemanagement_Dev opsec dockerimage_patch_n_lifecyclemanagement_
Dev opsec dockerimage_patch_n_lifecyclemanagement_
kanedafromparis
 
ansible_rhel_90.pdf
ansible_rhel_90.pdfansible_rhel_90.pdf
ansible_rhel_90.pdf
ssuserd254491
 
Android application architecture
Android application architectureAndroid application architecture
Android application architecture
Romain Rochegude
 

Similar to Tech Talk - Blockchain presentation (20)

Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer Introduction of Hyperledger Fabric & Composer
Introduction of Hyperledger Fabric & Composer
 
Hyperledger Fabric and Tools
Hyperledger Fabric and ToolsHyperledger Fabric and Tools
Hyperledger Fabric and Tools
 
MicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexus
MicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexusMicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexus
MicroProfile, Docker, Kubernetes, Istio and Open Shift lab @dev nexus
 
Operator SDK for K8s using Go
Operator SDK for K8s using GoOperator SDK for K8s using Go
Operator SDK for K8s using Go
 
Hyperledger community update 20180528
Hyperledger community update 20180528Hyperledger community update 20180528
Hyperledger community update 20180528
 
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code DeployAWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
AWS Atlanta meetup Build Tools - Code Commit, Code Build, Code Deploy
 
Conoscerehyperledger
ConoscerehyperledgerConoscerehyperledger
Conoscerehyperledger
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhisk
 
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger WorkshopIBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
IBM Cloud Côte D'Azur Meetup - 20181004 - Blockchain Hyperledger Workshop
 
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
Getting More Out of the Node.js, PHP, and Python Agents - AppSphere16
 
Logisland "Event Mining at scale"
Logisland "Event Mining at scale"Logisland "Event Mining at scale"
Logisland "Event Mining at scale"
 
DevOPS training - Day 2/2
DevOPS training - Day 2/2DevOPS training - Day 2/2
DevOPS training - Day 2/2
 
Introduction to Hyperledger Composer
Introduction to Hyperledger ComposerIntroduction to Hyperledger Composer
Introduction to Hyperledger Composer
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
 
How to make App with Hyperledger fabric and composer
How to make App with Hyperledger fabric and composerHow to make App with Hyperledger fabric and composer
How to make App with Hyperledger fabric and composer
 
.NET @ apache.org
 .NET @ apache.org .NET @ apache.org
.NET @ apache.org
 
CGI by rj
CGI by rjCGI by rj
CGI by rj
 
Dev opsec dockerimage_patch_n_lifecyclemanagement_
Dev opsec dockerimage_patch_n_lifecyclemanagement_Dev opsec dockerimage_patch_n_lifecyclemanagement_
Dev opsec dockerimage_patch_n_lifecyclemanagement_
 
ansible_rhel_90.pdf
ansible_rhel_90.pdfansible_rhel_90.pdf
ansible_rhel_90.pdf
 
Android application architecture
Android application architectureAndroid application architecture
Android application architecture
 

More from Laura Steggles

HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018
Laura Steggles
 
Elasticsearch workshop presentation
Elasticsearch workshop presentationElasticsearch workshop presentation
Elasticsearch workshop presentation
Laura Steggles
 
HR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the WorkplaceHR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the Workplace
Laura Steggles
 
Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017
Laura Steggles
 
How to find and build your audience using social media
How to find and build your audience using social mediaHow to find and build your audience using social media
How to find and build your audience using social media
Laura Steggles
 
Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017
Laura Steggles
 
Functional programming with Immutable .JS
Functional programming with Immutable .JSFunctional programming with Immutable .JS
Functional programming with Immutable .JS
Laura Steggles
 
Running local, going global yolk
Running local, going global   yolkRunning local, going global   yolk
Running local, going global yolk
Laura Steggles
 
Social Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal withSocial Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal with
Laura Steggles
 

More from Laura Steggles (9)

HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018
 
Elasticsearch workshop presentation
Elasticsearch workshop presentationElasticsearch workshop presentation
Elasticsearch workshop presentation
 
HR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the WorkplaceHR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the Workplace
 
Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017
 
How to find and build your audience using social media
How to find and build your audience using social mediaHow to find and build your audience using social media
How to find and build your audience using social media
 
Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017
 
Functional programming with Immutable .JS
Functional programming with Immutable .JSFunctional programming with Immutable .JS
Functional programming with Immutable .JS
 
Running local, going global yolk
Running local, going global   yolkRunning local, going global   yolk
Running local, going global yolk
 
Social Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal withSocial Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal with
 

Recently uploaded

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 

Tech Talk - Blockchain presentation

  • 1.
  • 5. Hyperledger History December 2015 the Linux Foundation announced the creation of the Hyperledger Project February 2016 The founding members of the project were announced In early 2016, the project began accepting proposals for incubation of codebases and other technologies as core elements. 12 July 2017 the project announced its production-ready Hyperledger Fabric 1.0 and it started to gain popularity July 2017 London Stock Exchange Group in a partnership with IBM announced that it will create a Blockchain platform designed for digitally issuing shares of Italian companies. Hyperledger Fabric will form the basis of the platform September 2017 The Royal Bank of Canada (RBC) have started using Hyperledger Fabric for its US - Canada interbank settlements.
  • 8. Benefits of Private Blockchains 1. 100% Uptime 2. Solves the Byzantium Generals problem for data synchronization 3. The data are Immutable / Incorruptible 4. The algorithm is Immutable / Incorruptible 5. Traceable
  • 9. When do you need a blockchain?
  • 10. When not to use Blockchain 1. The process stores a lot of static data, or the data is quite large 2. Rules of transactions change frequently 3. The use of external services to gather/store data
  • 11. Bitcoin Ethereum Hyperledger Frameworks Cryptocurrency based Yes Yes No Permissioned No No Yes (in general) Pseudo-anonymous Yes No No Auditable Yes Yes Yes Immutable ledger Yes Yes Yes Modularity No No Yes Smart contracts No Yes Yes Consensus protocol PoW PoW Various** Comparing blockchains **Key Hyperledger consensus protocols are Apache Kafka in Hyperledger Fabric, PoET in Hyperledger Sawtooth, RBFT in Hyperledger Indy, Tendermint in Hyperledger Burrow, and Yet Another Consensus (YAC) in Hyperledger Iroha. For more details, see the Hyperledger Architecture, Volume 1 paper.
  • 13. Other Hyperledger Tools Cello Composer Explorer Quilt Hyperledger Cello: Implement Blockchain-as-a-Service and contributed by IBM. Baohua Yang and Haitao Yue from IBM Research are committed part-time to developing and maintaining the project. Hyperledger Composer: Blockchain package management tooling contributed by IBM. Composer is a user-facing rapid prototyping tooling, running on top of Hyperledger Fabric, which allows the easy management of Assets (data stored on the blockchain), Participants (identity management, or member services) and Transactions (Chaincode, or Smart Contracts which operate on Assets on the behalf of a Participant). The resulting application can be exported as a package (a BNA file) which may be executed on a Hyperledger Fabric instance, with the support of a Node.js application (based on the Loopback application framework) and provide a REST interface to external applications. Hyperledger Explorer: Blockchain analytics tooling contributed by IBM, Intel, and DTCC. Hyperledger Quilt: Transfer value between and outside of distributed ledgers. Uses the ILP payments protocol.
  • 16. Fabric: Key Points 1. Smart Contracts: A shared ledger and smart contracts implemented as ‘chaincode’ 2. Identity Management: Privacy and permissioning through membership services enables confidentiality. 3. Flexible: Modular architecture and flexible hosting options 4. Efficient processing: Practical Byzantine Fault Tolerant.
  • 17. The Lifecycle of a Smart Contract Client Ordering Service Peers Creates the Smart Contract / Transaction Creates a Block Accepts the Block onto the Blockchain Peers Validates Transaction Client Signs Transaction
  • 22. Set-up Open a Terminal from your desktop and move into the hyperledger directory: cd ~/hyperledger/my-network Then type: code . To open your IDE.
  • 23. README.md Replace all the text in this directory with: # My Commodity Trading Network
  • 24. package.json Change the text highlighted in Yellow below: "name": "my-network", "version": "0.1.6", "description": "My Commodity Trading network", "networkImage": "https://hyperledger.github.io/composer-sample- networks/packages/basic-sample-network/networkimage.svg", "networkImageanimated": "https://hyperledger.github.io/composer-sample-networks/packages/basic-sample- network/networkimageanimated.svg", "scripts": { "prepublish": "mkdirp ./dist ; composer archive create --sourceType dir -- sourceName . -a ./dist/my-network.bna",
  • 25. Model File (.cto) A Hyperledger Composer CTO file is composed of the following elements: ● A single namespace. All resource declarations within the file are implicitly in this namespace. ● A set of resource definitions ● Assets ● Transactions ● Participants ● Events. ● Optional import declarations that import resources from other namespaces. CTO Language: https://hyperledger.github.io/composer/reference/cto_language.html
  • 26. Model File (.cto) /** * Commodity trading network */ namespace org.acme.mynetwork asset Commodity identified by tradingSymbol { o String tradingSymbol o String description o String mainExchange o Double quantity --> Trader owner } participant Trader identified by traderId { o String traderId o String firstName o String lastName } transaction Trade { --> Commodity commodity --> Trader newOwner }
  • 27. Transaction Processing File (.js) (aka the business logic) Transaction processor functions are automatically invoked by the runtime when transactions are submitted using the BusinessNetworkConnection API. /** * A transaction processor function description * @param {org.example.sampleTransaction} parameter-name A human description of the parameter * @transaction */ Document: https://hyperledger.github.io/composer/reference/js_scripts.html
  • 28. Logic File (.js) /** * Track the trade of a commodity from one trader to another * @param {org.acme.mynetwork.Trade} trade - the trade to be * processed * @transaction */ function tradeCommodity(trade) { // set the new owner of the commodity trade.commodity.owner = trade.newOwner; return getAssetRegistry('org.acme.mynetwork.Commodity') .then(function (assetRegistry) { // persist the state of the commodity return assetRegistry.update(trade.commodity); }); }
  • 29. Access Control Langage (acl) Hyperledger Composer differentiates between access control for resources within a business network (business access control) and access control for network administrative changes (network access control). Business access control and network access control are both defined in the access control file (.acl) for a business network. Network access control uses the system namespace, which is implicitly extended by all resources in a business network; and grants or denies access to specific actions as defined below, and is intended to allow for more nuanced access to certain network-level operations. Document: https://hyperledger.github.io/composer/reference/acl_language.html
  • 30. Permissions (.acl) /** * Access control rules for mynetwork */ rule Default { description: "Allow all participants full access" participant: "ANY" operation: ALL resource: "org.acme.mynetwork.*" action: ALLOW } rule SystemACL { description: "System ACL to permit all access" participant: "org.hyperledger.composer.system.Participant" operation: ALL resource: "org.hyperledger.composer.system.**" action: ALLOW }
  • 31. Hyperledger Composer Query Language Queries in Hyperledger Composer are written in a bespoke query language. Queries can be written with undefined parameters that must be supplied when running the query. For example, the following query returns all drivers where the age property is greater than the supplied parameter: query Q17 { description: "Select all drivers aged older than PARAM" statement: SELECT org.acme.Driver WHERE (_$ageParam < age) } Document: https://hyperledger.github.io/composer/reference/query-language.html
  • 32. Queries (.qry) query selectCommoditiesByOwner { description: "Select all commodities based on their owner" statement: SELECT org.acme.mynetwork.Commodity WHERE (owner == _$owner) }
  • 33. Generate our Business Network Archive (.bna) In the terminal type: npm install When this command is complete, move into the dist directory and deploy the network. cd dist composer network deploy -a my-network.bna -p hlfv1 -i PeerAdmin -s randomString Wait for ‘command succeeded’ (Extra Time: Ping the network) composer network ping -n my-network -p hlfv1 -i admin -s adminpw
  • 35. Generate the Rest Server In the terminal type: composer-rest-server Answer the following questions: Enter your connection profile name: hlfv1 Enter your business network name: my-network Enter your enrollment ID: admin Enter your enrollment secret: adminpw Do you want namespaces? never use namespaces Enable auth for the REST API using Passport? No Enable event publication over web sockets? Yes Do you want enable TLS security? No Open the following URL: http://localhost:3000/explorer
  • 36. Generate the App In a NEW terminal type: yo hyperledger-composer Answer the following questions: Type of Application: Angular Connect to a running Business Network? Yes Name of the application? my-app Description of the application: Commodities App Author name: user Author email: user@acme.org License: Apache-2.0 Business network identifier? my-network Connection profile? hlfv1 Enrollment id: admin Enrollment Secret: adminpw New REST API? Connect to an existing REST API REST Server Address?: http://localhost Port number? 3000 Use namespaces? Namespaces are not used
  • 37. Generate the App After it’s finished, type: cd my-app npm start Open the following URL: http://localhost:4200