IBM Blockchain Certification - Study Notes

¡Supera tus tareas y exámenes ahora con Quizwiz!

Channel

-Default network configurations (Starter plan) contains two organizations with a peer inside of each -In order to transact, you must have an open layer of communication between channels -You can talk to people 1-1 or do a multi-party conversation -With starter plan, they kickstart the network with a default channel

Describe how IBP enables the governance of a blockchain network

-Democratic management tools allow members of a network to collectively manage the rules and policies governing the decentralized business network -Dynamic management environment provides the capability to add members to a network as it grows, and new smart contracts become available -Pre-built tools for faster on-boarding customization and activation

Advise how to secure a blockchain

-Treat the underlying infrastructure of the blockchain solution as critical infrastructure. -Partition and adopt best practices for namespacing to regulate access -Define and enforce the appropriate endorsement policies based on business contracts -Enforce identity and access controls to access the blockchain solution and data -Enforce the hardware security module (HSM) -Use a privledged access management (PAM) solution for escalated actions -Use API security best practices to safeguard API-based transactions -Leverage a secrets-store for both application and privileged access -Adopt a data classification approach to safeguard data/information -Use privacy-preserving technologies for sensitive information -Protect applications from vulnerabilities and safeguard data -Enforce access control in smart contracts -Leverage Trusted Platform Modules (TPMs) for sensitive code execution -Secure communications both internally and externally

Order-Execute Architecture

-Validates and orders transactions then propagates them to all peer nodes -Each peer that executes the transactions sequentially

Plan a migration between chaincode versions

1. Backup the ledger and MSPs. 2. Upgrade the orderer binaries to Fabric (Latest) 2a. Stop the orderer. 2b. Back up the orderer's ledger and MSP. 2c. Restart the orderer with the latest images. 2d. Verify upgrade completion. 3. Upgrade the peer binaries to Fabric (Latest) 3a. Stop the peer 3b. Back up the peer's ledger and MSP 3c. Remove chaincode containers and images 3d. Restart the peer with latest image 3e. Verify upgrade completion 4. Update channel capabilities to (Latest) 4a. Get the latest channel config 4b. Create a modified channel config 4c. Create a config update transaction

Analyze the incentives to join IBP.

1. Cost reduction from increased operational efficiency 2. Improved customer experience 3. New revenue opportunities to help reach new customers 4. Avoiding potential costs through operational risk reduction 5. Increased industry influence/thought leadership

Three Key Points that Apply to Smart Contracts

1. Many smart contracts run concurrently in the network 2. They may be deployed dynamically (in many cases, by anyone) 3. Application code should be treated as untrusted, potentially even malicious

Typical Flow of Consensus Execution

1. The application submits a request to invoke a transaction. 2. The transaction is shared around the network 3. A designated peer creates a block containing the transaction 4. The block's transactions are executed and output stored in a delta. 5. The network attempts to agree the correct result 6. If there is agreement, the correct output is applied to the world state.

Explain the lifecycle of a transaction

1. The client creates a transaction and sends it to endorsing peers of its choice 2. The endorsing peer simulates a transaction and produces an endorsement signature 3. The submitting client collects an endorsement for a transaction and broadcasts it through an ordering service 4. The ordering service delivers transactions to the peers 5.

HyperLedger Caliper

A blockchain benchmark tool that measures the performance of any blockchain by using a set of predefined use cases This tool produces reports that show a number of performance indicators, such as: -Resource utilization -Transaction latency -Transactions per second (TPS) Does not publish benchmark results. The idea is to use it as an in-house reference to help choose the blockchain implementation best-suited for a company's specific needs

Hyperledger Iroha

A blockchain framework designed to be simple and easy to incorporate into enterprise infrastructure projects Key features of Iroha: -A simple structure -Modern, domain-driven C++ design -Emphasis on mobile application development -A new, chain-based BFT algo called Sumeragi

Explain the value of a business network

A business network is a complex network of companies working together to accomplish a certain objective Business networks benefit from connectivity and data transparency Participants are customers, suppliers, partners and can be cross-geography Business networks enable streamlined business processes and allow companies to focus on their specialties

