MPC for self-sovereign identity

MPC for self-sovereign identity

Self-sovereign identity (SSI) is an ever increasingly important concept to enable users control over their own data and let them share it with whom they want. Today, data rests in centralized databases that belong to big enterprises with little transparency into how the data is actually being used and for what purpose.

SSI turns this around and data starts with the users, actually resting at users own device at first. Then it is up to the users to choose with whom and what data they share. Additionally, privacy-preserving features, such as selective disclosure and predicates enhance the user to share data without sharing it all or just prove simple facts about the data.

There are many great tools and infrastructures that can handle SSI, and Partisia Blockchain’s MPC technology adds a new component to the stack that enables new business models, enhances privacy for the data-driven economy, and will take your project ahead of the competition. So read on if you are a builder of the US$27 billion global digital identity market that is expected to expand at a CAGR of 17.2% from 2023 to 2030.

DIDs and verifiable credentials

First things first, digital identity usually revolves around three actors: issuer, holder, and verifier.

The issuer issues verifiable credentials to the holder, and the holder can then present the credentials to a verifier who can verify the content by digital signatures and Decentralized Identifiers (DIDs) that may be on a blockchain. For most digital identity use cases, DIDs and associated DID documents are the only elements that get on the blockchain. We do not take a deep dive on this in this article.

DIDs and verifiable credentials are some of the essential components that make up digital identity, especially digital identity that works with decentralized networks. DIDs are a type of address that is generated to manage digital signatures, and verifiable credentials are credentials created and issued by any issuer based on their DIDs.

SSI tools

To enable real SSI, the users will have to store all data themselves at first, often in digital identity wallets, and only then will the user be in full control. The data itself can be data inputs from users such as personal Identifiable Information (PII) or digital verifiable credentials issued by a third-party, e.g. KYC provider issues KYC claim as digital verifiable credential. Credentials are often issued and exchanged by an agency that establishes secure peer wise connections.

MPC takes digital identity to the next level

Multiparty computation (MPC) is a groundbreaking technology that allows multiple data inputs to remain private while still being computed on and only sharing the outputs. The computing itself is carried out by specially selected MPC validator nodes who each compute on secret shares of the data and privacy is guaranteed by cryptography.

Compared to ZK proofs, such as zk-SNARKs, MPC is a game changer that allows computing on any function. This takes digital identity to the next level because it is now not only possible to share data with privacy features, but also carry out decentralized computation on private data and write business logic into private and public smart contracts to orchestrate the process and rules.

MPC for private data analytics

As we learned before, ZK proofs are good for simple presentations about specific data, e.g. a verifiable credential issued by an employer can be used to prove to the bank that you earn more than US$80,000 a year to qualify for a loan without revealing the exact amount you earn.

Now imagine that we need to compute statistics on multiple inputs from multiple users and compare a single person’s salary to the average, all while preserving privacy. ZK proofs cannot handle general computations on multiple inputs and comparison is limited to two users presenting against each other, so another system would have to support it. This is where Partisia Blockchain’s MPC comes to save the day! MPC on Partisia Blockchain can handle multiple inputs and preserve the privacy while carrying out efficient general computation.

Even though all smart contracts and data can be private, it is often worth considering only to push the most sensitive data and operations into private computation because it is generally more expensive than public computation. This goes for all ZK technology. For instance, if you want to calculate the average salary of employees, you might consider just the salary as private inputs plus pseudonymized identity, and then do statistical calculations in the public space.

MPC for verification

When we look at DID/SSI solutions, the business requirements of the implementation usually go past simple verification of ID. DID/SSI proof is just the first step. The real challenge is what other data do you need after the verification. Perhaps it is to verify that this person has proper credentials for accessing a system. Or another popular use case for DID is to verify a user has enough assets to pay for something without revealing their total asset holding. Another app that is looking to build on our system is trying to create a persona on-chain, which advertisers can target, without revealing personal information about the user themselves.

In all these use cases, a simple proof system becomes too expensive and slow due to the fact that each individual parameter must require a proof. When you have 10 users, maybe this is possible. But what happens when you need to scale to 1000 or 10,000 users? And proofs are not computations. It is unable to compute the various different private data for analysis.

