What are Cryptographic Signatures? | Introduction to the Most Common Schemes
What are Cryptographic Signatures?
Cryptographic signatures are mathematical techniques used in cryptocurrency networks to validate the integrity transaction messages across the network. They use asymmetric cryptography and come in various forms.
The types of cryptographic signatures used in a specific cryptocurrency are usually selected for certain advantages that they pose. Digital signatures can provide evidence of the source, identity, and status of an electronic document, transaction or message.
Cryptocurrencies have generated a new range of applications in digital signatures, and their future development will be influenced by the advances in the field of cryptography.
How digital signatures work
Digital signatures are based on asymmetric cryptography which uses a public key algorithm, such as RSA, to generate two keys that are mathematically linked: one private and one public.
Public key cryptography depends on two reciprocally authenticating cryptographic keys. The creator of the digital signature uses their own private key to encrypt signature-related data, and the only way the data can be decrypted is by using the signer’s public key. This is the authentication process of digital signatures.
All signing parties have to trust that the individual creating the signature has kept their own private key secret. If someone else gets a hold of the signer’s private key, that party could create falsified digital signatures.
A cryptographic signature algorithm is typically comprised of three components:
- Key Generation
- Signing Algorithm
- Signature Verification Algorithm
Key Generation outputs the private key and its corresponding public key. The generation of a cryptocurrency private key has to be at random to ensure that only the user of the crypto has access to the wallet.
The Signing Algorithm generates a signature when given a message/transaction and the private key.
The Signature Verification Algorithm verifies the validity of the signature when it receives the message, public key, and digital signature.
After the beneficiary of a transaction verifies the authenticity of a message, he or she can verify the integrity by running the message through the same hashing algorithm as the sender.
Cryptographic signature schemes
There are several cryptographic signature schemes available today, so let’s have a look at some of the most common and more advanced schemes on the horizon.
1. Lamport Signatures
Lamport signatures were one of the first types of digital signatures and are keys that can only be used once. Created by Leslie Lamport in 1979, these signatures are secured by a one-way trapdoor function, which makes them incredibly flexible. They normally use hash functions, and their security is derived from the security of the hash function.
Lamport signatures can comprise of advanced cryptographic hash functions such as the quantum resistant Skein or Keccack hash. Since they can support large hash functions like Skein and Keccack, this makes them suitable for early-stage quantum resistance, although the dynamic potential of quantum computers and resulting advances from their inception cannot be accurately predicted.
2. RSA Digital Signature Algorithm
RSA is the current standard being used by the Internet for message encryption, and breaking the RSA algorithm is known as the RSA problem. Its one-way trapdoor function uses the concept of prime factorization.
RSA is more slow and complicated than other digital signature algorithms and is used for mass encryption rather than directly encrypting user data. However, it is still the most popular digital signature algorithm in usage.
3. Elliptic Curve Digital Signature Algorithm (ECDSA)
ECDSA is a signature employed by many cryptocurrencies, being the algorithm used for Bitcoin until its awaiting move to Schnorr Signatures. ECDSA proved to be more efficient than RSA cryptography because it has a reduced key size. This is ideal for blockchains who need to lessen blockchain congestion and have been struggling to cope with an increase in clients.
ECDSA is based on the concept of point multiplication to facilitate the one-way trapdoor functionality required by a digital signature. ECDSA’s encryption relies on an algebraic function and its curve over a finite graph. Good randomness is necessary for any digital signature algorithm but is vital for ECDSA in particular.
A 384-bit ECDSA key is used to by the NSA keep classified government information secure.
4. Ring Signature
A ring signature obscures the real signer of a transaction by mixing their signature together within a set (ring) of other valid signatures. This obfuscation process should make it computationally impossible to find out the true identity of the signer.
CryptoNote coins, such as Monero, use ring signatures. This enables Monero to take a transaction sender’s account key and mix it with other public keys to male all ring members equal and valid. Various ring signatures can use public keys for multiple times across the network. The signatures increase the privacy of the XMR token by ensuring that transaction outputs are cannot be traced.
There are more types of ring signatures. Ring signatures in Monero used traceable ring signatures before they were updated to Ring Confidential Transactions, which is their current algorithm in Monero.
5. Schnorr Signatures
Regarded the best digital signatures by cryptographers, Schnorr signatures have more advantages than the other signatures. They were integrated into Bitcoin with the help of the Segregated Witness update and their replacement of ECDSA has been of top priority for BTC developers.
Schnorr signatures are simple and efficient. Its trapdoor function relies on specific distinct logarithm problems. Similar to other trapdoor functions, these problems are uncontrollable, which makes them one-way functions.
The most important advantage of Schnorr signatures is their capacity of supporting multi signatures. In Bitcoin, transaction inputs must have their own signature, which leads to a large and inefficient number of signatures included in each block.
Schnorr signatures compile all of these inputs into one signature, which in turn saves up space in each block. Lastly, Schnorr signatures can help increase the capacity of multisig transactions. Incredibly complex multisig transactions can have the same digital signature size as a traditional transaction. This leads to more complex smart contract functionality and improved network scalability.
Cryptographic signatures have been increasingly developed since their introduction into cryptocurrencies. As cryptos are starting to gain more acceptance, more advanced signature schemes will most likely be created