Document the Channels strategy for an IBP solution

A channel is a private blockchain overlay which allows for data isolation and confidentiality. A channel-specific ledger is shared across the peers in the channel, and transacting parties must be properly authenticated to a channel in order to interact with it. The idea of channels pertains to organizations who wish to keep some or all business with particular counterparties private. While the larger ecosystem will be able to see a record of the transaction happening, they will not be able to see details of the transaction

Hyperledger Explorer

A dashboard for viewing information on the network including blocks, node logs, statistics, smart contracts, and transactions. Goals of the explorer project include: 1. To create a generic web based blockchain explorer that's easy to install and use with different blockchain platforms 2. To use the latest tools and technologies to make explorer easy to implement, maintain, and extend. 3. To support the standard package manners on most popular platforms to ensure the Explorer is quick and easy to install

Ledger World State

A database that holds the current values of a set current values of a set of ledger states Instead of having to calculate the current state values, you can find the current values there, they are expressed as key value pairs

Hyperledger Indy

A distributed ledger that provides tools, libraries, and reusable components purpose-built for decentralized identity Key Features of Indy: Self-sovereignty - Indy stores identity artifacts on a ledger with distributed ownership. These artifacts can include public keys, proofs of existence, cryptographic accumulators that enable revocation, and so on. No one but the true owner can change or remove an identity Privacy - By default, Indy preserves privacy, since every identity owner can operate without creating any correlation risk or breadcrumbs Verifiable claims - Identity claims can resemble familiar credentials such as birth certificates, driver's licenses, passports and so on. But these can be combined and transformed in powerful ways, using zero-knowledge proofs to enable selective disclosure of only the data required by any particular context

Hyperledger Burrow

A modular blockchain client with a permissioned smart contract interpreter developed in part to the specifications of the EVM Includes the following components Consensus engine - Maintains the networking stack between nodes and ordering transactions to be used by the application engine Application Blockchain Interface (ABCI) - Provides the interface specification for the consensus engine and application engine to connect Smart contract application engine - Provides developers with a strongly deterministic smart contract engine for operating complex industrial processes Gateway - Provides programmatic interfaces for system integration and user interfaces

Outline what is Hyperledger Composer

An open development tool set and framework to make developing blockchain applications easier Main goal is to make it easier to integrate blockchain applications with existing business systems, and thus accelerate time-to-value Composer also enables users to quickly model an existing business network and integrate existing systems and data with blockchain applications.

Hyperledger Composer

An open development toolset and framework to make developing blockchain applications easier. Goal is to make it easier to integrate blockchain applications with existing business systems, and thus accelerate time-to-value. Also enable users to quickly model an existing business network and integrate existing systems and data with blockchain applications.

Hyperledger Fabric Model Assets

Asset definitions enable the exchange of almost anything with monetary value over the network, from whole foods to antique cars to currency futures

. An organization that is already part of a blockchain network adds another peer to the network who will hold the ledger and endorse transactions. What is an example of a non-functional requirement (NFR) that would be directly affected by the addition of this new peer?

Availability would be increased.

Hyperledger Fabric Model Chain code

Chain code execution is partitioned from transaction ordering, limiting the required levels of trust and verification across node types, and optimizing network scalability and performance

Hyperledger Fabric Model Privacy

Channels and private data collections enable private and confidential multi-lateral transactions that are usually required by competing businesses and regulated industries that exchange assets on a common network

Key Reasons Developers Choose Open Source

Competitive features and capabilities No vendor lock-in, so customers can easily switch High-quality solutions The ability to customize and fix bugs, through access to source code Lower total cost of ownership

Hyperledger Fabric Model Security & Membership Services

Permissioned membership provides a trusted blockchain network, where participants know that all transactions can be detected and traced by authorized regulators and auditors

PBFT-Based

Practical Byzantine Fault Tolerance implementations pros: reasonably efficient and tolerant against malicious peers cons: validators are known and totally connected example: hyperledger fabric v0.6

Which consensus algorithm is the most energy intensive to run?

Proof of Work

Block Header

