Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Key Points

  1. blockchain at a minimum is DLT - decentralized ledger technology
  2. an immutable ledger provides a trusted ledger of transactions for all participants in the network
  3. like any technology, blockchain can add real value when applied correctly to the right use cases
  4. public blockchains
    1. Bitcoin and Ethereum are the 2 most popular public blockchains
    2. Ethereum offers smart contracts to provide common business logic controls on transactions
    3. Ethereum could also be implemented as a private blockchain when needed
    4. public blockchains allow anyone to participate
    5. public blockchains normally provide a degree of anonymity for participants but everyone can see all transactions
    6. public blockchains with a high number of commit nodes typically have poor performance
  5. permissioned blockchains
    1. permissioned blockchains are normally private and require participants to enroll through member services
    2. permissioned blockchains require read and write permissions to access the blockchain
    3. permissioned blockchains normally have identified participants
    4. participants are added through membership services
    5. transactions may be private between specific participants but macro demand is often public


References

Reference_description_with_linked_URLs______________________________Notes_______________________________________________________
s Enterprise Blockchain Concepts and Value
m Blockchain Consulting
s Blockchain Opportunity Assessment - BOA
m Blockchain Use Cases More




https://www.slideshare.net/DevdattaAjgaonkar/introduction-to-blockchain-194331423Blockchain, Bitcoin, Crypto, Smart Contract concepts slideshare
https://www.slideshare.net/Synerzip/blockchain-application-development-101Blockchain App Development Concepts 101 - slideshare - sweetbridge


https://wiki.hyperledger.org/display/fabric/Design+DocumentsFabric design documents wiki
https://jira.hyperledger.org/secure/Dashboard.jspa?selectPageId=11700#Filter
-Results/12515
Fabric release planning dashboard
https://www.smallbusinessadvocate.com/small-business-article/blockchain-
is-here-are-you-ready-3330

Blockchain concepts and assessment

Jim Blasingame (smallbusinessadvocate.com/). He has just released a three-part series on blockchain that is excellent, and each is a quick read. #1 Blockchain is here - are you ready, #2 Blockchain isn't the end of trust, it is the future of trust, and #3 Your Blockchain close encounter of the first kind. Here is the first article, and I will let you find the next two on his site. Great work, Jim... https://lnkd.in/eJ8qGBE

https://www.geeksforgeeks.org/types-of-blockchain/Blockchain types: permissioned, permissionless, hybrid, consortium
Layer 2 Blockchain side chain models - Blockchain101
Layer 3 app engineering value adds
Anthony Day Blockchain Layer Models
Blockchain features and value concepts - datacenterksummary of blockchain capabilities and value add
m Ethereum
m Bitcoin overview


Training materials on Fabric




https://medium.com/coinmonks/build-a-blockchain-poc-application-using-
hyperledger-fabric-6bbe633c2204

Build a Blockchain PoC Application using Hyperledger Fabric
Don Li

https://www.udemy.com/course/blockchain-for-digital-transformation/learn/lecture/25252334#overviewBaijiu Udemy course Digital Transformation with Blockchain






Cyrpto Notes
https://blockgeeks.com/guides/security-tokens-explained/Security Tokens - regulated assets, peg to fiat ?
https://blockstack.org/

Blockstack - Development stack for Dapps - compare to Truffle

uses mining, tokens, etc

http://incomelion.com/how-bitcoin-transactions-work/?ref=quuu&utm_content=buffer6b6d6&utm_medium=social&utm_source=
linkedin.com&utm_campaign=buffer
How Bitcoin works - High level concepts
https://docs.blockstack.org/browser/hello-blockstack.htmlBlockstack tutorials
https://blockstack.github.io/blockstack.js/Blockstack js services - useful interface model


Other Hyperledger Notes
https://www.forbes.com/sites/quora/2019/05/29/what-do-people-misunderstand
-about-blockchain-technology/#447341245e39
Jerry Cuomo on common blockchain misconceptions


Other Blockchain Concepts




https://medium.com/coinmonks/public-vs-private-blockchain-in-a-nutshell-c9fe284fa39fpublic vs private blockchains revisited











Key Concepts



Blockchain technologies - Hash functions and Merkle Trees