This is where MPC can extend the functionality of DID/SSI to create multi-functional applications. Through MPC you can both prove and compute multiple parameters in a single computation and include all the additional business requirements while keeping the data private.

MPC for Covid-19 passport

During the pandemic, many attempts were made to create a Covid-19 passport so citizens could prove they were either vaccinated or tested negative while preserving privacy. Zk proofs are good for this, but limited to only presenting yes/no results to a verifier without extensive physical verification such as ID cards, which would compromise SSI principles.

In collaboration with HES-SO Valais-Wallis, Partisia Blockchain developed a solution where identification is reduced to matching an individual’s face with an image of the person’s face powered by MPC in order to increase security and privacy. The Partisia Blockchain ensures trustworthy information is broadcasted to the verifier and MPC ensures that the private information about the citizen is used only for matching and kept hidden for the verifier.

Stay updated:

Website • Twitter • Discord • Telegram • LinkedIn • Facebook • Instagram • GitLab • Medium • YouTube

Partisia Blockchain’s Complete Sharding

Partisia Blockchain’s Complete Sharding

Scalability has been something that architects have been grappling with for many years. In the technology space, being able to scale both vertically (adding capacity) and horizontally (adding instances) has been grappled with in all parts of the technology stack. Do you add more transistors in a CPU or add cores to work together? Do you add more space in a hard drive or add multiple hard drives to work together? Do you build a faster computer, or create a software architecture to use multiple computers in sync?

One thing is for certain however. Scaling vertically has limits. There is only so much CPU, memory, storage you can add to a single system before it runs out of capacity.

Blockchain space is no exception. As adoption grows, so must the ability for a blockchain to handle the additional transaction on chain as a result. And in the blockchain space, we call it TPS (transactions per second) This is a combination of two metrics;

  • Time it takes for a block to be finalized and appended to the chain
  • Number of transactions in a block

Different blockchains use different architectures to try and achieve faster throughput. For finalization, there are things like probabilistic and deterministic finalization. To achieve a higher number of transactions, blockchains have turned to sharding, and added on different rollup technologies like ZK or optimistic roll ups.

What makes Partisia Blockchain different?

To create the fastest blockchain, you have to first look at what can theoretically be achieved for the above two factors. For the finalization time, the fastest is instant. As soon as the block is created, you want it to be finalized as fast as possible. For the number of transactions in a block, you want to be able to put the number of transactions in a blockchain can handle to be as much as possible. The more transactions you can process at the same time, the faster your chain will be. And all of this needs to be done in a secure manner. So how does Partisia Blockchain handle these two challenges?

PBC’s “Speed of light” finalization

For finalization, PBC has implemented a unique consensus model that consists of three parts.

  • Proof-of-Verification (PoV): Ensure that the signed blocks came from validators who actually executed all transactions included in the new blocks. In other words, a PoV is a guarantee that a validator personally verified the content of a block.
  • FastTrack consensus: A rapid consensus process with pure finalization.
  • An incentive scheme that incentivizes propagation and connectivity in the P2P network.

This unique finalization model allows for blocks to be created and finalized in real time with the only limit being the time it takes for the verification signatures to propagate throughout the network. (More info in PBC’s yellow paper section 3.1)

PBC’s “complete sharding”

While the term “sharding” has been popularized by blockchain, its actually a term that was coined back in the 1990s, by an online video game company, of all places. During the initial popularization of MMORPG (massively multiplayer online role-playing games) the company building the game Ultima Online ran into a scalability problem. To solve the problem of scaling out huge worlds for hundreds of thousands of users to interact with, they came up with a database scaling architecture and coined it “Sharding” This sharding architecture caught on and is now actively being used by many different database products, including MySQL, Oracle DB and MSSQL.

Blockchain has borrowed the term but if you look at the general architecture of most blockchains, it does not conform to the general principles of what sharding really means. In blockchain sharding, while blocks may get created in parallel, it still gets appended to the end of a single chain.

Through “speed of light” finalization we tackled the issue of creating finalization instantly. For the transaction per block issue, we looked to architect the sharding model according to the definition of what sharding really is; True parallel processing of data.