Comprised of the following: 1. Block Number: an integer starting at 0 (genesis block), and increased by 1 for every new block appended to the blockchain 2. Current Block Hash: The hash of all the transactions contained in the current block 3. Previous Block Hash: A copy of the hash from the previous block in the blockchain

Fabricorp is the founder of a blockchain network on IBM Blockchain Platform. They invite two other companies, Circlecorp and Squarecorp to join them in the network. The solution they are developing requires that any transactions between two corporations are viewable by only those corporations, with the third corporation being able to view only evidence the transaction occurred, but none of the details. What is the appropriate design?

Create a single channel with three private data collections.

Advise how to manage identities in an IBP

Define policies that ensure the right level of access to the right individual for the right use. New members should be on-boarded into the blockchain platform through appropriate identity and access mechanisms. The off-boarding process should also be defined to stop any information exfiltration (malicious activity performed through various different techniques). Audit logs and access processes need to be put in place to alert the operations team of any malicious activity so it can be mitigated. If the organization is using the in-house IAM system and playing the role of identity provider (IDP), appropriate tokens like OAUTH, OIDC, and SAML2 should be used to perform the authentication, verification, and authorization. This applies to other consortium members as well. Key decisions around whether the consortium members are IDPs or service providers should be made up front

Service Discovery

Discover network services dynamically, including orderers, peers, chain code, and endorsement policies to simplify client applications

Hyperledger Fabric Functionality Efficient processing

HF assigns network roles by node type To provide concurrency and parallelism to the network, transaction execution is separated from transaction ordering and commitment Division of labor unburdens ordering nodes from the demands of transaction execution and ledger maintenance

Hyperledger Fabric Functionality Privacy and confidentiality

HF enables competing business interests, and any groups that require private, confidential transactions to coexist on the same permissioned networks Private channels are restricted messaging paths that can be used to provide transaction privacy and confidentiality for specific subsets of network members

Hyperledger Fabric Functionality Modular Design

HF implements a modular architecture to provide functional choice to network designers Specific algorithms for identity, ordering (consensus) and encryption, for example, can be plugged into any HF network

Summarize what can affect IBP performance

If you can, increase the pool of available endorsing peers and load balance across that set to achieve greater TPS, improve latency or both. On prem/Cloud storage Couch DB?

Which feature of Bitcoin also applies to all business blockchains?

Irrefutable proof

Certificate Authority

Issues digital certificates to any network component needing an identity

Why is an enterprise blockchain network ideal for provenance?

It gives all permissioned participants a shared view of the assets.

Articulate the value of hardware security modules in IBP

It's critical to use a HSM to secure the blockchain identity keys. It is equally important to ensure that each organization has its own partition in the HSM where the keys are stored. Using the HSM to store the blockchain identity keys ensures the security of the keys.

Explain the features for hosting IBP components outside of the public IBM Cloud

Many organizations have data residency requirements that require some workloads to run in their datacenters or private clouds, behind their firewall or in third-party clouds. In many use cases, blockchain deployments will be no exception. Therefore, IBM has introduced IBM Blockchain Platform for hybrid and multicloud, enabling you to deploy in the environment that meets your requirements. The IBM Blockchain Platform makes it easy to manage costs, security and data sovereignty in ways that work for you. In September 2019, the IBM Blockchain Platform was further enhanced to enable your ability to build blockchain networks anywhere. IBM announced a new version of the IBM Blockchain Platform software, which is optimized to deploy on Red Hat OpenShift, Red Hat's state-of-the-art enterprise Kubernetes platform. This means you now have even more flexibility when choosing where to deploy your blockchain network components, whether on-premises, in public clouds, or in hybrid/multi cloud architectures. Out of the box, the software includes the tools to build, operate, govern and grow blockchain networks.

All Hyperledger projects are:

Modular - They are developing modular, extensible frameworks with common building blocks that can be reused. Highly secure - All Hyperledger algorithms, protocols, and cryptography are reviewed and audited by security experts, as well as the wider open source community, on a regular basis Interoperable - Ability to work across many different platforms, create smart contracts and applications that can connect Cryptocurrency-agnostic - Independent and agnostic of all alt-coins, cryptocurrencies, and tokens Complete with APIs - All Hyperledger projects provide rich and easy-to-use APIs that support interoperability with other systems.