hash-functions-blockchain-kier-finlow-bates-2023.pdf  link

hash-functions-blockchain-kier-finlow-bates-2023.pdf. file




Cloud Services Models


cloud-xaas-models-compared-cf.PNG


Structured Platforms

  1. Abstract the operational processes of application deployment away from developers and app teams.
  2. Can be deployed across private and public clouds
  3. Capabilities like service brokers, monitoring, scaling, etc. are integrated natively.
  4. Examples: Cloud Foundry Application runtime, red Hat openShift, Apprenda, etc.


UnStructured Platforms

  1. Provide control and autonomy for app teams and developers over app deployment workflow.
  2. Can be deployed across private and public clouds.
  3. Capabilities like service brokers, monitoring, scaling, etc. must be developed or delivered by additional services.
  4. Examples:Cloud Foundry Container runtime, kubernetes, Mesosphere, Docker, Tectonic, etc.


Kubernetes Fabric Deployment workshop

https://github.com/aidtechnology/hgf-k8s-workshop/tree/master/prod_example

Covers manual setup of a blockchain network, kafka, kubernetes, CA administration etc



Public vs Private Blockchains Revisited - 2019 article

https://medium.com/coinmonks/public-vs-private-blockchain-in-a-nutshell-c9fe284fa39f


Brian Behlendorf - 2018

  • public or private defines who can read the blockchain
  • permissionless or permissioned defines who can write to the blockchain

The open versus closed brings in to consideration who’s able to read that data.

And so, we can talk about solutions which are public and open, public and closed, private and open, private and closed.

replace open / closed with permissionless / permissioned in the chart below ...

Image Added


Pubilc blockchains can be permissioned ( eg Ethereum ) but lack the tools Hyperledger, Corda provide

Public blockchains normally provide anonymity.  Private blockchains require identified participants.

Private blockchains need identity management

Most of the time, private blockchains tend to come with identity management tools or a modular architecture, where you can plug in your own identity management solution. This can be anything from a Membership Service Provider to an OAuth solution using Google, Facebook, LinkedIn, etc.

Motivations in public blockchain

We rely on economics and game theory incentives to ensure that everybody in the system behaves honestly and according to the rules.

We set up situations through group consensus, through which honest participants are economically rewarded, where dishonest ones only incur work or cost, with no possibility of ever recouping that cost.

Motivations in private blockchain

we know who an individual is, what organisation they’re associated with and what their role is, we also assume that they’re going to behave fairly, because if not, we know exactly who’s misbehaving and they know that they’re gonna suffer the consequences for that.

False assumption on who can see transactions in private blockchain

Transactions are not publicly viewable (transparent) in the blockchain, and only selected nodes can access the ledger.

Examples include: R3 Corda, which can transact between nodes, and the rest of the blockchain does not participate

Fabric allows control over what transactions and related demand are visible to others on a blockchain


Good article on basic concepts of public — private and permissionless —  permissioned blockchain features. Nicely shows they address different use cases normally. When I look at use cases, I find Hyperledger Fabric provides the granularity and options to address a very wide set. A good example in the article is transaction data. With Fabric, I can decide on a supply chain what data is private and what is shared with everyone ( usually macro demand ).

A private, permissioned blockchain is more than just a secure database. It provides the provenance and proofs on transactions that increase trust among participants.


Why choose public or private chains?

https://www.dock.io/post/public-vs-private-blockchains

Someone would choose to write transactions to a public blockchain instead of a private blockchain when they prioritize transparency, decentralization, and accessibility, as public blockchains allow anyone to view and verify all transactions on the network, making them inherently more trustworthy and open to participation compared to private blockchains which are controlled by a limited group of entities. 
Key reasons to choose a public blockchain:
  • Transparency: All transactions are visible to anyone on the network, promoting trust and accountability. 
  • Decentralization: No single entity controls the network, making it resistant to manipulation or censorship. 
  • Accessibility: Anyone with an internet connection can join and participate in the network. 
  • Immutability: Once recorded, transactions cannot be altered or deleted. 
  • Innovation potential: Open access encourages wider development and adoption of new applications. 
