Understanding BLS: the Intersection of Privacy and Scalability

DeVault
5 min readAug 15, 2020

From an efficiency standpoint, Bitcoin is not the perfect contraption. A number of initiatives to improve the BTC “performance issue” have been tested or deployed on Bitcoin and various altcoins, but the winning recipe is still up in the air.

Bitcoin’s UTXO model is a brilliant way to verify transactions and protect the security of the network from attack vectors like double spend, but it’s an expensive solution. Under the UTXO model, any amount of Bitcoin sent to a wallet is unique from other incoming BTC. When Bitcoin is sent out of the wallet, some combination of existing “chunks” or UTXOs of Bitcoin are use, and “change” is returned if the sum of UTXO’s exceeds the desired output size (you can combine a UTXO, but you cannot split without sending a transaction to do so).

In real world terms, Bitcoin wallets work akin to physical wallets. Dollars and coins go in, and purchase are made with some combination of those dollars and coins. If a $20 bill is paid for a $10 purchase, change is made and $10 is returned to the wallet.

But unlike a standard wallet, everyone’s BTC wallet is transparent, and the wallet history is stored and broadcast publicly. Each sum of Bitcoin that moves from wallet-to-wallet is similarly documented, and anyone can trace BTC from its generation as a block reward to the current holder. In practice, the base UTXO model, while secure for the network, leaves much to be desired in terms of the size and cost of transactions, as well as the lack of privacy for users..

SegWit and Schnorr

Segregated Witness (SegWit) and Schnorr signatures represent two enhancements added to Bitcoin in order to address the aforementioned inefficiencies. Because Bitcoin transactions are expensive (in terms of data required), Bitcoin hits transaction throughput capacity at quite a low ceiling.

Most of the data that makes up BTC transactions is the signature to verify the spender (or more appropriately, to verify each UTXO that makes up the transaction). As the name suggests, Segregated Witness “segregates” the signature from the transaction and instead appends it elsewhere in the block to cut the data required to communicate it. At 100% usage, SegWit theoretically increases Bitcoin’s throughput by a factor of four.

Schnorr signatures work to assess the privacy concerns of Bitcoin. Schnorr enables multi-signature activity. This means that multiple, independent parties can cooperate to manage a single wallet (for example, an exchange’s cold storage can require signature by all of the executives of the company). It also enables users to obscure their own activity (and boost their security) by using multi-sig on their personal funds. In this manner, watchers are met with a challenge to differentiate multiple independent parties collaborating over funds or a single user playing each part.

Rings, zk-SNARKs, and MimbleWimble

SegWit and Schnorr certainly help, but some speculate they don’t go far enough in terms of privacy and/or scalability.

Ring signatures are a strategy that prioritizes privacy over all else. The easiest way to conceptualize ring signatures is visualizing as it sounds: a “ring” of wallets/users. When money comes into a ring, observers are unable to determine which of the wallets in the ring received the funds. Similarly, one is unable to see which wallet is responsible for money sent out of the ring. Rings provide maximum privacy, but it does so at the cost of massive transaction sizes: Monero sees transaction sizes even larger than Bitcoin’s standard tx sizes.

Zk-SNARKs, or zero-knowledge succinct non-interactive arguments of knowledge, is a strategy that enables private keys to verify activity or information without revealing what that activity/information is. This is especially important for private smart contracts, and is the driving force behind ZCash. However, the process of using this tool is as clunky as the name suggests, and analytics suggests that only a small fraction of ZCash activity utilizes these snarks to protect privacy.

MimbleWimble, in a similar manner as Lightning Network, utilizes a system of “random walks” to route a transaction through a series of nodes before it reaches its destination. In this manner, watchers can see money moving out of an address or into an address, but a void in between. Rather than verifying transactions, miners confirm that the accounting checks out: coin in equals coin out. This strategy is both efficient and scalable, but utility is compromised. In order to send coin through a random walk of various nodes and arrive at its destination, any accompanying transaction data found in a standard transaction is eliminated completely.

Perfect Harmony: BLS Signatures

DeVault has assessed the above improvement proposals and concluded that none accurately represent the proper balance between efficiency, privacy, and usability. Bitcoin’s improvements do too little across the board, rings are too expensive, and snarks and MimbleWimble both leave too much to be desired in terms of actual usability.

“Boneh, Lynn, and Sacham” (BLS) Signatures improves user privacy and decreases transaction sizes by compiling any number of signatures into a single output signature. Thinking back on the UTXO model (which DeVault, as a fork of Bitcoin Cash, employs), BLS enables wallet holders to package all UTXOs into single transaction and verify with one output signature. In doing so, the various UTXOs or “chunks” of DVT that make up a transaction cannot be separated from one another.

Even more interesting, BLS activity across multiple addresses/transactions can also be combined in the same manner under one signature. In essence, 100% usage of BLS on DeVault would combine every transaction under a single signature, and compile the activity of each wallet in a way that obscures the inputs and outputs of all users.

SegWit files signatures in a manner that is less data-intensive, and Schnorr enables the combination of multiple signatures. BLS combines all signatures into one, and because there is just one output, the signature data is always capped at the size of the single signature (96 bytes).

It may be optimistic yet to suggest BLS is the perfect solution, but DeVault is confident that BLS represents the tastiest dish on the menu.

Useful Info:

Author: @Jeffthebaker

Website: https://www.devault.cc/
Official Wallets: https://devault.cc/wallets.html (not for the BLS limited testnet)
BLS Page: https://devault.cc/bls-signatures.html
Governance Portal: https://devault.online
Forums: https://devaultchat.cc/
Github: https://github.com/devaultcrypto
DeVault ID: https://devaultid.com/
Coingecko: https://www.coingecko.com/en/coins/devault
CMC: https://coinmarketcap.com/currencies/devault/
CoinCodex: https://coincodex.com/crypto/devault/news/
CoinPaprika: https://coinpaprika.com/coin/dvt-devault/
CoinMarketDaddy: https://coinmarketdaddy.com/currencies/devault/

Exchanges -
SouthXchange: https://www.southxchange.com/Market/Book/DVT/BTC
Graviex: https://graviex.net/markets/dvtbtc
BlockDX: https://blockdx.com/listings/
FreiExchange: https://freiexchange.com/market/DVT/BTC

--

--

DeVault

Community governed cryptocurrency economy for everyone. Learn more @ DeVault.cc