Articulate the value of the IBM Blockchain Platform (IBP)

The IBM Blockchain Platform provides a managed, full stack blockchain- as- a- service (BaaS) offering delivered in an environment of your choice, including the IBM Cloud, on-premises, and third—party clouds. It allows members to develop, operate, govern and grow a network with the performance and security necessary for even the most demanding use cases in regulated industries. The IBM Blockchain Platform enables you to create a blockchain network with a few clicks and provides an easy-touse interface for managing networks, channels, and smart contracts. When you are ready to grow your network, the IBM Blockchain Platform makes it easy to invite new members, create channels, customize governance policies, manage the identity credentials of network participants, and much more. Leveraging Hyperledger Fabric, the IBM Blockchain Platform enables a new kind of distributed business network founded on the principles of finality, trust, and privacy.

Summarize the principles good chaincode design

The blockchain is a distributed system consisting of many nodes that communicate with each other. The blockchain runs programs called chaincode, holds state and ledger data, and executes transactions. The chaincode is the central element as transactions are operations invoked on the chaincode. Transactions have to be "endorsed" and only endorsed transactions may be committed and have an effect on the state.

Hyperledger Fabric Model Ledger Features

The immutable, shared ledger encodes the entire transaction history for each channel, and includes SQL-like query capability for efficient auditing and dispute resolution

Hyperledger Fabric Functionality Identity Management

To enable permissioned networks, HF provides a membership identity service that manages user IDs and authenticates all participants on the network. i.e. a specific user ID could be permitted to invoke a chain code application, but be blocked from deploying NEW chain code

Solo

Validators apply received transactions without consensus pros: very quick; suited to development cons: no consensus, can lead to divergent chains example: hyperledger fabric v1

Proof of Elapsed Time

Wait time in a trusted execution environment randomizes block generation pros: efficient cons: currently tailored towards one vendor example: sawtooth-lake

Peer Nodes

Where the ledger is contained, where blockchain and state DB are contained (real info on the assets) Consists of two separate runtimes 1. Endorsing runtime = Validation and signoffs of transaction proposals 2. Committing runtime = Transactions are validated, ensures all essential information is present and accurate prior to being appended to the ledger File system of peer node is where the smart contracts and chain code are located (Business logic for the assets) Intermediate CA provides digital certifications to peer nodes

Ledger Blockchain

a transaction log that records all the changes that determine the world state

Which three components are included with IBM Blockchain Platform Enterprise plan running on IBM Cloud?

certificate authority, administration REST server, administration user interface

Which user role in an IBM Blockchain Platform network would be expected to manage changes to the policies that affect channel creation?

organization administrator

At what point in the lifecycle of a Hyperledger Fabric transaction is a block created?

transaction ordering

Hyperledger Sawtooth

A modular platform for building, deploying, and running distributed ledgers. Dynamic consensus - Going beyond compile-time pluggable consensus, this allows a consortium to change consensus algorithms on a running blockchain simply by issuing a transactions Proof of elapsed time (PoET) - A consensus algorithm with the scalability of proof of work but without the drawback of high power consumption Transaction families - A smart contract abstraction that enables users to write smart contract logic in the language of their choosing Compatibility with Ethereum contracts - Transaction families can also integrate other smart contract interpreters including Burrow. Sawtooth features like previsioning and un-pluggable consensus enable Ethereum to be configured appropriately for an enterprise Parallel transaction execution - Most blockchains require transactions to be executed in series to guarantee consistent ordering at each peer. Sawtooth included an advanced parallel scheduler that splits blocks into parallel flows. Parallelism allows for faster block processing to partially address the performance drawback of blockchains compared to traditional databases Private transactions - Clusters of Sawtooth nodes can be easily deployed with separate permission. This provides privacy and confidentiality among participants of that distinct chain. No centralized service leak transaction patterns or other confidential information. However, an intermediary such as Hyperledger Quilt is required to connect separate chains. In the future, Sawtooth plans to provide additional privacy and confidentiality features on top of trusted execution environments and/or zero knowledge primitives