However, consider that a private blockchain might be preferable when:
  • Privacy is crucial: Sensitive data can be protected within a controlled environment. 
  • Specific access control is needed: Only authorized parties can view and modify transactions. 
  • High performance required: Private blockchains can potentially achieve faster transaction speeds with fewer network participants. 

Most applications are focused on data for entities, assets and transactions that are private not public

A public blockchain can be useful for proof of governance on transactions


Blockchain Performance Metrics - TPS - Real, Tested, Theoretical


https://www.linkedin.com/pulse/understanding-tps-which-blockchains-fastest-hashlock-xnojc/

As the web3/ crypto space continues to grow TPS is important as it also needs to increase for faster and more efficient processing of transactions leading to improved scalability in the space.

Current Payment Processors faster than Blockchain

Payment processing networks VISA and Mastercard are currently capable of handling 24,000 and 5,000 transactions per second. This is a way ahead of Solana the fastest Blockchain.

Fastest Blockchains TPS 

Solana is fastest now 

BSC is fastest EVM compatible now

Image Added


My experience on Blockchain vs Database TPS

Fabric Layer 1 TPS for a client reached 500 TPS for the average transaction commit

MySQL database writes >> normal production rate = 4,500 TPS

MySQL database writes >> a TEST WRITE SPEED TEST  rate = 40,000 TPS. ( A test loop that only did DB writes for small size transaction ( 128 b ))


Other Blockchain Performance Services


Hyperledger Fabric Performance


Chaininspect shows many blockchain actual performance stats 

https://chainspect.app/dashboard





Blockchain Layer Models to Improve Scaling, Performance


L2 Blockchain Performance Concepts 

An L2 blockchain improves performance over an L1 blockchain by processing transactions "off-chain," meaning outside of the main blockchain network, which reduces the load on the L1 and allows for faster, cheaper transactions by bundling multiple transactions together and only submitting a compressed summary to the L1 for final verification; essentially acting as a secondary layer that handles most transactional activity while still relying on the security of the underlying L1 blockchain. 

Key points about L2 blockchains:

  • Off-chain transaction processing:
    L2 solutions handle most transaction calculations and execution off the main blockchain, significantly reducing congestion on the L1. 
  • Batching transactions:
    Multiple transactions are grouped together into a single batch before being submitted to the L1 for verification, improving efficiency. 
  • Security through L1:
    While processing transactions off-chain, L2 still relies on the security and consensus mechanism of the underlying L1 blockchain to validate the final transaction state. 
  • Lower transaction fees:
    By offloading work to the L2, the demand on the L1 is reduced, leading to potentially lower transaction fees. 

Common L2 scaling solutions:


  • Rollups:
    The most popular L2 solution, where transactions are processed off-chain and then "rolled up" into a single batch to be submitted to the L1 for verification. 
  • State channels:
    A method where users can open a dedicated communication channel to settle transactions directly between each other, only needing to update the L1 blockchain when the channel is closed. 
  • Sidechains:
    Separate blockchains that run alongside the main blockchain, allowing for faster transaction processing but may have slightly weaker security guarantees. 



L3 Blockchain Performance Concepts 


https://forkast.news/what-is-layer-3-key-to-blockchain-future/

Layer 1s are characterized as the foundational blockchains like Bitcoin and Ethereum that have their own native cryptocurrency used to reward those who work to secure the network itself.

Layer 2s are protocols built on top of L1s designed to increase transaction speed and mitigate scaling difficulties of layer 1s while leveraging the security of the base chain. For example, Arbitrum is an L2 created to improve Ethereum’s speed of processing transactions as well as overall flexibility and scalability, and it has given birth to a broad range of DeFi protocols.

Layer 3s, on the other hand, offer even higher levels of customizability. At this layer, developers can carry out customized designs that L2s cannot easily achieve, especially for lower-cost execution and privacy-preserving functionalities.

  • use cases are for custom blockchain solutions, not general purpose blockchain solutions
  • L3s enable customized scaling and realize important functionalities — such as privacy — that L2s can’t effortlessly achieve on their own. L3s increase computation speeds and scalability of single applications by not having to share ZK-circuits with other applications on a single chain.

The current L2 serves as a general-purpose scaling, while L3 accomplishes customized scaling. 

