Cryptography

Blockchain and asymmetric cryptography

March 9, 2021 by Howard Poston

Blockchain technology makes it possible to solve business problems in ways that were previously impossible.  A major enabler of this is the decentralization of the blockchain’s digital ledger.

Blockchain’s decentralization works because many of the functions of a centralized authority — such as maintaining the integrity of the ledger — are replaced with cryptography.  Asymmetric or public key cryptography is a key part of what makes blockchain technology possible.

Asymmetric cryptography in the blockchain

Asymmetric cryptography is useful because it uses two different keys: a private key and a public key.  The private key is used for signing messages and decrypting data, while the public key is used for validating signatures and encrypting data.

The use of asymmetric keys makes public key cryptography ideally suited for blockchain technology.  Actions taken using the private key can be validated using the corresponding public key.  Blockchain technology uses asymmetric cryptography for identity management and transaction authentication.

Public key addressing

One of the main benefits of blockchain technology is that it’s pseudonymous.  Blockchain users don’t need to reveal their true identities to create an account on the blockchain or to use it.

Instead, individual blockchain accounts are identified using addresses.  These addresses are derived from public keys, which are associated with private keys.

This use of addresses for identity works because of digital signatures.  When creating a transaction with a blockchain account, the user has to digitally sign the transaction with their private key.  Once this transaction has been sent to the rest of the blockchain network, anyone can verify the signature with the corresponding public key, proving that the transaction is authorized by the owner of the account (or someone with knowledge of their private key).  This makes it possible to authenticate transactions without the need to reveal the identity of the owner of an account.

Digitally signed transactions

Transactions are what make the blockchain run.  They can be used to send value between different accounts or specify code that should be executed on a smart contract platform.

Every transaction on the blockchain is digitally signed.  This provides a couple of different benefits:

  • Transaction authentication: A digital signature proves that someone with knowledge of an account’s private key performed any transactions associated with that account.  This is important because transactions can carry real value, and blockchain users don’t want other people spending their money.
  • Anti-spoofing: The blockchain’s digital ledger is decentralized, meaning that there is no official copy.  Each node in the blockchain network keeps a copy of the digital ledger.  Since all transactions are digitally signed, it is impossible for anyone to spoof or modify a transaction without the corresponding private key.  This protection is vital to ensuring the integrity and correctness of a distributed and decentralized digital ledger.

Securing the blockchain

The blockchain is designed to be a trustless system where cryptographic algorithms and incentives provide the same guarantees that a central authority would regarding the digital ledger. 

Asymmetric cryptography is vital to ensuring the correctness and integrity of the blockchain’s digital ledger.

Sources

How Does Public Key Encryption Work?
Blockchain Address 101
Blockchain Nodes: How They Work

Posted: March 9, 2021
Articles Author
Howard Poston
View Profile

Howard Poston is a cybersecurity researcher with a background in blockchain, cryptography and malware analysis. He has a master's degree in Cyber Operations from the Air Force Institute of Technology and two years of experience in cybersecurity research and development at Sandia National Labs. He currently works as a freelance consultant providing training and content creation for cyber and blockchain security.

Leave a Reply

Your email address will not be published. Required fields are marked *