Ripple (XRP) is an independent digital asset that is native to the Ripple Consensus Ledger. With proven governance and the fastest transaction confirmation of its kind, XRP is said to be the most efficient settlement option for financial institutions and liquidity providers seeking global reach, accessibility and fast settlement finality for interbank flows.
Source: Ripple - XRP
Concurrency Control Mechanism for Nested Transactions in Mobile Environment ..............................1
Ms. Nyo Nyo Yee and Ms. Hninn Aye Thant
Generating Keys in Elliptic Curve Cryptosystems ................................................................................1
Dragan Vidakovic and Dusko Parezanovic
Cost Estimation of Information Technology Risks and Instituting Appropriate Controls........................1
Princewill Aigbe and Jackson Akpojaro
An Efficient Access Control Model for Wireless Sensor Network..........................................................1
Behzad Molavi, Hamed Bashirpour and Dr. Morteza Nikooghadam
Three Tank System Control Using Neuro - Fuzzy Model Predictive Control ..........................................1
Adel Abdurahman
The Computer-Linguistic Analysis of Socio-Demographic Profile of Virtual Community Member ..........1
Yuriy Syerov, Andriy Peleschyshyn and Solomia Fedushko
Using Analytic Hierarchy Process (AHP) to Select and Rank a Strategy Based Technology .....................1
Majid Nili Ahmadabadi, Masoud Najafi, Peyman Gholami and Payam Gholami
Explore the Possibility of Moving the Government to the Web 2 in IRAN.............................................1
Alireza Shirvani, Ameneh Malmir and Fariba Azizzadeh
With the recent crypto bubble engulfing the world, you would have come across two prominent words: Blockchain and Cryptocurrency. Well, when it comes to origin and development then cryptocurrency marks the growth of Blockchain technology.
Fair and trustworthy: Lock-free enhanced tendermint blockchain algorithmTELKOMNIKA JOURNAL
Blockchain Technology is exclusively used to make online transactions secure by
maintaining a distributed and decentralized ledger of records across multiple computers.
Tendermint is a general-purpose blockchain engine that is composed of two
parts; Tendermint Core and the blockchain application interface. The application interface
makes Tendermint suitable for a wide range of applications. In this paper, we
analyze and improve Practical Byzantine Fault Tolerant (PBFT), a consensus-based
Tendermint blockchain algorithm. In order to avoid negative issues of locks, we first
propose a lock-free algorithm for blockchain in which the proposal and voting phases
are concurrent whereas the commit phase is sequential. This consideration in the algorithm
allows parallelism. Secondly, a new methodology is used to decide the size
of the voter set which is a subset of blockchain nodes, further investigating the block
sensitivity and trustworthiness of nodes. Thirdly, to fairly select the voter set nodes,
we employ the random walk algorithm. Fourthly, we imply the wait-freedom property
by using a timeout due to which all blocks are eventually committed or aborted. In
addition, we have discussed voting conflicts and consensuses issues that are used as a
correctness property, and provide some supportive techniques.
Concurrency Control Mechanism for Nested Transactions in Mobile Environment ..............................1
Ms. Nyo Nyo Yee and Ms. Hninn Aye Thant
Generating Keys in Elliptic Curve Cryptosystems ................................................................................1
Dragan Vidakovic and Dusko Parezanovic
Cost Estimation of Information Technology Risks and Instituting Appropriate Controls........................1
Princewill Aigbe and Jackson Akpojaro
An Efficient Access Control Model for Wireless Sensor Network..........................................................1
Behzad Molavi, Hamed Bashirpour and Dr. Morteza Nikooghadam
Three Tank System Control Using Neuro - Fuzzy Model Predictive Control ..........................................1
Adel Abdurahman
The Computer-Linguistic Analysis of Socio-Demographic Profile of Virtual Community Member ..........1
Yuriy Syerov, Andriy Peleschyshyn and Solomia Fedushko
Using Analytic Hierarchy Process (AHP) to Select and Rank a Strategy Based Technology .....................1
Majid Nili Ahmadabadi, Masoud Najafi, Peyman Gholami and Payam Gholami
Explore the Possibility of Moving the Government to the Web 2 in IRAN.............................................1
Alireza Shirvani, Ameneh Malmir and Fariba Azizzadeh
With the recent crypto bubble engulfing the world, you would have come across two prominent words: Blockchain and Cryptocurrency. Well, when it comes to origin and development then cryptocurrency marks the growth of Blockchain technology.
Fair and trustworthy: Lock-free enhanced tendermint blockchain algorithmTELKOMNIKA JOURNAL
Blockchain Technology is exclusively used to make online transactions secure by
maintaining a distributed and decentralized ledger of records across multiple computers.
Tendermint is a general-purpose blockchain engine that is composed of two
parts; Tendermint Core and the blockchain application interface. The application interface
makes Tendermint suitable for a wide range of applications. In this paper, we
analyze and improve Practical Byzantine Fault Tolerant (PBFT), a consensus-based
Tendermint blockchain algorithm. In order to avoid negative issues of locks, we first
propose a lock-free algorithm for blockchain in which the proposal and voting phases
are concurrent whereas the commit phase is sequential. This consideration in the algorithm
allows parallelism. Secondly, a new methodology is used to decide the size
of the voter set which is a subset of blockchain nodes, further investigating the block
sensitivity and trustworthiness of nodes. Thirdly, to fairly select the voter set nodes,
we employ the random walk algorithm. Fourthly, we imply the wait-freedom property
by using a timeout due to which all blocks are eventually committed or aborted. In
addition, we have discussed voting conflicts and consensuses issues that are used as a
correctness property, and provide some supportive techniques.
Blockchain Scalability - Themes, Tools and TechniquesGokul Alex
This presentation is a deep dive on Blockchain Scalability Challenges, Constraints with a narrative on promising techniques such as State Channel, Side Chains, Simple Payment Vehicles, Consensus Algorithms and Directed Acyclic Graphs. The presentation starts with analysing the scalability cube.
In this document i take an extensive look inside what are the current product offerings from Ripple and how institutions can benefit from using it. As of 2020 numerous other initiatives have also taken place in the space of cross border payments and settlements space. We will be covering those later.
Introduction
Business blockchain requirements vary. Some uses require rapid network consensus
systems and short block confirmation times before being added to the chain. For others,
a slower processing time may be acceptable in exchange for lower levels of required
trust. Scalability, confidentiality, compliance, workflow complexity, and even security
requirements differ drastically across industries and uses. Each of these requirements, and
many others, represent a potentially unique optimization point for the technology.
For these reasons, Hyperledger incubates and promotes a range of business blockchain
technologies including distributed ledgers, smart contract engines, client libraries, graphical
interfaces, utility libraries, and sample applications. Hyperledger’s umbrella strategy
encourages the re-use of common building blocks via a modular architectural framework.
This enables rapid innovation of distributed ledger technology (DLT), common functional
modules, and the interfaces between them. The benefits of this modular approach include
extensibility, flexibility, and the ability for any component to be modified independently
without affecting the rest of the system.
There are many cryptocurrencies out there; in fact, as of April 2021, there were over 9,500 cryptocurrencies in circulation listed on the Coinmarketcap. This number is expected to increase in the future as people’s interest in cryptocurrencies keeps rising. Although you might have heard about cryptocurrencies and known how it works, it’s possible you still don’t know what cryptocurrency actually is, or what means. The fields of cryptocurrency and the blockchain technology that drives cryptocurrencies can be a bit confusing. So, what is cryptocurrency? This article uses relatable terminology to explain in detail what cryptocurrency is, and the science of cryptography that decentralizes and drives cryptocurrencies, and makes them secure.
Blockchain Scalability - Architectures and AlgorithmsGokul Alex
My presentation on 'Blockchain Scalability - Architectures and Algorithms' for the TechAthena Digital Community Webinar.
Blockchain Scalability is one of the most significant concern for Minimum Viable Blockchain Implementation. It is one of the key aspects determining the relevance and feasibility of Blockchain Technology for a particular use case.This session will cover the fundamental aspects of distributed computing that determine the contours of scalability.
Subsequently, the session will outline the parameters and metrics related to Blockchain Scalability in detail. In this context, the session will deep dive into architectural and algorithmic techniques that enables a scalable Blockchain.Architectural techniques such as vertical scaling and horizontal scaling will be explained in detail. Design techniques such as State Channels, Sharding, SideChains, Off chain computations, Block Size and Time Optimization etc. will be explained.
In summary, this session will conclude with the implications and trade-off between Blockchain Scalability, Security, Simplicity and Interoperability. Looking forward to your views and thoughts !
Primer to smart contracts, smart property, trustless asset managementTim Swanson
Companion video at: http://youtu.be/VDRYZ122mXA
Tim Swanson discusses cryptocurrencies, cryptoledgers, smart contracts, smart property, decentralized autonomous organizations and cryptobarter. There are footnotes included as well. Filmed at Hacker Dojo on February 14, 2014 during Ethereum meetup. More info at: www.ofnumbers.com
What is A Smart Contract? | Smart Contracts Tutorial | Smart Contracts in Blo...Simplilearn
This presentation on smart contract tutorial will help you understand what is a smart contract, why we need a smart contract, solidity for a smart contract, Blockchain implementation of the smart contract, voting process, hospitals and at the end you will see a use case implementation on crowdfunding smart contract. Smart contracts are self-executing contracts which contain the terms and conditions of an agreement between the peers. A smart contract is very similar to a vending machine. It eliminates the need for intermediate and escrow services. The terms and conditions of an agreement are written in code. These agreements facilitate the exchange of money, shares, property etc. All of this process is executed in Blockchain's decentralized platform. So, let us get started and understand what is a smart contract.
Below topics are explained in this smart contract presentation:
1. Why smart contract?
2. What is a smart contract?
3. Solidity for smart contract
4. Blockchain implementation of a smart contract
5. Voting process
6. Hospitals
7. Use case - Crowd funding smart contract
Simplilearn’s Blockchain Certification Training has been designed for developers who want to decipher the global craze surrounding Blockchain, Bitcoin and cryptocurrencies. You’ll learn the core structure and technical mechanisms of Bitcoin, Ethereum, Hyperledger and Multichain Blockchain platforms, use the latest tools to build Blockchain applications, set up your own private Blockchain, deploy smart contracts on Ethereum and gain practical experience with real-world projects.
Why learn Blockchain?
Blockchain technology is the brainchild of Satoshi Nakamoto, which enables digital information to be distributed. A network of computing nodes makes up the Blockchain. Durability, robustness, success rate, transparency, incorruptibility are some of the enticing characteristics of Blockchain. By design, Blockchain is a decentralized technology which is used by a global network of the computer to manage Bitcoin transactions easily. Many new business applications will result in the usage of Blockchain such as Crowdfunding, smart contracts, supply chain auditing, etc.
The Blockchain Certification Training Course is recommended for:
1. Developers
2. Technologists interested in learning Ethereum, Hyperledger and Blockchain
3. Technology architects wanting to expand their skills to Blockchain technology
4. Professionals curious to learn how Blockchain technology can change the way we do business
5. Entrepreneurs with technology background interested in realizing their business ideas on the Blockchain
Learn more at: https://www.simplilearn.com/
Distributed Ledger Technologies for International BankingEternic
In this report, we present an overview of various contemporary distributed ledger technologies (DLT) that have the potential to provide the foundation of an international banking platform and analyses of their respective applicability to the cross-border payments problem space.
Since the release of Bitcoin in 2009, there has been a constant stream of speculation over the potential for the underlying distributed ledger technology and principles to revolutionize financial market infrastructures. A decade later, and despite the talent and focus poured in, such a revolution has yet to materialize. However, blockchain technology has greatly matured in the meantime, and while many "Classical" blockchains are found wanting, considerably disjointed from the needs of international banking, some other variants show more promise. Read the report to learn more.
Distributed Ledger Technologies for International Banking - EternicEternic
In this report, we present an overview of various contemporary distributed ledger technologies (DLT) that have the potential to provide the foundation of an international banking platform and analyses of their respective applicability to the cross-border payments problem space.
Since the release of Bitcoin in 2009, there has been a constant stream of speculation over the potential for the underlying distributed ledger technology and principles to revolutionize financial market infrastructures. A decade later, and despite the talent and focus poured in, such a revolution has yet to materialize. However, blockchain technology has greatly matured in the meantime, and while many "Classical" blockchains are found wanting, considerably disjointed from the needs of international banking, some other variants show more promise. Read the report to learn more.
A Countermeasure for Double Spending Attacks on Blockchain Technology in Smar...IJNSA Journal
As a distributed technology, blockchain has been applied in many fields. Much research has been done on its inherent security issues. Among these security issues, double spending is one of the most pernicious. Current countermeasures are not systematic, they either focus on monitoring or detection with no effective strategy to prevent future double spending. These countermeasures also have serious drawbacks, such as high network traffic, high CPU utilization, and heavy management overhead. In this paper, we present a systematic approach to address double spending attack on smart grid. A reputable node is selected, which constantly compares all transactions in current time window with previously validated block and current block. Upon discovering conflicting transactions, a warning message with the conflicting transaction and two penalty transactions are broadcasted to the network to stop the current attack and to prevent future attacks. Our experiment has demonstrated our design is highly effective to detect double spending, with short detection time and low CPU utilizations.
Introduction to blockchain & cryptocurrenciesAurobindo Nayak
This was an intro session on blockchain and cryptocurrencies. If you want to view the webinar for this talk checkout: https://www.youtube.com/watch?v=rl5mVI7jEK0
Our latest white paper, “Blockchain Technology and the Financial Services Market,” covers themes around:
Distributed ledger and blockchain are about to cause major business transformations in the financial services industry
Three of the most promising fields of application are payment transactions, trade finance and over-the-counter markets
Technical challenges and legal frameworks are currently a major obstacle
Many market participants are exploring ways of using blockchain, including established institutions and start-ups firms
Read the entire research report for expert insights and the full Infosys Consulting point-of-view!
Blockchain Scalability - Themes, Tools and TechniquesGokul Alex
This presentation is a deep dive on Blockchain Scalability Challenges, Constraints with a narrative on promising techniques such as State Channel, Side Chains, Simple Payment Vehicles, Consensus Algorithms and Directed Acyclic Graphs. The presentation starts with analysing the scalability cube.
In this document i take an extensive look inside what are the current product offerings from Ripple and how institutions can benefit from using it. As of 2020 numerous other initiatives have also taken place in the space of cross border payments and settlements space. We will be covering those later.
Introduction
Business blockchain requirements vary. Some uses require rapid network consensus
systems and short block confirmation times before being added to the chain. For others,
a slower processing time may be acceptable in exchange for lower levels of required
trust. Scalability, confidentiality, compliance, workflow complexity, and even security
requirements differ drastically across industries and uses. Each of these requirements, and
many others, represent a potentially unique optimization point for the technology.
For these reasons, Hyperledger incubates and promotes a range of business blockchain
technologies including distributed ledgers, smart contract engines, client libraries, graphical
interfaces, utility libraries, and sample applications. Hyperledger’s umbrella strategy
encourages the re-use of common building blocks via a modular architectural framework.
This enables rapid innovation of distributed ledger technology (DLT), common functional
modules, and the interfaces between them. The benefits of this modular approach include
extensibility, flexibility, and the ability for any component to be modified independently
without affecting the rest of the system.
There are many cryptocurrencies out there; in fact, as of April 2021, there were over 9,500 cryptocurrencies in circulation listed on the Coinmarketcap. This number is expected to increase in the future as people’s interest in cryptocurrencies keeps rising. Although you might have heard about cryptocurrencies and known how it works, it’s possible you still don’t know what cryptocurrency actually is, or what means. The fields of cryptocurrency and the blockchain technology that drives cryptocurrencies can be a bit confusing. So, what is cryptocurrency? This article uses relatable terminology to explain in detail what cryptocurrency is, and the science of cryptography that decentralizes and drives cryptocurrencies, and makes them secure.
Blockchain Scalability - Architectures and AlgorithmsGokul Alex
My presentation on 'Blockchain Scalability - Architectures and Algorithms' for the TechAthena Digital Community Webinar.
Blockchain Scalability is one of the most significant concern for Minimum Viable Blockchain Implementation. It is one of the key aspects determining the relevance and feasibility of Blockchain Technology for a particular use case.This session will cover the fundamental aspects of distributed computing that determine the contours of scalability.
Subsequently, the session will outline the parameters and metrics related to Blockchain Scalability in detail. In this context, the session will deep dive into architectural and algorithmic techniques that enables a scalable Blockchain.Architectural techniques such as vertical scaling and horizontal scaling will be explained in detail. Design techniques such as State Channels, Sharding, SideChains, Off chain computations, Block Size and Time Optimization etc. will be explained.
In summary, this session will conclude with the implications and trade-off between Blockchain Scalability, Security, Simplicity and Interoperability. Looking forward to your views and thoughts !
Primer to smart contracts, smart property, trustless asset managementTim Swanson
Companion video at: http://youtu.be/VDRYZ122mXA
Tim Swanson discusses cryptocurrencies, cryptoledgers, smart contracts, smart property, decentralized autonomous organizations and cryptobarter. There are footnotes included as well. Filmed at Hacker Dojo on February 14, 2014 during Ethereum meetup. More info at: www.ofnumbers.com
What is A Smart Contract? | Smart Contracts Tutorial | Smart Contracts in Blo...Simplilearn
This presentation on smart contract tutorial will help you understand what is a smart contract, why we need a smart contract, solidity for a smart contract, Blockchain implementation of the smart contract, voting process, hospitals and at the end you will see a use case implementation on crowdfunding smart contract. Smart contracts are self-executing contracts which contain the terms and conditions of an agreement between the peers. A smart contract is very similar to a vending machine. It eliminates the need for intermediate and escrow services. The terms and conditions of an agreement are written in code. These agreements facilitate the exchange of money, shares, property etc. All of this process is executed in Blockchain's decentralized platform. So, let us get started and understand what is a smart contract.
Below topics are explained in this smart contract presentation:
1. Why smart contract?
2. What is a smart contract?
3. Solidity for smart contract
4. Blockchain implementation of a smart contract
5. Voting process
6. Hospitals
7. Use case - Crowd funding smart contract
Simplilearn’s Blockchain Certification Training has been designed for developers who want to decipher the global craze surrounding Blockchain, Bitcoin and cryptocurrencies. You’ll learn the core structure and technical mechanisms of Bitcoin, Ethereum, Hyperledger and Multichain Blockchain platforms, use the latest tools to build Blockchain applications, set up your own private Blockchain, deploy smart contracts on Ethereum and gain practical experience with real-world projects.
Why learn Blockchain?
Blockchain technology is the brainchild of Satoshi Nakamoto, which enables digital information to be distributed. A network of computing nodes makes up the Blockchain. Durability, robustness, success rate, transparency, incorruptibility are some of the enticing characteristics of Blockchain. By design, Blockchain is a decentralized technology which is used by a global network of the computer to manage Bitcoin transactions easily. Many new business applications will result in the usage of Blockchain such as Crowdfunding, smart contracts, supply chain auditing, etc.
The Blockchain Certification Training Course is recommended for:
1. Developers
2. Technologists interested in learning Ethereum, Hyperledger and Blockchain
3. Technology architects wanting to expand their skills to Blockchain technology
4. Professionals curious to learn how Blockchain technology can change the way we do business
5. Entrepreneurs with technology background interested in realizing their business ideas on the Blockchain
Learn more at: https://www.simplilearn.com/
Distributed Ledger Technologies for International BankingEternic
In this report, we present an overview of various contemporary distributed ledger technologies (DLT) that have the potential to provide the foundation of an international banking platform and analyses of their respective applicability to the cross-border payments problem space.
Since the release of Bitcoin in 2009, there has been a constant stream of speculation over the potential for the underlying distributed ledger technology and principles to revolutionize financial market infrastructures. A decade later, and despite the talent and focus poured in, such a revolution has yet to materialize. However, blockchain technology has greatly matured in the meantime, and while many "Classical" blockchains are found wanting, considerably disjointed from the needs of international banking, some other variants show more promise. Read the report to learn more.
Distributed Ledger Technologies for International Banking - EternicEternic
In this report, we present an overview of various contemporary distributed ledger technologies (DLT) that have the potential to provide the foundation of an international banking platform and analyses of their respective applicability to the cross-border payments problem space.
Since the release of Bitcoin in 2009, there has been a constant stream of speculation over the potential for the underlying distributed ledger technology and principles to revolutionize financial market infrastructures. A decade later, and despite the talent and focus poured in, such a revolution has yet to materialize. However, blockchain technology has greatly matured in the meantime, and while many "Classical" blockchains are found wanting, considerably disjointed from the needs of international banking, some other variants show more promise. Read the report to learn more.
A Countermeasure for Double Spending Attacks on Blockchain Technology in Smar...IJNSA Journal
As a distributed technology, blockchain has been applied in many fields. Much research has been done on its inherent security issues. Among these security issues, double spending is one of the most pernicious. Current countermeasures are not systematic, they either focus on monitoring or detection with no effective strategy to prevent future double spending. These countermeasures also have serious drawbacks, such as high network traffic, high CPU utilization, and heavy management overhead. In this paper, we present a systematic approach to address double spending attack on smart grid. A reputable node is selected, which constantly compares all transactions in current time window with previously validated block and current block. Upon discovering conflicting transactions, a warning message with the conflicting transaction and two penalty transactions are broadcasted to the network to stop the current attack and to prevent future attacks. Our experiment has demonstrated our design is highly effective to detect double spending, with short detection time and low CPU utilizations.
Introduction to blockchain & cryptocurrenciesAurobindo Nayak
This was an intro session on blockchain and cryptocurrencies. If you want to view the webinar for this talk checkout: https://www.youtube.com/watch?v=rl5mVI7jEK0
Our latest white paper, “Blockchain Technology and the Financial Services Market,” covers themes around:
Distributed ledger and blockchain are about to cause major business transformations in the financial services industry
Three of the most promising fields of application are payment transactions, trade finance and over-the-counter markets
Technical challenges and legal frameworks are currently a major obstacle
Many market participants are exploring ways of using blockchain, including established institutions and start-ups firms
Read the entire research report for expert insights and the full Infosys Consulting point-of-view!
"The Stellar Consensus Protocol: A Federated Model for Internet-level Consens...eraser Juan José Calderón
This paper introduces federated Byzantine agreement (FBA), a new approach to consensus. FBA’s robustness stems from quorum slices, individual
trust decisions made by each node that together determine system-level quorums.
Slices bind the system together much the way individual networks’
peering and transit decisions now unify the Internet.
We also present the Stellar Consensus Protocol (SCP), a construction for FBA. Like all Byzantine agreement protocols, SCP makes no assumptions
about the rational behavior of attackers. Unlike prior Byzantine agreement
models, which presuppose a unanimously accepted membership list, SCP
enjoys open membership that promotes organic network growth. Compared
to decentralized proof of-work and proof-of-stake schemes, SCP has modest
computing and financial requirements, lowering the barrier to entry and
potentially opening up financial systems to new participants.
Is Blockchain the practical solution to the all the trust and integrity issues ? Or we need something else?
Here’s my take on Blockchains vs a TransactionDAG (IOTA)
#iota #blockchain #eos #practical #take
http://paxcel.net/blog/eos-vs-iota/
Journey to Blockchain Scalability: A Close Look at Complete Scaling Solutions...Zeeve
In this webinar, Ravi Chamria, the CEO and Co-founder of Zeeve, dives deep into the topic of blockchain scalability. Discover the complete scaling solutions for L1 and L2 chains as Ravi breaks down the challenges and trade-offs associated with scalability, security, and decentralization.
Ravi gives an overview of the topics covered in this insightful webinar. Starting the webinar, he explains the basics of scalability in blockchain and introduces the Scalability Trilemma, which highlights the trade-offs developers face when designing a blockchain.
Explore the three parts of the Blockchain Scalability solutions at the beginning, which include L1 Solutions (On-Chain), L2 Solutions (Off-Chain), and App-Chains.
Details in how InfiniteChain is the most practical solution to connect your centralized environment with public blockchain. Ethereum-based InfiniteChain addresses the blockchain bottleneck of privacy, transaction speed and block bloat.
Beyond bitcoin ..... Block chain technology is inciting change across the fin...Marc Kennis
Block Chain technology is being tailored to suit a range of different application areas. Current testing will culminate in commercial roll out of multiple applications in 2017. Failure to rapidly adopt it may lead to companies being caught out, effectively becoming permanent outsiders.
Similar to Ripple - XRP we know how XRP blockchain throughout Whitepaper (20)
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
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.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Ripple - XRP we know how XRP blockchain throughout Whitepaper
1. Ripple Labs Inc, 2014
The Ripple Protocol Consensus Algorithm
David Schwartz
david@ripple.com
Noah Youngs
nyoungs@nyu.edu
Arthur Britto
arthur@ripple.com
Abstract
While several consensus algorithms exist for the Byzantine Generals Problem, specifically as it
pertains to distributed payment systems, many suffer from high latency induced by the requirement
that all nodes within the network communicate synchronously. In this work, we present a novel
consensus algorithm that circumvents this requirement by utilizing collectively-trusted subnetworks
within the larger network. We show that the “trust” required of these subnetworks is in fact minimal
and can be further reduced with principled choice of the member nodes. In addition, we show that
minimal connectivity is required to maintain agreement throughout the whole network. The result is a
low-latency consensus algorithm which still maintains robustness in the face of Byzantine failures. We
present this algorithm in its embodiment in the Ripple Protocol.
Contents
1 Introduction 1
2 Definitions, Formalization and Previous Work 2
2.1 Ripple Protocol Components . . . . . . . . . . . 2
2.2 Formalization . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 Existing Consensus Algorithms . . . . . . . . . 3
2.4 Formal Consensus Goals . . . . . . . . . . . . . . 3
3 Ripple Consensus Algorithm 4
3.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 Correctness . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.3 Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.4 Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Convergence • Heuristics and Procedures
4 Simulation Code 7
5 Discussion 7
6 Acknowledgments 8
References 8
1. Introduction
Interest and research in distributed consensus systems
has increased markedly in recent years, with a central
focus being on distributed payment networks. Such net-
works allow for fast, low-cost transactions which are not
controlled by a centralized source. While the economic
benefits and drawbacks of such a system are worthy of
much research in and of themselves, this work focuses
on some of the technical challenges that all distributed
payment systems must face. While these problems are
varied, we group them into three main categories: cor-
rectness, agreement, and utility.
By correctness, we mean that it is necessary for a
distributed system to be able to discern the difference be-
tween a correct and fraudulent transaction. In traditional
fiduciary settings, this is done through trust between
institutions and cryptographic signatures that guarantee
a transaction is indeed coming from the institution that
it claims to be coming from. In distributed systems,
however, there is no such trust, as the identity of any
and all members in the network may not even be known.
Therefore, alternative methods for correctness must be
1
2. utilized.
Agreement refers to the problem of maintaining a
single global truth in the face of a decentralized account-
ing system. While similar to the correctness problem,
the difference lies in the fact that while a malicious
user of the network may be unable to create a fraudu-
lent transaction (defying correctness), it may be able to
create multiple correct transactions that are somehow
unaware of each other, and thus combine to create a
fraudulent act. For example, a malicious user may make
two simultaneous purchases, with only enough funds in
their account to cover each purchase individually, but
not both together. Thus each transaction by itself is
correct, but if executed simultaneously in such a way
that the distributed network as a whole is unaware of
both, a clear problem arises, commonly referred to as
the “Double-Spend Problem” [1]. Thus the agreement
problem can be summarized as the requirement that only
one set of globally recognized transactions exist in the
network.
Utility is a slightly more abstract problem, which we
define generally as the “usefulness” of a distributed pay-
ment system, but which in practice most often simplifies
to the latency of the system. A distributed system that
is both correct and in agreement but which requires one
year to process a transaction, for example, is obviously
an inviable payment system. Additional aspects of util-
ity may include the level of computing power required
to participate in the correctness and agreement processes
or the technical proficiency required of an end user to
avoid being defrauded in the network.
Many of these issues have been explored long before
the advent of modern distributed computer systems, via
a problem known as the “Byzantine Generals Problem”
[2]. In this problem, a group of generals each control
a portion of an army and must coordinate an attack by
sending messengers to each other. Because the gener-
als are in unfamiliar and hostile territory, messengers
may fail to reach their destination (just as nodes in a
distributed network may fail, or send corrupted data in-
stead of the intended message). An additional aspect
of the problem is that some of the generals may be
traitors, either individually, or conspiring together, and
so messages may arrive which are intended to create a
false plan that is doomed to failure for the loyal gener-
als (just as malicious members of a distributed system
may attempt to convince the system to accept fraudulent
transactions, or multiple versions of the same truthful
transaction that would result in a double-spend). Thus
a distributed payment system must be robust both in
the face of standard failures, and so-called “Byzantine”
failures, which may be coordinated and originate from
multiple sources in the network.
In this work, we analyze one particular implemen-
tation of a distributed payment system: the Ripple Pro-
tocol. We focus on the algorithms utilized to achieve
the above goals of correctness, agreement, and utility,
and show that all are met (within necessary and predeter-
mined tolerance thresholds, which are well-understood).
In addition, we provide code that simulates the consen-
sus process with parameterizable network size, number
of malicious users, and message-sending latencies.
2. Definitions, Formalization and
Previous Work
We begin by defining the components of the Ripple
Protocol. In order to prove correctness, agreement, and
utility properties, we first formalize those properties into
axioms. These properties, when grouped together, form
the notion of consensus: the state in which nodes in the
network reach correct agreement. We then highlight
some previous results relating to consensus algorithms,
and finally state the goals of consensus for the Ripple
Protocol within our formalization framework.
2.1 Ripple Protocol Components
We begin our description of the ripple network by defin-
ing the following terms:
• Server: A server is any entity running the Ripple
Server software (as opposed to the Ripple Client
software which only lets a user send and receive
funds), which participates in the consensus pro-
cess.
• Ledger: The ledger is a record of the amount
of currency in each user’s account and represents
the “ground truth” of the network. The ledger is
repeatedly updated with transactions that success-
fully pass through the consensus process.
• Last-Closed Ledger: The last-closed ledger is
the most recent ledger that has been ratified by the
consensus process and thus represents the current
state of the network.
• Open Ledger: The open ledger is the current
operating status of a node (each node maintains
its own open ledger). Transactions initiated by
end users of a given server are applied to the open
2
3. ledger of that server, but transactions are not con-
sidered final until they have passed through the
consensus process, at which point the open ledger
becomes the last-closed ledger.
• Unique Node List (UNL): Each server, s, main-
tains a unique node list, which is a set of other
servers that s queries when determining consen-
sus. Only the votes of the other members of the
UNL of s are considered when determining con-
sensus (as opposed to every node on the network).
Thus the UNL represents a subset of the network
which when taken collectively, is “trusted” by s
to not collude in an attempt to defraud the net-
work. Note that this definition of “trust” does not
require that each individual member of the UNL
be trusted (see section 3.2).
• Proposer: Any server can broadcast transactions
to be included in the consensus process, and every
server attempts to include every valid transaction
when a new consensus round starts. During the
consensus process, however, only proposals from
servers on the UNL of a server s are considered
by s.
2.2 Formalization
We use the term nonfaulty to refer to nodes in the net-
work that behave honestly and without error. Conversely,
a faulty node is one which experiences errors which may
be honest (due to data corruption, implementation er-
rors, etc.), or malicious (Byzantine errors). We reduce
the notion of validating a transaction to a simple binary
decision problem: each node must decide from the in-
formation it has been given on the value 0 or 1.
As in Attiya, Dolev, and Gill, 1984 [3], we define
consensus according to the following three axioms:
1. (C1): Every nonfaulty node makes a decision in
finite time
2. (C2): All nonfaulty nodes reach the same deci-
sion value
3. (C3): 0 and 1 are both possible values for all non-
faulty nodes. (This removes the trivial solution
in which all nodes decide 0 or 1 regardless of the
information they have been presented).
2.3 Existing Consensus Algorithms
There has been much research done on algorithms that
achieve consensus in the face of Byzantine errors. This
previous work has included extensions to cases where all
participants in the network are not known ahead of time,
where the messages are sent asynchronously (there is
no bound on the amount of time an individual node will
take to reach a decision), and where there is a delineation
between the notion of strong and weak consensus.
One pertinent result of previous work on consen-
sus algorithms is that of Fischer, Lynch, and Patterson,
1985 [4], which proves that in the asynchronous case,
non-termination is always a possibility for a consen-
sus algorithm, even with just one faulty process. This
introduces the necessity for time-based heuristics, to
ensure convergence (or at least repeated iterations of
non-convergence). We shall describe these heuristics for
the Ripple Protocol in section 3.
The strength of a consensus algorithm is usually
measured in terms of the fraction of faulty processes
it can tolerate. It is provable that no solution to the
Byzantine Generals problem (which already assumes
synchronicity, and known participants) can tolerate more
than (n−1)/3 byzantine faults, or 33% of the network
acting maliciously [2]. This solution does not, however,
require verifiable authenticity of the messages delivered
between nodes (digital signatures). If a guarantee on the
unforgeability of messages is possible, algorithms ex-
ist with much higher fault tolerance in the synchronous
case.
Several algorithms with greater complexity have
been proposed for Byzantine consensus in the asyn-
chronous case. FaB Paxos [5] will tolerate (n − 1)/5
Byzantine failures in a network of n nodes, amounting
to a tolerance of up to 20% of nodes in the network
colluding maliciously. Attiya, Doyev, and Gill [3] in-
troduce a phase algorithm for the asynchronous case,
which can tolerate (n −1)/4 failures, or up to 25% of
the network. Lastly, Alchieri et al., 2008 [6] present
BFT-CUP, which achieves Byzantine consensus in the
asynchronous case even with unknown participants, with
the maximal bound of a tolerance of (n−1)/3 failures,
but with additional restrictions on the connectivity of
the underlying network.
2.4 Formal Consensus Goals
Our goal in this work is to show that the consensus
algorithm utilized by the Ripple Protocol will achieve
consensus at each ledger-close (even if consensus is the
trivial consensus of all transactions being rejected), and
that the trivial consensus will only be reached with a
known probability, even in the face of Byzantine failures.
3
4. Since each node in the network only votes on proposals
from a trusted set of nodes (the other nodes in its UNL),
and since each node may have differing UNLs, we also
show that only one consensus will be reached amongst
all nodes, regardless of UNL membership. This goal is
also referred to as preventing a “fork” in the network: a
situation in which two disjoint sets of nodes each reach
consensus independently, and two different last-closed
ledgers are observed by nodes on each node-set.
Lastly we will show that the Ripple Protocol can
achieve these goals in the face of (n − 1)/5 failures,
which is not the strongest result in the literature, but we
will also show that the Ripple Protocol possesses several
other desirable features that greatly enhance its utility.
3. Ripple Consensus Algorithm
The Ripple Protocol consensus algorithm (RPCA), is
applied every few seconds by all nodes, in order to main-
tain the correctness and agreement of the network. Once
consensus is reached, the current ledger is considered
“closed” and becomes the last-closed ledger. Assum-
ing that the consensus algorithm is successful, and that
there is no fork in the network, the last-closed ledger
maintained by all nodes in the network will be identical.
3.1 Definition
The RPCA proceeds in rounds. In each round:
• Initially, each server takes all valid transactions it
has seen prior to the beginning of the consensus
round that have not already been applied (these
may include new transactions initiated by end-
users of the server, transactions held over from
a previous consensus process, etc.), and makes
them public in the form of a list known as the
“candidate set”.
• Each server then amalgamates the candidate sets
of all servers on its UNL, and votes on the veracity
of all transactions.
• Transactions that receive more than a minimum
percentage of “yes” votes are passed on to the next
round, if there is one, while transactions that do
not receive enough votes will either be discarded,
or included in the candidate set for the beginning
of the consensus process on the next ledger.
• The final round of consensus requires a minimum
percentage of 80% of a server’s UNL agreeing
on a transaction. All transactions that meet this
requirement are applied to the ledger, and that
ledger is closed, becoming the new last-closed
ledger.
3.2 Correctness
In order to achieve correctness, given a maximal amount
of Byzantine failures, it must be shown that it is im-
possible for a fraudulent transaction to be confirmed
during consensus, unless the number of faulty nodes
exceeds that tolerance. The proof of the correctness of
the RPCA then follows directly: since a transaction is
only approved if 80% of the UNL of a server agrees
with it, as long as 80% of the UNL is honest, no fraud-
ulent transactions will be approved. Thus for a UNL
of n nodes in the network, the consensus protocol will
maintain correctness so long as:
f ≤ (n−1)/5 (1)
where f is the number Byzantine failures. In fact, even
in the face of (n−1)/5+1 Byzantine failures, correct-
ness is still technically maintained. The consensus pro-
cess will fail, but it will still not be possible to confirm a
fraudulent transaction. Indeed it would take (4n+1)/5
Byzantine failures for an incorrect transaction to be con-
firmed. We call this second bound the bound for weak
correctness, and the former the bound for strong correct-
ness.
It should also be noted that not all “fraudulent” trans-
actions pose a threat, even if confirmed during consen-
sus. Should a user attempt to double-spend funds in
two transactions, for example, even if both transactions
are confirmed during the consensus process, after the
first transaction is applied, the second will fail, as the
funds are no longer available. This robustness is due to
the fact that transactions are applied deterministically,
and that consensus ensures that all nodes in the network
are applying the deterministic rules to the same set of
transactions.
For a slightly different analysis, let us assume that
the probability that any node will decide to collude and
join a nefarious cartel is pc. Then the probability of
correctness is given by p∗, where:
p∗
=
(n−1
5 )
∑
i=0
n
i
pi
c(1− pc)n−i
(2)
This probability represents the likelihood that the size
of the nefarious cartel will remain below the maximal
4
5. threshold of Byzantine failures, given pc. Since this
likelihood is a binomial distribution, values of pc greater
than 20% will result in expected cartels of size greater
than 20% of the network, thwarting the consensus pro-
cess. In practice, a UNL is not chosen randomly, but
rather with the intent to minimize pc. Since nodes are
not anonymous but rather cryptographically identifiable,
selecting a UNL of nodes from a mixture of continents,
nations, industries, ideologies, etc. will produce values
of pc much lower than 20%. As an example, the proba-
bility of the Anti-Defamation League and the Westboro
Baptist Church colluding to defraud the network, is cer-
tainly much, much smaller than 20%. Even if the UNL
has a relatively large pc, say 15%, the probability of
correctness is extremely high even with only 200 nodes
in the UNL: 97.8%.
A graphical representation of how the probability of
incorrectness scales as a function of UNL size for differ-
ing values of pc is depicted in Figure 1. Note that here
the vertical axis represents the probability of a nefarious
cartel thwarting consensus, and thus lower values indi-
cate greater probability of consensus success. As can be
seen in the figure, even with a pc as high as 10%, the
probability of consensus being thwarted very quickly
becomes negligible as the UNL grows past 100 nodes.
3.3 Agreement
To satisfy the agreement requirement, it must be shown
that all nonfaulty nodes reach consensus on the same
set of transactions, regardless of their UNLs. Since
the UNLs for each server can be different, agreement
is not inherently guaranteed by the correctness proof.
For example, if there are no restrictions on the member-
ship of the UNL, and the size of the UNL is not larger
than 0.2 ∗ ntotal where ntotal is the number of nodes in
the entire network, then a fork is possible. This is il-
lustrated by a simple example (depicted in figure 2):
imagine two cliques within the UNL graph, each larger
than 0.2 ∗ ntotal. By cliques, we mean a set of nodes
where each node’s UNL is the selfsame set of nodes.
Because these two cliques do not share any members,
it is possible for each to achieve a correct consensus
independently of each other, violating agreement. If
the connectivity of the two cliques surpasses 0.2∗ntotal,
then a fork is no longer possible, as disagreement be-
tween the cliques would prevent consensus from being
reached at the 80% agreement threshold that is required.
An upper bound on the connectivity required to
Figure 2. An example of the connectivity required to
prevent a fork between two UNL cliques.
prove agreement is given by:
|UNLi ∩UNLj| ≥
1
5
max(|UNLi|,|UNLj|)∀i, j (3)
This upper bound assumes a clique-like structure of
UNLs, i.e. nodes form sets whose UNLs contain other
nodes in those sets. This upper bound guarantees that
no two cliques can reach consensus on conflicting trans-
actions, since it becomes impossible to reach the 80%
threshold required for consensus. A tighter bound is
possible when indirect edges between UNLs are taken
into account as well. For example, if the structure of the
network is not clique-like, a fork becomes much more
difficult to achieve, due to the greater entanglement of
the UNLs of all nodes.
It is interesting to note that no assumptions are made
about the nature of the intersecting nodes. The intersec-
tion of two UNLs may include faulty nodes, but so long
as the size of the intersection is larger than the bound
required to guarantee agreement, and the total number
of faulty nodes is less than the bound required to satisfy
strong correctness, then both correctness and agreement
will be achieved. That is to say, agreement is dependent
solely on the size of the intersection of nodes, not on the
size of the intersection of nonfaulty nodes.
3.4 Utility
While many components of utility are subjective, one
that is indeed provable is convergence: that the consen-
sus process will terminate in finite time.
5
6. Figure 1. Probability of a nefarious cartel being able to thwart consensus as a function of the size of the UNL, for
different values of pc, the probability that any member of the UNL will decide to collude with others. Here, lower
values indicate a higher probability of consensus success.
3.4.1 Convergence
We define convergence as the point in which the RPCA
reaches consensus with strong correctness on the ledger,
and that ledger then becomes the last-closed ledger. Note
that while technically weak correctness still represents
convergence of the algorithm, it is only convergence in
the trivial case, as proposition C3 is violated, and no
transactions will ever be confirmed. From the results
above, we know that strong correctness is always achiev-
able in the face of up to (n − 1)/5 Byzantine failures,
and that only one consensus will be achieved in the
entire network so long as the UNL-connectedness con-
dition is met (Equation 3). All that remains is to show
that when both of these conditions are met, consensus is
reached in finite time.
Since the consensus algorithm itself is deterministic,
and has a preset number of rounds, t, before consensus
is terminated, and the current set of transactions are de-
clared approved or not-approved (even if at this point
no transactions have more than the 80% required agree-
ment, and the consensus is only the trivial consensus),
the limiting factor for the termination of the algorithm
is the communication latency between nodes. In order
to bound this quantity, the response-time of nodes is
monitored, and nodes who’s latency grows larger than
a preset bound b are removed from all UNLs. While
this guarantees that consensus will terminate with an
upper bound of tb, it is important to note that the bounds
described for correctness and agreement above must
be met by the final UNL, after all nodes that will be
6
7. dropped have been dropped. If the conditions hold for
the initial UNLs for all nodes, but then some nodes are
dropped from the network due to latency, the correctness
and agreement guarantees do not automatically hold but
must be satisfied by the new set of UNLs.
3.4.2 Heuristics and Procedures
As mentioned above, a latency bound heuristic is en-
forced on all nodes in the Ripple Network to guarantee
that the consensus algorithm will converge. In addi-
tion, there are a few other heuristics and procedures that
provide utility to the RPCA.
• There is a mandatory 2 second window for all
nodes to propose their initial candidate sets in
each round of consensus. While this does intro-
duce a lower bound of 2 seconds to each consen-
sus round, it also guarantees that all nodes with
reasonable latency will have the ability to partici-
pate in the consensus process.
• As the votes are recorded in the ledger for each
round of consensus, nodes can be flagged and
removed from the network for some common,
easily-identifiable malicious behaviors. These in-
clude nodes that vote “No” on every transaction,
and nodes that consistently propose transactions
which are not validated by consensus.
• A curated default UNL is provided to all users,
which is chosen to minimize pc, described in sec-
tion 3.2. While users can and should select their
own UNLs, this default list of nodes guarantees
that even naive users will participate in a consen-
sus process that achieves correctness and agree-
ment with extremely high probability.
• A network split detection algorithm is also em-
ployed to avoid a fork in the network. While
the consensus algorithm certifies that the transac-
tions on the last-closed ledger are correct, it does
not prohibit the possibility of more than one last-
closed ledger existing on different subsections of
the network with poor connectivity. To try and
identify if such a split has occurred, each node
monitors the size of the active members of its
UNL. If this size suddenly drops below a preset
threshold, it is possible that a split has occurred.
In order to prevent a false positive in the case
where a large section of a UNL has temporary
latency, nodes are allowed to publish a “partial
validation”, in which they do not process or vote
on transactions, but declare that are still partic-
ipating in the consensus process, as opposed to
a different consensus process on a disconnected
subnetwork.
• While it would be possible to apply the RPCA in
just one round of consensus, utility can be gained
through multiple rounds, each with an increas-
ing minimum-required percentage of agreement,
before the final round with an 80% requirement.
These rounds allow for detection of latent nodes
in the case that a few such nodes are creating a
bottleneck in the transaction rate of the network.
These nodes will be able to initially keep up dur-
ing the lower-requirement rounds but fall behind
and be identified as the threshold increases. In the
case of one round of consensus, it may be the case
that so few transactions pass the 80% threshold,
that even slow nodes can keep up, lowering the
transaction rate of the entire network.
4. Simulation Code
The provided simulation code demonstrates a round of
RPCA, with parameterizable features (the number of
nodes in the network, the number of malicious nodes, la-
tency of messages, etc.). The simulator begins in perfect
disagreement (half of the nodes in the network initially
propose “yes”, while the other half propose “no”), then
proceeds with the consensus process, showing at each
stage the number of yes/no votes in the network as nodes
adjust their proposals based upon the proposals of their
UNL members. Once the 80% threshold is reached,
consensus is achieved. We encourage the reader to ex-
periment with different values of the constants defined at
the beginning of “Sim.cpp”, in order to become familiar
with the consensus process under different conditions.
5. Discussion
We have described the RPCA, which satisfies the con-
ditions of correctness, agreement, and utility which we
have outlined above. The result is that the Ripple Pro-
tocol is able to process secure and reliable transactions
in a matter of seconds: the length of time required for
one round of consensus to complete. These transactions
are provably secure up to the bounds outlined in sec-
tion 3, which, while not the strongest available in the
literature for Asynchronous Byzantine consensus, do
7
8. allow for rapid convergence and flexibility in network
membership. When taken together, these qualities allow
the Ripple Network to function as a fast and low-cost
global payment network with well-understood security
and reliability properties.
While we have shown that the Ripple Protocol is
provably secure so long as the bounds described in equa-
tions 1 and 3 are met, it is worth noting that these are
maximal bounds, and in practice the network may be
secure under significantly less stringent conditions. It
is also important to recognize, however, that satisfying
these bounds is not inherent to the RPCA itself, but
rather requires management of the UNLs of all users.
The default UNL provided to all users is already suffi-
cient, but should a user make changes to the UNL, it
must be done with knowledge of the above bounds. In
addition, some monitoring of the global network struc-
ture is required in order to ensure that the bound in
equation 3 is met, and that agreement will always be
satisfied.
We believe the RPCA represents a significant step
forward for distributed payment systems, as the low-
latency allows for many types of financial transactions
previously made difficult or even impossible with other,
higher latency consensus methods.
6. Acknowledgments
Ripple Labs would like to acknowledge all of the peo-
ple involved in the development of the Ripple Protocol
consensus algorithm. Specifically, Arthur Britto, for his
work on transaction sets, Jed McCaleb, for the original
Ripple Protocol consensus concept, and David Schwartz,
for his work on the “failure to agree is agreement to de-
fer” aspect of consensus. Ripple Labs would also like to
acknowledge Noah Youngs for his efforts in preparing
and reviewing this paper.
References
[1] Nakamoto, Satoshi. “Bitcoin: A peer-to-peer elec-
tronic cash system.” Consulted 1.2012 (2008): 28.
[2] Lamport, Leslie, Robert Shostak, and Marshall
Pease. “The Byzantine generals problem.” ACM
Transactions on Programming Languages and Sys-
tems (TOPLAS) 4.3 (1982): 382-401.
[3] Attiya, C., D. Dolev, and J. Gill. “Asynchronous
Byzantine Agreement.” Proc. 3rd. Annual ACM
Symposium on Principles of Distributed Computing.
1984.
[4] Fischer, Michael J., Nancy A. Lynch, and Michael
S. Paterson. “Impossibility of distributed consensus
with one faulty process.” Journal of the ACM (JACM)
32.2 (1985): 374-382.
[5] Martin, J-P., and Lorenzo Alvisi. “Fast byzan-
tine consensus.” Dependable and Secure Computing,
IEEE Transactions on 3.3 (2006): 202-215.
[6] Alchieri, Eduardo AP, et al. “Byzantine consensus
with unknown participants.” Principles of Distributed
Systems. Springer Berlin Heidelberg, 2008. 22-40.
8