For example, an L3, which adopts customized circuits depending on the demand of a specific decentralized application, can achieve better performance. Another example is Validium as L3. This design provides higher levels of throughput at a relatively low cost for decentralized apps by avoiding pushing compressed data to the L1 and utilizing validators to secure the digital asset. L3s can be employed as low-cost and high-performance scaling solutions that allow projects to have more choices for potential solutions, depending on their particular use cases.

L3 challenges now

  1. One of the main challenges is the lack of standardized infrastructure for L3s. Since L3s are built on top of L2s, they require a standard infrastructure to operate efficiently. 
  2. more development in ZK-rollup technology, which is the underlying technology for L3s. ZK-rollups have the potential to significantly improve the efficiency and scalability of L3s


The Graph - billable 3rd Party Blockchain Query and Indexing Service 

https://thegraph.com/docs/en/network/overview/

The Graph Network is a decentralized indexing protocol for organizing blockchain data. Applications use GraphQL to query open APIs called subgraphs, to retrieve data that is indexed on the network. With The Graph, developers can build serverless applications that run entirely on public infrastructure.

To ensure economic security of The Graph Network and the integrity of data being queried, participants stake and use Graph Tokens (GRT). GRT is a work utility token that is an ERC-20 used to allocate resources in the network.

Active Indexers, Curators and Delegators can provide services and earn income from the network, proportional to the amount of work they perform and their GRT stake.


https://www.linkedin.com/posts/natalie-antebi-97774654_blockchain-blockchain-citi-activity-7067099862013493249-crz8?utm_source=share&utm_medium=member_desktop

1) The Graph is a decentralized protocol for indexing and querying blockchain data.

2) Blockchain Explorer such as Etherscan, Blockchain.com , Blockchain Explorer are a type of Centralized Blockchain indexers that index low level data such as transaction, gas and etc.

3) When Dapps want to index higher level data (unique to their application), then can use 'The Graph' protocol and spin up a sub graph easily, making their data accessible while enjoying all the benefits of decentralization.

4) Using GraphQL makes querying the blockchain easy to use like google, you just need to create your own Scheme and define which smart contracts and events to listen to.

if you're passionate about Blockchain, dApps, and the future of web3, I encourage you to reach out.



How to use Blockchains for a specific use case?


Andy Martin

https://www.linkedin.com/posts/andy-martin-387188a_blockchainthoughtfortheday-tokeneconomythought4theday-activity-6988468305934098432-f06V?utm_source=share&utm_medium=member_desktop

I think there are clear use cases for private blockchains in addition to public ones - not just for ERP integrations. In my experience, engineering success assumes that we have a set of tools ( public, private, permissioned, permissionless blockchains, message services, other protocols, other methods of sharing information etc ) that we just assemble to fit a specific use case. Blockchain is only part of the picture, it's the use case which includes trust engineering that drives solution design, not the technology.

Engineers don't use just one type of data store for a solution. The same concept applies to blockchains. You use what is needed to fit the use case. Improvements are needed for consumption of blockchain service layers to reduce the work needed by most blockchain platforms today. Yes many different teams are working on this effort currently. I tend to lean toward the open source platforms like Hyperledger where that work is often more visible and consumable.


Potential Value Opportunities


Chainspect > Blockchain Performance Compared -  Normal Rate > Max Recorded Rate > Theoretical Rate 

Theoretical rate = useless << ignore chains that reference this

Normal rate = what you can expect if run apps and do normal tuning

Max Recorded Rate = best possible performance for the right use case well tuned

Block Time = time to create a block for the chain

Finality Time = time transactions are normally finalized on chain

Governance model for transactions = on chain, off chain, council


Great data comparing blockchains on TPS

https://chainspect.app/dashboard

Image Added


Real vs Actual TPS note - 2023

https://www.reddit.com/r/CryptoTechnology/comments/163drmq/understanding_real_tps_of_popular_blockchains/

To do this, we've used a straightforward approach. We connected to different blockchains, watched transactions closely, and then did some math based on the last 100 blocks. While blockchains have different speeds, we've kept things simple to focus on understanding TPS.

Let's check out the TPS claims of Solana, Arbitrum, Avalanche, Ethereum, and Bitcoin:

Solana claims "65,000 transactions per second," but the real TPS is 299.91. That's a huge 217 times difference.

