Bias and Corruption Free Random Number Generation Through MPC

Bias and Corruption Free Random Number Generation Through MPC

Most may not know, but generating random numbers is hard. It is quite surprising because many people will think, “well, I can just come up with a random number off the top of my head!” However, randomly coming up with a number in your head, as well as other solutions to generate random numbers has fundamental flaws. And this is a big problem. Generating a fair unbiased random number is critical. In fact, random number generators are used everywhere.

The first place many would think of random numbers being useful is in games of chance. But would you be surprised if you knew that reading this article required the use of a random number generator? The website hosting this article is protected by a cryptographic key, which relies on generating a random set of values to be used for the encryption key.

Generating numbers at random is difficult. At a high level, there are two main issues with generating random numbers: predictability and bias/corruption issues.

Figure 1: RNG use cases are wide and varied

The predictability issue for RNG can be seen in both human- and machine-generated random numbers. For example, there is a famous problem called Benford’s Law that states any random number that someone thinks about has a 30% chance of starting with the number 1. When you want to have a chance of a number being generated to be equal in percentage, then this becomes a problem. If you use a computer program to generate random numbers, you are using a structured code. This means, after multiple iterations, someone can reverse engineer the numbers to find the pattern and predict what the next number could be, especially if the code being used is weak.

Figure 2: Predictability issues in RNG

From a bias and corruption perspective, the current systems can also be gamed to give favor to someone. For instance, if a set group of people decide they will choose random numbers and run through some function to compute a random number, one person may withhold showing their number until they see what the other people have chosen. Then, once he knows the numbers of the other participants, he can choose a number that would compute the random number to his favor. From a machine generated random numbers, since most systems have a central system that is generating the numbers, anyone who has control of that system could also manipulate the numbers being generated to their favor.

Figure 3: Bias and corruption issues in RNG

So how can we create a system where it is both unpredictable and bias free? Through MPC and Partisia Blockchain, we can solve both problems. Through smart contracts, players in the system generate a random number. This random number is then privatized and sent into the PBC blockchain. A zero-knowledge computation is done, in a similar way as done through secret sharing and through a computation, a random number is revealed.

Figure 4: Generating unbiased RNG that is incorruptible

Through combining multiple players and secret sharing, developers can create a system to come up with a random number that is free from bias, incorruptible and impossible to predict. And Partisia Blockchain’s smart contract language will afford developers to customize this solution to their specific requirements.

By creating a programming language that allows for developers to use MPC in a generic way, Partisia Blockchain Foundation has made the creation of applications that can harness the power of MPC for different use cases a possibility. Partisia has been at the forefront of providing private MPC solutions since 2008. And by layering this technology on top of an interoperable and scalable blockchain, Partisia Blockchain is now paving the way for anyone to create solutions that can balance privacy and transparency to build trust.

To learn more about different use cases or partner with us for solutions, please visit partisiablockchain.com, check out our Medium articlesdevelopment documentations or email us at build@partisiablockchain.com.

Collaboration Between Mutually Distrustful Parties Through MPC

Collaboration Between Mutually Distrustful Parties Through MPC

Trust is the basis for any relationship. Whether it is between you and your friends, or between one company working with another, even with governments sharing information with each other. Without trust, society cannot exist. Every type of a relationship requires some type of trust that is built through time.

But what is trust? And how does one go about establishing it with another entity? Trust is earned through a give-and-take between parties and demonstrated pattern of reliability. It is also relative, as everyone has a different level of risk appetite. A balance that is relative to the amount of risk the person is willing to take against the amount of reliability the other party has demonstrated in the past.

So how does this balance take place?

Clearly, if no one is willing to share or demonstrate anything about themselves, trust cannot be established. There has to be some level of vulnerability to even begin the initial stages of establishing trust. But at the same time, complete and full transparency also does not help establish trust. And this is because almost all relationships start off mutually distrustful. Trust is something earned. If given to someone arbitrary, that person could use that trust against you.

And in a way this balance of privacy and transparency to establish trust has been tipped in favor of one side to another throughout history. How many times have you or someone you know been burned by giving trust to someone who–knowingly or unknowingly–betrayed it? How many deals are broken between companies? How many government secrets have been compromised through leaks? Building trust is a gradual process, where one party shares something in hopes that the other party shares something of equal value.

But what if there was a way to share information without sharing information?

As we reviewed in other articles, multiparty computation allows for the computing of data even if the owner does not share the details around it. And in the example of sharing of data, this means any mutually distrustful parties can collectively allow the use of their data without sharing the details of data itself.

What does this mean in practice? At a high level, this means you can now reduce the weight of risk in the balance of establishing trust. Because you no longer have to expose your private data, the risk of that data being used against you is lowered. And this means you no longer require the same heavy weight for demonstrated reliability that you would need on the other side of the trust scale.

This is a game changer on many levels. Trust is the fundamental basis for any relationships between entities. With MPC, we now have the opportunity to change how this can be played.