Just like how it is in traditional databases, in Partisia Blockchain, each shard is an independent blockchain. And each shard ,or blockchain, is capable of independently creating, validating and confirming a block. This architecture goes back to the original definition of what a shard is and allows for true parallel processing of blocks. And in the event congestion is detected, the system automatically creates a new shard adding additional capacity dynamically. Through this dynamic scalability architecture, Partisia Blockchain can theoretically scale infinitely, only limited by the number of nodes in the blockchain.

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 paving the way for anyone to create blockchain solutions that can balance privacy and transparency to build trust and ensure integrity.

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.

Stay updated:

Website • Twitter • Discord • Telegram • LinkedIn • Facebook • Instagram • GitLab • Medium • YouTube

Interoperability Challenges in Blockchain and PBC’s Solution

Interoperability Challenges in Blockchain and PBC’s Solution

Have you ever taken a trip to an amusement park? Then you are probably familiar with “amusement park dollars”. The park encouraging you to exchange your native currency to “amusement park” dollars because the only thing that is accepted in that amusement park is the currency of the amusement park. And of course, those amusement park dollars are not good anywhere else except in that park.

This is similar to how the public blockchain industry’s tokenomics works. If you want to play in the Solana ecosystem, you have to have the SOL token. Same with Cardano, where you need to pay using ADA. Theta is TFUEL, etc. The entire ecosystem model revolves around their specific currency.

And like amusement parks, every blockchain is in competition with each other. “We’re cheaper. We’re faster. We’re the easiest to develop on.” So on and so on…

In fact this “competition with each other” scenario has been seen throughout history. And it’s quite interesting to see, historically, who has been the winners in these types of competitions. VHS vs Beta in the 70’s, The desktop wars in the 80s, Ethernet vs Token Ring in the 90’s, search engine wars in the 2000’s, and the streaming war that is currently ongoing. And in almost all cases, the winners in these “wars” was the one who was collaborating rather than competing with others.

So the big question is….. Who is going to win the L1 public blockchain wars?

As mentioned above, the current state of the public “blockchain wars” is all about competing with everyone. The combination of every chain saying they are faster and cheaper, with the silo’ed tokenomic model of each chain forcing users to spend only in their currency locks every dApp in their own ecosystem. This is why interoperability has become one of the biggest topics in the industry.

But can we do it differently?

One of Partisia Blockchains core principles is interoperability. This is because our vision is to enable anyone to create solutions that help establish trust and foster collaboration and this means having an architecture that supports interoperability.

So in this regard Partisia Blockchain created a platform from scratch. And following the vision and principles we are adhering to, we created the concept of Bring Your Own Coin (BYOC).

BYOC basically means the users of the chain can pay for using apps developed on PBC using the coin they are most comfortable with. Or in other words, the gas payment on our chain is other liquid coins. This allows for the following possible features.

  • Flexibility of the developers to create their apps and open up their ecosystem to a larger user base
  • Use the unique bridge for different types of use cases between chains, such as swaps, or transfer of data alongside account information between chains.
  • Allow for our general multiparty computation infrastructure as a service. dApps built on other chains can now use our MPC technology without needing to port their application over into our chain

The Hermes bridge is a double-entry bookkeeping system securing the bridged asset through our MPC multi-sig oracle key. Currently supporting Ethereum, BNB and Polygon USDC, our roadmap includes others like bitcoin, ADA, XTZ and allows for simple integration to all other EVM compatible tokens. This interoperability and gas payment model opens up a variety of interesting use cases, such as the ability for users to interact with any dApp using their own currency of choice.

Our MPC-as-a-Service is also a unique feature of Partisia Blockchain. Our core vision is empowering anyone to be able to utilize our MPC services and to achieve this vision, we designed an architecture that allows anyone to call the blockchain, regardless of where their core app is built. Whether it is a traditional Web2 or a Web3 application that is built on a different chain, both can call Partisia Blockchain and compute using secret inputs without needing to port their entire application stack over to Partisia Blockchain.

By creating a programming language that allows for developers to use MPC in a generic way, and combining it with a unique interoperability and a scalability architecture, 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.

Stay updated:

Website • Twitter • Discord • Telegram • LinkedIn • Facebook • Instagram • GitLab • Medium • YouTube