Execute-Order-Validate (Fabric)

A new architecture that fabric uses which addresses the resiliency, flexibility, scalability, performance and confidentiality challenges faced by the order-execute model. Three Steps: 1. Execute a transaction and check it's correctness, thereby endorsing it 2. Order transactions via a pluggable consensus protocol 3. Validate transactions against an application-specific endorsement policy before committing them to the ledger

Hyperledger Fabric

A platform for building distributed ledger solutions with a modular architecture that delivers a high degree of confidentiality, flexibility, resiliency, and scalability. Fabric also can also create channels, which enable a group of participants to create a separate ledger of transactions.

Explain the components of a Hyperledger Fabric blockchain

A pluggable ordering service establishes consensus on the order of transactions and then broadcasts blocks to peers. A pluggable membership service provider is responsible for associating entities in the network with cryptographic identities. An optional peer-to-peer gossip service disseminates the blocks output by ordering service to other peers. Smart contracts ("chain code") run within a container environment (e.g. Docker) for isolation. They can be written in standard programming languages but do not have direct access to the ledger state. The ledger can be configured to support a variety of DBMSs. A pluggable endorsement and validation policy enforcement that can be independently configured per application.

Hyperledger Quilt

A set of tools that offer interoperability by implementing ILP, which is primarily a payments protocol designed to transfer value across distributed and non-distributed ledgers Offers interoperability between ledger systems by implementing the Interledger Protocol (ILP) in Java. ILP is a simple, open source protocol that establishes a global namespace for accounts to help make transactions across ledgers.

Hyperledger Cello

A set of tools to bring the on-demand deployment model to the blockchain ecosystem with automated ways to provision and manage blockchain operations that reduce effort. Goal is to help enterprises quickly and easily adopt blockchain technologies, by providing automated ways to create, manage, and terminate blockchains

Hyperledger Fabric Model Consensus

A unique approach to consensus enables the flexibility and scalability needed for the enterprise

Private Data Collections

A way to keep certain data/transactions confidential among a subset of channel members

Describe how to operate an IBP network

Activation Tools - Available activation tools allow members to easily invite new members, set up new smart contracts, and create secure channels within a broader business network Policy Editor - The IBM Blockchain Platform allows permissioned members of a decentralized business network to collaboratively update the policies that govern the network. Multi-party Workflow Simulation - The IBM Blockchain Platform allows you to create as many Members and Organizations necessary to simulate your business network. This will give you visibility and insight into how parties might interact on the network. You may also invite members within your business network to join, making the simulation even more realistic. Network Operations - The IBM Blockchain Platform enables network members to initiate, invite, and configure a network with a simple user interface. Founders can then invite additional members/participants to the network using any number of peers. Participants will receive email notifications of their invite so that they can easily join the network. Business Operations -The IBM Blockchain Platform provides a central console (user interface) to support business operations in an active blockchain network. Updates are made with zero network downtime and continuous operations. Smart contracts represent a core feature of a blockchain network by automating the exchange of information and assets. Users of the IBM Blockchain Platform are easily able to deploy and upgrade smart contracts across the network through a single user interface. Additionally, users are able to edit the policies of a channel which govern consensus. These features ensure business operations are visible, operational, and adaptable for a growing network

A company is building a new blockchain solution using Hyperledger Fabric and they discover their chaincode query throughput is not as high as they'd hoped. What is an effective way to scale chaincode queries of the existing transaction data in the world state?

Add additional peers to the same organization, install the same chaincode to the new peers and join them to the existing channel.

Hyperledger Fabric Functionality Chain code functionality

Chain code applications encode logic that is invoked by specific types of transactions on the channel System chain code is distinguished as chain code that defines operating parameters for the entire channel

Articulate the differences between blockchain for business and other blockchain

Because of privacy issues present in a business environment. A company may elect to implement a private or permissioned blockchain, rather than a public blockchain (i.e. BTC) Companies can configure the consensus mechanism, assets being transferred, or what data gets written to the blockchain and assign permissions to network admins Requirements of a blockchain for business Assets: Participants decide which assets to share Identity: Participants now who they are dealing with; information shared is need-to-know Endorsement: Participants give provable endorsements