In the example below, let’s say we have two financial companies that are competitors. They have a lot of secrets they would like to keep internal, but they do business with each other as a part of their overall practice. As a result of their business, there are many mutual clients. If there was a suspicious activity in one of their clients, having a single set of data they can analyze may not be enough. But what if both companies could share the use of their data together for forensic analysis without sharing the details of the data itself? This may lead to a far more comprehensive analysis.

Another example is where multiple companies need to validate meeting of certain regulatory or compliance goals. But to compute the data, it requires exposing private information. Through MPC and Partisia Blockchain, a company will be able to validate meeting regulatory goals without exposing their data to the public.

These are very simple examples of how companies can still work together without revealing their private data. And we have quite a variety of projects building on Partisia Blockchain that takes advantage of this new way of doing business.

CyberPeace Institute is working with Partisia Blockchain to help NGOs combat the issue of malware and ransomware by allowing NGOs to privately work with other parties who may be facing similar attacks. This allows NGOs to work together with others without reputation impact or exposing information that may create other vulnerabilities in their system.

Monadi is working on helping companies comply with CSRD regulations that will impact over 50,000 companies in the EU. By 2025, companies will need to validate that they are meeting certain SDG goals, with the first goal being able to certify that there is no gender pay gap in their executives’ compensations. As the regulation matures, Monadi will be in a good position to help companies certify other SDG requirements without the need for the company to expose private data.

With a growing number of partners and integrators looking to solve the issue of trust, Partisia Blockchain is well positioned to help provide the solutions we need–whether it is to address the transparency in blockchains or to solve existing problems outside the blockchain space.

For additional insights on this use case, come and watch our Q&A session we did on this topic.

By creating a programming language that allows for developers to use MPC in a generic way, Partisia Blockchain Foundation has made the creation of applications that can harness the power of MPC for different use cases a possibility. Partisia has been at the forefront of providing private MPC solutions since 2008. And by layering this technology on top of an interoperable and scalable blockchain, Partisia Blockchain is now paving the way for anyone to create solutions that can balance privacy and transparency to build trust.

To learn more about different use cases or partner with us for solutions, please visit partisiablockchain.com, check out our Medium articlesdevelopment documentations or email us at build@partisiablockchain.com.

Creating Privacy Around Blockchain Settlements

Creating Privacy Around Blockchain Settlements

Ledgers are the primary ways settlements are recorded. The first double bookkeeping ledger system was recorded in use as far back as the 1300s. It is still the de-facto system used today to record transactions between entities.

Fast forward to 2008. Satoshi Nakamoto (pseudonym) was frustrated with the corruption due to the lack of transparency and centralized control of the traditional system. He proposed a transparent distributed ledger system that was immutable as a system of recording transactions. Thus Bitcoin was born.

But with all new systems, there is always room for improvements.

As discussed in our previous articles, full transparency does not solve the problem of building trust. In fact, privacy is a requirement in any trust relationship. For example, nobody would trust a credit card provider that revealed every purchase cardholders made just by someone having their credit card number. In a traditional blockchain space, every transaction is written in a public ledger. It would only require matching a wallet address to a name to see the full history of their transactions.

How can you have a blockchain that privatizes transactions and has enough flexibility to analyze and compute the data? Through integrating a proven technology into a scalable and interoperable blockchain.

Developers can pick and choose which part of the data in the blockchain needs to be private and which can be public. All thanks to the Partisia Blockchain’s programmable MPC. A layer of governance can be enabled around the private data to allow for computation and access to select individuals. Those who access the data can also be audited transparently.

Now, even if someone has your credit card details, they will not be able to see your purchase history and your spending. If needed, a governance model can be created to ensure auditability and traceability to the system.

The importance is evident in our partnership with the International Committee of the Red Cross (ICRC). We partnered with the ICRC to build out a program for distributing aid through blockchain. One of their key requirements was privacy of the aid recipients. As they are a very unique organization, one of their key principles is in confidentiality and bilateral dialogue. The ICRC mainly operates in conflict zones and lack of privacy can mean life or death.

ICRC was able to solve their key challenge of privatizing the transactions of the stable tokens in the ecosystem thanks to Partisia Blockchain’s MPC. As shown above, the deposit of the funds from ICRC is kept private. As a result, transfers between the users are anonymous. To learn more, please watch our video of the overview of the solution here.

As blockchains become more prevalent, the need for privacy will continue to grow and take center stage. Various projects are already being built with private settlements in mind. We continue to speak with many organizations who prioritize the need for privacy in a blockchain solution.

For additional insights on this use case, come and watch our Q&A session we did on this topic.

By creating a programming language that allows for developers to use MPC in a generic way, Partisia Blockchain Foundation has made the creation of applications that can harness the power of MPC for different use cases a possibility. Partisia has been at the forefront of providing private MPC solutions since 2008. And by layering this technology on top of an interoperable and scalable blockchain, Partisia Blockchain is now paving the way for anyone to create solutions that can balance privacy and transparency to build trust.

To learn more about different use cases or partner with us for solutions, please visit partisiablockchain.com, check out our Medium articlesdevelopment documentations or email me at bruce.ahn@partisiablockchain.com.