The Cosmos Network is the pioneer of blockchain interoperability, solving the current infrastructure and scalability issues the blockchain sector faces today. IBC is a protocol that the Cosmos Network is developing which will lead the ecosystem of siloed blockchains into a new, connected ecosystem of an Internet of Blockchains.
The presentation will give the basic idea about what is blockchain technology, it's architecture, main features, types of blockchain network and other things that will make your fundamentals clear.
With a wide range of DeFi expertise, RWaltz is leading the edge over competition offering decentralized finance development services. The DeFi development company delivers various DeFi projects to the financial sectors through cutting-edge technologies.
Smart Contracts are a central component to next-generation blockchain platforms. Blockchain technology is much broader than just bitcoin. The sustained levels of robust security achieved by public cryptocurrencies have demonstrated to the world that this new wave of blockchain technologies can provide efficiencies and intangible technological benefits very similar to what the internet has done.
Blockchains are a very powerful technology, capable of going much further than only "simple" financial transaction; a technology capable of performing complex operations, capable of understanding much more than just how many bitcoins one currently has in his digital wallet.
This is where the idea of Smart Contracts come in. Smart Contracts are in the process of becoming a cornerstone for enterprise blockchain applications and will likely become one of the pillars of blockchain technology.
In this presentation, we will explore what a smart contract is, how it works, and how it is being used.
The presentation will give the basic idea about what is blockchain technology, it's architecture, main features, types of blockchain network and other things that will make your fundamentals clear.
With a wide range of DeFi expertise, RWaltz is leading the edge over competition offering decentralized finance development services. The DeFi development company delivers various DeFi projects to the financial sectors through cutting-edge technologies.
Smart Contracts are a central component to next-generation blockchain platforms. Blockchain technology is much broader than just bitcoin. The sustained levels of robust security achieved by public cryptocurrencies have demonstrated to the world that this new wave of blockchain technologies can provide efficiencies and intangible technological benefits very similar to what the internet has done.
Blockchains are a very powerful technology, capable of going much further than only "simple" financial transaction; a technology capable of performing complex operations, capable of understanding much more than just how many bitcoins one currently has in his digital wallet.
This is where the idea of Smart Contracts come in. Smart Contracts are in the process of becoming a cornerstone for enterprise blockchain applications and will likely become one of the pillars of blockchain technology.
In this presentation, we will explore what a smart contract is, how it works, and how it is being used.
Advantages and disadvantages of permissionless blockchainBlockchain Council
Blockchain Technology surfaced with the surge of cryptocurrency. Today you may find every business, and all the big industries are talking about using Blockchain. They want to make it a part of their mainstream business operations. On the surface, we know that blockchain is a distributed ledger technology. It works on the principle of decentralisation and peer-to-peer transactions. It means that Blockchain culminates the need of having intermediaries. Thus it saves cost and time both. It is the prime reason that many of the financial institutions and businesses are trying to use Blockchain for their benefit.Check out the full article here >>
https://bit.ly/2zRdAyS
Getting Started in Blockchain Security and Smart Contract AuditingBeau Bullock
Why is blockchain security important?
Blockchain usage has exploded since the Bitcoin whitepaper was first published in 2008. Many applications rely on this technology for increased trust and privacy, where they would otherwise be absent from a centralized system.
The ecosystem surrounding blockchain technology is large, complex, and has many moving pieces. Exchanges exist where users can transact various cryptocurrencies, NFTs, and tokens. Smart contracts can be written to programmatically apply behavior to blockchain transactions. Decentralized Finance (DeFi) markets exist where users can swap tokens without needing to sign up for an account.
All of these pieces are prone to vulnerabilities, and with blockchain being at the forefront of emerging technology new issues are being found daily.
In this Black Hills Information Security (BHIS) webcast, we'll use case studies about recent blockchain hacks to introduce the underlying issues that occur in writing/engineering smart contracts that have ultimately lead to the loss of millions of dollars to attackers.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1RJcfss.
Juan Batiz-Benet makes a short intro of IPFS (the InterPlanetary File System), a new hypermedia distribution protocol, addressed by content and identities. He also discusses the IPLD data model and example data structures (unixfs, keychain, post). Filmed at qconsf.com.
Juan Batiz-Benet is an Independent Scientist.
This tutorial will walk you through building a Hyperledger Composer blockchain solution from scratch. In the space of a few hours you will be able to go from an idea for a disruptive blockchain innovation, to executing transactions against a real Hyperledger Fabric blockchain network and generating/running a sample Angular 2 application that interacts with a blockchain network.
This tutorial gives an overview of the techniques and resources available to apply to your own use case.
Note: This tutorial was written against the latest Hyperledger Composer build on Ubuntu Linux running with Hyperledger Fabric v1.0 where referenced below and also tested for a Mac environment.
This course covers in detail the technical principles & concepts behind blockchain. In addition, it seeks to provide you with the insights and deep understanding of the various components of blockchain technology, and enables you to determine for yourself how to best leverage and exploit blockchain for your project, organisation or start-up.
Link - https://www.experfy.com/training/courses/blockchain-technology-fundamentals
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)Svetlin Nakov
Consensus Algorithms
Dr. Svetlin Nakov at CryptoBlockCon - Las Vegas (11 Dec 2018)
In this talk the speaker Svetlin Nakov explains very briefly the concepts of decentralized consensus and blockchain consensus algorithms, along with examples from popular blockchain networks and DLT ledgers:
The concept of Byzantine Fault Tolerance (BFT)
The role of consensus algorithms in decentralized systems and blockchains
Proof-of-work consensus (PoW), mining, pools, hash power, ASIC mining, etc.
Proof-of-stake (PoS) and its variants: DPoS (delegated PoS), RPoS (randomized PoS), LPoS (leased PoS), PoI (proof of importance)
Practical Byzantine Fault Tolerance (PBFT) and FBA (federated byzantine agreement)
Proof-of-Authority (POA)
Non-blockchain consensus, asynchronous byzantine fault tolerance (aBFT) and Hashgraph
Hyperledger Fabric Technical Deep Dive 20190618Arnaud Le Hors
Slides presented at the Hyperledger Fabric workshop in Barecelona on July 10th, 2019.
This introduces blockchain for business and describes in details the Hyperledger Fabric design principles, overall architecture, its components, and the transaction flow.
Apart from Proof of Work there are many other Consensus Mechanisms being discussed. What are they and what are their pros and cons. (Proof of Stake, Proof of Elapsed Time, Proof of Authority, Proof of Burn, Proof of Authority, Byzantine Fault Tolerance, Proof of Importance)
Consensus Algorithms: An Introduction & AnalysisZak Cole
When evaluating blockchain networks, consensus mechanism and design are an imperative aspect of system function. While effective implementations should meet technical criteria specific to distributed computational environments, use case should also be taken into consideration.
This webinar will focus on illustrating these concepts while providing a high-level overview of popular consensus algorithms such as Paxos, Aura, Clique, Proof-of-Work, and Proof-of-Stake. Please join us in the discussion – whether you wish to learn about the basics of consensus algorithms or if you have deeper questions on performance, security, or suitability.
Explains what the Blockchain is and how it works. Features slides about the Cryptography, P2P Networking, Blockchain Data Structure, Bitcoin Transactions, Proof of Work Algorithm (Mining) and Scripts.
These are the slides for a talk I gave to the Fredericksburg Linux User Group about Bitcoin and cryptocurrency in general on 2014-02-22. Audio is forthcoming from one of the attendees as a podcast.
Advantages and disadvantages of permissionless blockchainBlockchain Council
Blockchain Technology surfaced with the surge of cryptocurrency. Today you may find every business, and all the big industries are talking about using Blockchain. They want to make it a part of their mainstream business operations. On the surface, we know that blockchain is a distributed ledger technology. It works on the principle of decentralisation and peer-to-peer transactions. It means that Blockchain culminates the need of having intermediaries. Thus it saves cost and time both. It is the prime reason that many of the financial institutions and businesses are trying to use Blockchain for their benefit.Check out the full article here >>
https://bit.ly/2zRdAyS
Getting Started in Blockchain Security and Smart Contract AuditingBeau Bullock
Why is blockchain security important?
Blockchain usage has exploded since the Bitcoin whitepaper was first published in 2008. Many applications rely on this technology for increased trust and privacy, where they would otherwise be absent from a centralized system.
The ecosystem surrounding blockchain technology is large, complex, and has many moving pieces. Exchanges exist where users can transact various cryptocurrencies, NFTs, and tokens. Smart contracts can be written to programmatically apply behavior to blockchain transactions. Decentralized Finance (DeFi) markets exist where users can swap tokens without needing to sign up for an account.
All of these pieces are prone to vulnerabilities, and with blockchain being at the forefront of emerging technology new issues are being found daily.
In this Black Hills Information Security (BHIS) webcast, we'll use case studies about recent blockchain hacks to introduce the underlying issues that occur in writing/engineering smart contracts that have ultimately lead to the loss of millions of dollars to attackers.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1RJcfss.
Juan Batiz-Benet makes a short intro of IPFS (the InterPlanetary File System), a new hypermedia distribution protocol, addressed by content and identities. He also discusses the IPLD data model and example data structures (unixfs, keychain, post). Filmed at qconsf.com.
Juan Batiz-Benet is an Independent Scientist.
This tutorial will walk you through building a Hyperledger Composer blockchain solution from scratch. In the space of a few hours you will be able to go from an idea for a disruptive blockchain innovation, to executing transactions against a real Hyperledger Fabric blockchain network and generating/running a sample Angular 2 application that interacts with a blockchain network.
This tutorial gives an overview of the techniques and resources available to apply to your own use case.
Note: This tutorial was written against the latest Hyperledger Composer build on Ubuntu Linux running with Hyperledger Fabric v1.0 where referenced below and also tested for a Mac environment.
This course covers in detail the technical principles & concepts behind blockchain. In addition, it seeks to provide you with the insights and deep understanding of the various components of blockchain technology, and enables you to determine for yourself how to best leverage and exploit blockchain for your project, organisation or start-up.
Link - https://www.experfy.com/training/courses/blockchain-technology-fundamentals
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)Svetlin Nakov
Consensus Algorithms
Dr. Svetlin Nakov at CryptoBlockCon - Las Vegas (11 Dec 2018)
In this talk the speaker Svetlin Nakov explains very briefly the concepts of decentralized consensus and blockchain consensus algorithms, along with examples from popular blockchain networks and DLT ledgers:
The concept of Byzantine Fault Tolerance (BFT)
The role of consensus algorithms in decentralized systems and blockchains
Proof-of-work consensus (PoW), mining, pools, hash power, ASIC mining, etc.
Proof-of-stake (PoS) and its variants: DPoS (delegated PoS), RPoS (randomized PoS), LPoS (leased PoS), PoI (proof of importance)
Practical Byzantine Fault Tolerance (PBFT) and FBA (federated byzantine agreement)
Proof-of-Authority (POA)
Non-blockchain consensus, asynchronous byzantine fault tolerance (aBFT) and Hashgraph
Hyperledger Fabric Technical Deep Dive 20190618Arnaud Le Hors
Slides presented at the Hyperledger Fabric workshop in Barecelona on July 10th, 2019.
This introduces blockchain for business and describes in details the Hyperledger Fabric design principles, overall architecture, its components, and the transaction flow.
Apart from Proof of Work there are many other Consensus Mechanisms being discussed. What are they and what are their pros and cons. (Proof of Stake, Proof of Elapsed Time, Proof of Authority, Proof of Burn, Proof of Authority, Byzantine Fault Tolerance, Proof of Importance)
Consensus Algorithms: An Introduction & AnalysisZak Cole
When evaluating blockchain networks, consensus mechanism and design are an imperative aspect of system function. While effective implementations should meet technical criteria specific to distributed computational environments, use case should also be taken into consideration.
This webinar will focus on illustrating these concepts while providing a high-level overview of popular consensus algorithms such as Paxos, Aura, Clique, Proof-of-Work, and Proof-of-Stake. Please join us in the discussion – whether you wish to learn about the basics of consensus algorithms or if you have deeper questions on performance, security, or suitability.
Explains what the Blockchain is and how it works. Features slides about the Cryptography, P2P Networking, Blockchain Data Structure, Bitcoin Transactions, Proof of Work Algorithm (Mining) and Scripts.
These are the slides for a talk I gave to the Fredericksburg Linux User Group about Bitcoin and cryptocurrency in general on 2014-02-22. Audio is forthcoming from one of the attendees as a podcast.
The speaker share his vision on the prospects of employing the technology for practical tasks. He presented basics of the blockchain architecture with case studies of JavaScript blockchain implementation using Node.js.
This presentation by Valerii Radchenko (Senior Software Engineer, Consultant, GlobalLogic, Kharkiv) was delivered at GlobalLogic Kharkiv JS TechTalk #2 on August 17, 2018.
Connecting The Block Cointelligence Academy by Dr Vince MingCointelligence
This lecture is intended for konwledge sharing and educational purpose only in order to provide a comprehensive overview and helping people who wants to find out about the blockchain's core concept from a general technical standpoint with the intention to gain the right perception, the basic know-how and overall perspective on the emerging technology.
An technical overview of Ethereum that provides a full picture starting from the original problem of building a distributed ledger and mining up to smart contracts.
Please note that there are no llamas in this presentation.
Tucson Blockchain Devs meetup June 7 and O'Reilly Fluent 2018. Some things to consider if you're starting to think about how to integrate with blockchains.
The project deals about how blockchain works, proof-of-work and merkle tree hash function. The project also tries to explain how the bitcoin uses ECDSA algorithmt power the cryptography.
Blockchain overview, use cases, implementations and challengesSébastien Tandel
Most know about Bitcoin, the well-known crypto-currency. Less know the details about the underlying and enabling technology, Blockchain.
Hopefully, this presentation provides enough insights to understand blockchain concepts and why it's perceived to potentially disrupt many market segments, from retail to governments, from finance to health care. At last, I hope to brush fairly the many challenges of this rather new technology.
Overview and clarification of blockchain on following respects: what blockchain is, when it appeared, how it works, who designed/develops it, what it can achieve?
Author : Dr Christian Cachin, IBM
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
2. About this talk
● Explain IBC design goals
● Demystify implementation
○ IBC is a protocol!
○ How to do it yourself (rapid version)
● Walk through example
○ Using IBC to connect Ethereum & Zcash
○ Shielded ERC20 transactions: privately send your existing ERC20 tokens
3. What - “Inter-blockchain communication”
● Mechanism for relaying data packets between chain A & chain B
● Off-chain relayers responsible for watching chain A & committing
transactions to chain B
○ Relayers are not permissioned, anyone can relay
● Opaque payload: IBC protocol defines causal ordering semantics,
any application logic can be implemented on top
4. What - Authenticated message passing
● Rules on chain B which define a subset of accepted packets
○ If packet has been received on B, know something about state of A
● Chain B verifies proof that packet has been sent on chain A
● Various methods of doing so, with different security properties
○ Chain B acts as a Bitcoin-style light client of chain A (Merkle proofs)
○ Intermediary “peg zone” with finality and accountable validator set
● Must trust - consensus algorithms and light client verification
5. What - Use cases
● Basics
○ Transfer tokens (fungible/non-fungible) across chains
○ Conditionalize contract execution or output locking on state of another chain
● Sharding-esque
○ Split & parallelize contract logic across multiple chains with compatible VMs
■ IBC exposes a channel-like primitive
○ Compose hybrid EVM-Cosmos-Zcash state machines
○ Delegated security - validators for one chain slashable over IBC on another
● Key point - heterogenous chains
○ Various combinations of IBC primitives can be implemented on each chain
○ Sovereign chains can have custom features (zkSNARKs!)
6. How - Security model
● Goal - allow preservation of “contract invariants” across chains
○ Burn asset T on chain A, redeem “T vouchers” on chain B
○ Burn T vouchers on chain B, redeem T on chain A
○ (which is really the voucher? No canonical chain!)
● State machine of B must verify that state machine of A burned T
○ Can encapsulate some of this verification in the known components of Alpha/Beta
state machines prior to creating IBC connection
■ Or prove it directly if code is stored in state and VMs are compatible
○ After A burns T, writes some data to a provable store
■ Then B can just verify light client proof of written data
■ Data couldn’t have been written if T hadn’t been burned
7. How - Connection lifecycle
● Connection - data necessary to verify packets between two chains
● Opening a connection
○ Root-of-trust - genesis block, initial validator set added “at connection creation”
■ When smart contract is deployed
■ When governance implements upgrade
○ Any connection user can check the root-of-trust
● Updating trusted headers
○ Verify update from H1
to H2
■ Tendermint - Track validator set, check signed by previous validator set
■ Nakamoto consensus - continues previous chain, most work seen
○ Headers allow packet proof verification
● Closing a connection
○ In exceptional cases - fork, safety violation
○ Can be done by permissioned entity (governance) or some on-chain proof-of-fraud
8. How - Strictly ordered message passing
● IBC implements a vector clock for two processes (blockchains)
○ A, B chains of interest
○ i packet counter
○ x, y events (other transactions)
○ -> before, => implies
○ Asend:i
-> Breceive:i
○ Breceive:i
-> Areceipt:i
○ Asend:i
-> Asend:i+1
○ x -> Asend:i
=> x -> Breceive:i
○ y -> Breceive:i
=> y -> Areceipt:i
● Consensus provides single canonical ordering on a chain
● IBC provides single canonical ordering across chains
● Easily generalized to an n-process vector clock for multi-chain ordering
○ a on chain A before b on chain B before c on chain C
9. How - Ordering guarantees
● Ordering guarantee can be used to reason about the combined
state of both chains as a whole
○ Example: fungible token total supply
■ If packet i is sent on A, burn tokens
■ If packet i is received on B, mint vouchers
● Tokens must have previously been burned on A
● Total supply conserved
■ Counters prevent replay on the same chain
■ Metadata prevents replay on other chains
10. How - Channels
● Channel: abstraction providing ordering guarantee
○ Set of four queues, two per chain
■ On chain A
● Outgoing A-B
● Incoming B-A receipts
■ On chain B
● Outgoing B-A
● Incoming A-B receipts
○ Each queue keeps a counter
○ Packets can only be sent & received in order
■ If counters mismatch, reject
11. How - Packets
● Packet - Individual datagram with opaque payload & metadata
○ Five-tuple - (type, sequence, source, destination, data)
■ Type - multiplexing (one connection, many applications)
■ Sequence - ordering guarantee (prevent replay)
■ Source - source chain (prevent replay masquerading from another chain)
■ Destination - destination chain (prevent replay on another chain)
■ Data - opaque application-specific payload
○ Packets are committed once, in order, from only one chain to only one chain
12. How - Receipt, acknowledgement, timeout
● IBC receipt - IBC packet back to the source chain
○ Proves original packet was received & acted upon
■ Relevant application-specific action was taken
○ Data for proof can then be deleted from Merkle tree
● IBC timeout on source chain
○ Each packet additionally contains timeout t relative to destination chain state
○ Destination chain rejects packets past t
○ t can be height or timestamp, must be proved back to A for asset release
■ Via same proof as IBC packets (Merkle path)
■ Provides safety if packet isn’t committed on destination chain
■ Assets can be un-escrowed, released to original sender
13. Why - One asset, many chains
● Assets can be freely transferred
○ Send your BTC from Bitcoin, to Ethereum, to Cosmos, to Zcash, then back
○ Always the “same” BTC - can be redeemed back through that path to vanilla BTC
● Multi-hop routing reduces implementation cost
○ Assets can be sent along any path of individually-connected chains
● Permissionless
○ Set up another chain, implement IBC with an existing asset, add new features
14. Why - New features, old security
● When you need privacy, send your BTC to Zcash
○ Usually keep it on the Bitcoin chain for security
○ (but be careful about linkability!)
● No trusted setup risk
○ IBC contract on Bitcoin (or peg) can track total supply in/out
○ If trusted setup was compromised:
■ BTC on Zcash chain is at risk
■ BTC on Bitcoin chain is at no risk - IBC contract will cap inflation
○ Risk is always opt-in!
● Generalizable: supply for fungible tokens, uniqueness for NFTs, etc.
15. Why - Opt-in upgrades
● Add new features to a chain, no governance required
○ Copy the chain, add the features, create an IBC connection back to the old chain
○ Anyone can elect to move their existing assets to the new chain
■ Could allow moving back to the old chain - or not
○ Security?
■ Naive (simple) PoS - less secure initially, more secure as staking token moves
■ Delegated security - New chain validators slashable on old chain over IBC
● No need for a new asset
● Both chains can peacefully coexist
16. Aside - Consensus requirements
● State finality
○ IBC safety requires finality, otherwise coins could be double-spent
○ Consensus landscape
■ Tendermint/PBFT - Instant finality
■ Casper FFG - Fast finality
■ Nakamoto consensus (PoW, Tezos/Ouroboros Praos PoS)
● Probabilistic finality, must pick a threshold
● Could vary threshold based on transfer amount (~risk)
● Proof verification
○ With smart contracts or custom state machine - natively
○ Without smart contracts - separate “peg chain” to bridge
17. Aside - Bridged “Peg-zone”
● Accountable federated peg
○ Cosmos Bonded PoS (and similar) have configurable slashing conditions
○ Assets controlled by weighted (or k-of-m) multi-signature on pegged chain
■ e.g. Bitcoin, Zcash, Monero
■ Future alternative - multiparty ECDSA
○ Second Tendermint chain with validator set of multi-signature
■ Transactions committed to the bridge chain must be signed by multi-sig,
then can be relayed to main chain
■ Any transactions signed but not committed to bridge chain are slashable!
● Also slashable - failure to update multi-sig if validator set is changed
■ Received transactions on main chain can be relayed back to bridge chain for
ease-of-verification
■ Configurable finality threshold (n confirmations)
○ Main (pegged) chain needs no additional features
18. Example - Ethereum ERC20 ⇔ Zcash UIT
● Zcash UITs (User-issued tokens)
○ https://github.com/zcash/zcash/issues/830
○ Bitcoin-style “colored coins” on Zcash
○ Not in Sapling but maybe soon? (see discussion on the issue)
○ Alternatives: Zcash-fork per ERC20 token, or ZEC-as-ERC20
● Associate each ERC20 token contract with a unique UIT identifier
○ “ibc/ethereum/{contract address}”
○ Identifiers can be created lazily on demand (and also for new tokens)
● ERC20 token vouchers can be shielded on the Zcash chain
● Can remain so indefinitely and be shielded-transferred as usual
● Once unshielded, can be transferred back to the original ERC20
19. ERC20 ⇔ UIT - Components
● Dedicated smart contract on Ethereum
○ Holds ERC20 tokens in escrow
○ Provide proof that x of token y has been escrowed
○ Verify proof that UIT has been burned and release escrowed ERC20 tokens
○ (channel ordering semantics are optional since transfers are commutative)
● Zcash multisignature (or multiparty ECDSA) peg chain
○ Multisignature (unshielded) account on Zcash chain
○ Signer set of multisignature account runs Tendermint consensus on peg chain
○ Peg chain
■ Verifies proofs of ERC20 token escrow on Ethereum
■ Provides proofs of UITs burned to Ethereum smart contract
■ Slashes multisignature members if they commit a fault
20. ERC20 ⇔ UIT - Step I (Ethereum)
● User has some ERC20 token T, on the Ethereum chain
● User calls ERC20 transfer to send token to IBC smart contract
■ IBC contract escrows ERC20 token
■ IBC contract logs the escrow event in the Patricia trie
● Includes: sender, token, amount, desired destination address
21. ERC20 ⇔ UIT - Step II (Zcash peg chain)
● IBC packet sent from Ethereum to Zcash peg chain
○ IBC relayer (user or third-party) constructs IBC packet
■ Packet references escrow event on Ethereum chain
○ IBC relayer commits packet in a transaction to Zcash peg chain
■ Zcash peg chain state machine verifies proof of event
22. ERC20 ⇔ UIT - Step III (Zcash)
● Zcash peg chain validators sign UIT-mint transaction
○ UIT-mint transaction mints the associated UIT denomination in the amount proved
by the Ethereum event on the peg chain, to the user-specified destination address
○ Peg chain validators or user commit mint transaction to Zcash chain
● User can then transact as normal with a Zcash UIT
○ Shield to a z-address, spend privately, unshield/shield again as desired
○ Privacy equivalent: ERC20-side is “unshielded pool”
■ Be careful about pattern-matching linkability!
● UIT can be sent back to Ethereum in reverse
○ Provably burn the UIT on Zcash, submit proof to Zcash peg chain
○ IBC relayer submits packet to Ethereum smart contract which unescrows the
tokens
23. ERC20 ⇔ UIT - Properties
● Permissionless & opt-in
○ Anyone can implement for any token
○ Which chain to keep on, when to move up to the asset holder
○ No risk for existing ERC20 token holders of inflation
■ IBC contract can track total supply in/out
● Full Zcash-level privacy when shielded
○ Same level of linkability as transparent addresses / unshielded pool
● Scalable implementation
○ Same logic (and one peg chain) can handle all ERC20 contracts & associated UITs
24. Future Research - higher-assurance proofs
● IBC security dependent on correct light client proofs
● Various degrees of light-client assurance
○ Bitcoin - relatively low
■ No state transition verification
■ Long forks do seem to be unlikely in practice...
○ Cosmos/Tendermint - medium
■ No state transition verification
■ But - lying to light client always a slashable offense
● IBC packet data is public, so it would definitely be caught!
■ Security dependent on value-at-stake (hence the Cosmos hub-spoke model)
○ Coda Protocol / recursive SNARKs - high
■ Can verify full state transition history!
■ Still need to disincentivize forks
25. Future Research - Byzantine recovery
● What if consensus breaks?
○ No valid chain, n valid chains (valid for IBC = can provide light client proofs)
○ Wide space of possibilities
■ n valid chains: can spot duplicate headers when published
■ 0 valid chains: no progress without intervention (but timeouts protect assets)
● What if one chain’s state machine has a bug?
○ No protection right now - if you hold assets on the chain, you accept the risk
○ Could implement fraud proofs
■ Complex requirements on state machines (on both chains)
○ Where applicable, governance on one chain could “fix” - credit the original tokens
at parity with balances on the other chain before the bug was exploited
■ Not an ideal solution, irregular state change
● Ideal case - asset security (invariant set) as long as 1-of-n chains are correct & live
26. Questions?
● Cosmos will implement IBC for our stack, but the protocol is open!
○ Alternative implementations, contributions, ideas welcome
● Spec - github.com/cosmos/cosmos-sdk/tree/develop/docs/spec/ibc
● Email - cwgoes@tendermint.com
● Check-out the break-out!
○ Rob Habermeier leading on zero-knowledge state transitions in
blockchains, 15:40 in Breakout 2