Outline the Hyperledger projects and goals

Burrow - Permission able smart contract machine (EVM) Fabric - Permissioned with channel support Indy - Decentralized Identity Iroha - Mobile application focus Sawtooth - Permissioned & permission less support; EVM transaction family Caliper - Blockchain framework benchmark platform Cello - As-a-service deployment Composer - Model and build blockchain networks Explorer - View and explore data on the blockchain Quilt - Ledger interoperability

Summarize the IBP deployment options (cloud, on-prem)

Businesses and business networks require flexibility in deployment models, with options regarding where and how blockchain networks and applications are deployed. In addition to the IBM Cloud (public, dedicated and private), IBM Blockchain Platform can be deployed on-premises, in thirdparty cloud's, or in hybrid/multi-cloud architectures. IBM Blockchain Platform on IBM Cloud: The next generation of the IBM Blockchain Platform, based on a Kubernetes architecture, includes more control, flexibility, scalability and enhanced developer tools. IBM Blockchain Platform for hybrid and mutlicloud: Take advantage of the full IBM Blockchain Platform solution behind your firewall in your private cloud or in third-party clouds of your choice.

Identify an appropriate language approach for the blockchain

C++ The language behind every major technology used in the industry, C++ retains its superiority even in the blockchain technology. ... Java. ... Python. ... Ruby. ... Solidity. ... Go. ... C# ... JavaScript.

Who owns the Hyperledger project?

Linux Foundation

Articulate the value of LinuxONE in IBP

LinuxONE provides two major features that may be of interest to businesses looking for a platform for innovative blockchain solutions. The encryption features allow users to run blockchain at level of encryption required in many regulated industries and at a high speed. In addition, the use of IBM's Secure Service Container, a hardened and encrypted version of its blockchain solution, allows users to run the solution, knowing that there is no administrative access without the master encryption key. This reduces the risk of impacting core business applications and is important considering 58 percent of IT ops and security managers believe organizations are granting unnecessary access to their staff.

Outline what is Hyperledger Fabric

Open source enterprise-grade permissioned distributed ledger technology platform, designed for use in enterprise contexts, that delivers some key differentiating capabilities over other popular distributed ledger or blockchain platforms. Pluggable consensus protocols enable the platform to be more effectively customized to fit particular use cases and trust models No native cryptocurrency required

Kafka/Zookeeper

Ordering service distributes blocks to peers pros: efficient and fault tolerant cons: does not guard against malicious activity example: hyperledger fabric v1

Proof of Work

Require Validators to solve difficult cryptographic puzzles pros: works in untrusted networks cons: relies on energy use; slow to confirm transactions example: bitcoin

Proof of Stake

Require validators to hold currency in escrow pros: works in untrusted networks cons: requires intrinsic cryptocurrency, "nothing at stake" problem example: nxt

What would an IBM Blockchain Platform client need to consider as part of a Hyperledger Fabric version upgrade plan?

Required API updates to chaincode.

IBM Blockchain Platform Enterprise plan includes which two security related features?

Secure Service Containers, hardware security module to secure private keys

Ordering Service

Sequences Transactions Considered the backbone of the network because it is what creates the genesis block on the chain and the network

Articulate Blockchain for business concepts

Smart Contract - A set of code-based workflows that are predetermined by two counterparties that can automatically set deal terms based on various thresholds Public Blockchain Private Blockchain Permissioned Blockchain Consortium

Which IBM Blockchain Platform plan requires the SOLO ordering service?

Starter


Conjuntos de estudio relacionados

Unit 3 Exam - PSY: 431 Cognitive Psychology

View Set

Prentice Hall Biology Page 199 (1-9)

View Set

19 One-to-one, onto and inverse functions, Composition of functions

View Set

Chapter 9 - Antepartum Nursing Assessment

View Set

ATI Diabetes Mellitus Management

View Set

Exam 4 P&P Chapters 28,29,35 Study Guide

View Set

A&P Chapters 17-19 Study Questions

View Set