5 min read
Have you ever wondered how some countries have managed to use electronic voting while guaranteeing voter anonymity? And how digital currencies such as bitcoin manage to carry out verified transactions without knowing who the senders and recipients are?
The answer lies in the so-called ‘blind signatures‘, and today you will discover how they work and how they are applied in real cases such as voting or in cryptocurrency transactions.
Definition of blind signature
Blind signatures are a technology introduced by David Chaum in 1982, known as a pioneer in cryptography and privacy preservation technologies, and as the inventor of digital cash.
They are based on public key digital signature schemes, such as RSA.
The RSA system guarantees the confidentiality of communication between two parties by encrypting the message to be transmitted over a channel at source and decrypting it on reception. It guarantees the security of the information (authentication of origin, integrity or non-repudiation) by means of the digital signature.
So, the main objective of blind signatures is to get the signer to sign the message without revealing the message itself. This is achieved by disguising or blinding the content of the message before signing it.
The resulting blind signature can be publicly verified with the original unblinded message, in the form of a regular digital signature.
How do blind signatures work?
David Chaum explained that every time a purchase is made with electronic money and a payment is made, all the information goes into a database, violating our right to privacy.
Hence the need to mask or blind the information in a message by means of a “blind signature”.
To explain how a blind signature works, David Chaum uses as an example the voting system, based on the use of envelopes lined with carbon paper. The system works like this:
- A voter encloses a completed anonymous ballot in a special envelope lined with carbon paper that has the voter’s credentials pre-printed on the outside.
- An official verifies the credentials and signs the envelope, thus transferring his signature to the ballot inside through carbon paper.
- Once signed, the package is returned to the voter, who transfers the signed ballot to a new plain, unmarked envelope.
- Then, the signer does not see the content of the message, but a third party can subsequently verify the signature and know that the signature is valid within the constraints of the underlying signature scheme.
Electronic voting has been one of the main use cases for blind signatures.
Currently the only countries that use electronic voting with legal validity are Belgium, Brazil, Estonia, USA, Philippines, India and Venezuela.
Blind signatures in cryptocurrency transactions
One of the purposes of cryptocurrencies is to create a payment system that takes care of the privacy of its users.
EIn 1988, David Chaum published an article entitled “The Dining cryptographers problem: unconditional sender and recipient untraceability“, in which, for the first time, the concepts of “public key” were discussed.
So, to understand blind signatures, it is important to know how public key cryptography works and what cryptographic signatures are.
Public key cryptography uses a public key consisting of a random string of numbers that is derived from another random string of numbers: the private key. With the private key it is possible to determine the public key. But if we have only the public key, it is practically impossible to generate the private key.
With this type of cryptography, a private communication can be established between two persons A and B , who only share their public keys with each other but their private keys remain private.
In the world of cryptography a blind signature is a digital signature in which the content of a message is hidden before signing it.
To understand it better we use the example of a user B who, when making a transaction, generates a random number that mathematically combines with the data he wants to send. This data is encoded as a string of random numbers and user B will pass this data to user A for signature.
Since user A cannot know what the original data looks like, he is “signing it blindly” and is therefore called a “blind signature”.
What characterizes the blind signature is that it is not only linked to the encrypted data but also to the original unencrypted data.
In this way, the anonymity and privacy of all users performing digital transactions can be preserved.