Arbitrum talks about "40,000 transactions per second," but the actual TPS is only 8.07. That's a whopping 4956 times difference.

Avalanche says "4,500 transactions per second," but the real TPS is just 2.01. That's a significant 2500 times difference.

Ethereum's max TPS is 56, but the current TPS is 11.14. It's only 5 times different.

Bitcoin's theoretical TPS is 7, but in reality, it's around 4.18. That's just 1.67 times different.

To sum up, there's a big gap between what's claimed and what's actually happening with TPS numbers. While big numbers might sound good, the real measure of success for blockchain is how much it's actually being used.


Hyperledger Fabric v2.5 benchmark results

https://www.lfdecentralizedtrust.org/blog/2023/02/16/benchmarking-hyperledger-fabric-2-5-performance

Image Added


My actual performance experience on Fabric 2.4

The app had a transaction mix with most sizes between 800 and 2000 bytes

the actual write performance measured through Caliper load testing on a normal AWS test net setup ( 8 cores, 64 GB ) in 2022 ranged from: 

450 TPS to 680 TPS

Why does this matter? 

It wasn't an "optimized" app or test environment

Closer to what you might see IF you engineered an app well with MANAGED LOAD BALANCING on write requests, used moderate transaction sizes, focused on high speed write performance in a normal cloud environment.


Understanding TPS on a Besu Node

https://console.settlemint.com/documentation/docs/blockchain-guides/Hyperledger-Besu/performance/

Several crucial factors influence the transaction performance of a Besu node:

  1. Network Latency: The time it takes for data to travel between nodes in the network and between the sender of the transaction and the node can significantly impact transaction speed.
  2. Cloud Provider: Different cloud providers offer varying levels of performance, which can affect node operation.
  3. Resource Pack: The selected resource pack determines the computational resources (CPU, RAM, storage) allocated to a node and the requests-per-second rate limit, both of which significantly impact performance and maximum throughput.

The process of executing a write transaction involves several time-consuming steps:

  1. Transaction Preparation: This includes constructing the transaction object with the necessary parameters such as recipient address, value, and data.
  2. Gas Estimation: Before sending a transaction, it's crucial to estimate the gas required. This involves a call to the node to simulate the transaction and determine the appropriate gas limit.
  3. Nonce Management: Each account has a nonce that must be incremented sequentially for each transaction. Managing nonces, especially for high-frequency transactions, requires careful tracking and can introduce delays.
  4. Transaction Signing: The transaction must be cryptographically signed. This can be done using Accessible Keys stored in Hashicorp Vault (in memory) or via AWS KMS. The signing process, while quick, adds to the overall transaction time.
  5. Transaction Submission: Once prepared and signed, the transaction is submitted to the node's transaction pool.
  6. Mining and Confirmation: Finally, the transaction must be picked up by a miner, included in a block, and confirmed by the network.

Transaction Consensus Models Vary in 2024 for EVM compatible chains

As of 2024, the primary EVM-compatible chain that still requires miners to process transactions is Ethereum;most other prominent EVM chains like Polygon, Avalanche, BNB Chain, and Fantom have transitioned to a Proof-of-Stake consensus mechanism, eliminating the need for traditional miners and relying on validators instead.

Key points to remember:

Ethereum's shift to Proof-of-Stake:
Ethereum is currently in the process of fully transitioning to a Proof-of-Stake model, which will significantly reduce the reliance on miners and instead use validators to secure the network

EVM compatibility and consensus mechanism:
While many chains are EVM compatible, meaning they can run Ethereum-based smart contracts, their consensus mechanisms can vary, with some still using Proof-of-Work (requiring miners) and others utilizing Proof-of-Stake (relying on validators).


Potential Challenges



Candidate Solutions



Comparing 5 Blochchain Platforms - Nov 2024

https://ankitakapoor23.medium.com/top-5-blockchain-development-platforms-compared-ethereum-hyperledger-polkadot-and-more-e87cfc1ded87

article is generally good on comparison features but inaccurate on performance data 

Solana does not do 65000 TPS







Step-by-step guide for Example


Info


sample code block

Code Block
languagetext
titlesample code block
linenumberstrue
collapsetrue



Recommended Next Steps



Page Properties
hiddentrue


Related issues