Komodo is pleased to announce the integration of Dilithium, a quantum-secure digital signature scheme. This new technology provides protection against attacks from quantum computers, ensuring an unparalleled level of security.
While adopting a quantum-secure cryptographic signature scheme would ordinarily be the sole focus of an entire blockchain project— perhaps with its own coin, an ICO, and a dedicated team of developers— the power of Komodo’s technology allowed jl777 to complete the task in just a few days. Now, quantum security is an optional plug-in available to all projects that create a blockchain within the Komodo ecosystem.
A Brief Overview of Digital Signatures
First invented in the late 1970s, digital signatures were a huge breakthrough for all of modern cryptography and computer science. Digital signature schemes implement a form of cryptography known as public key cryptography, also known as asymmetric cryptography.
Whitfield Diffie and Martin Hellman are credited with the coming up with the notion of public key cryptography. Ralph Merkle is also cited for his contributions to the founding of public key cryptography, as well as his creation of the data organization method now known as a Merkle tree.
In short, public key cryptography produces two different “keys”— a private key and a public key. The private key is used to derive the public key. A public key can be shared publicly, as it is impossible to determine the private key from the public key. Anyone can encrypt data using a public key, such that the data can only be decrypted using the corresponding private key.
Digital signature schemes use public key cryptography to securely transfer data electronically. A receiver of encrypted data does not need to know the sender’s private key in order to verify that the message definitely came from the owner of the private key. In addition, the receiver is able to confirm that the data was not altered at any point in the transfer process.
The use cases of digital signatures are myriad. Everything from everyday web browsing to online banking and cryptocurrency transactions use some form of a digital signature scheme.
The Threat of Quantum Computing
Over the last 40 years, digital signatures have become extremely commonplace. Although they are typically considered adequately secure from attack or interference, researchers have started to find vulnerabilities in some digital signature schemes.
For example, a team of researchers successfully factorized a 768-bit (232-digit) semiprime number. This, in effect, exposed a vulnerability in digital signature schemes based on the factorization of extremely large semiprime numbers, such as the well-known RSA cryptosystem.
However, it’s important to note that factoring that 232-digit number— that is, discovering two prime numbers that, when multiplied together, produce that 232-digit number— took a team of researchers almost two years to find. According to the essay, completing the same task “on a single core 2.2 GHz AMD Opteron processor with 2 GB RAM… would have taken about fifteen hundred years.” Breaking existing digital signature schemes is possible, but it is not yet easy.
Quantum computing will take the next step and make cracking current cryptographic digital signature schemes trivial. This is true because quantum computers use tiny pieces of information called qubits that can exist in more than one state at a time. Whereas traditional computers use bits of information— binary digits of either a 0 or a 1— quantum computers use qubits, which are both a 0 and a 1 at the same moment.
While quantum computers have not yet been produced, they are currently in development. Experts believe they’ll be developed in the near future, perhaps in the next 5 to 10 years. The invention will jeopardize all of modern cryptography as we know it.
Bitcoin and other Bitcoin-protocol blockchains use an ECDSA (elliptic curve digital signature algorithm) called secp256k1. Just like other digital signature schemes, secp256k1 has known quantum vulnerabilities, such as the one resulting from Shor’s algorithm. More specifically, it is widely understood that sufficiently powerful quantum computers could easily crack the cryptographic methods protecting Bitcoin and many other blockchain-based digital assets.
In anticipation of the iminent invention of quantum computers, researchers are developing quantum-resistant cryptographic techniques.
For instance, the National Institute for Standards and Technology (NIST), an agency of the US Department of Commerce, recently started a research initiative called Post-Quantum Cryptography. In short, this project is researching cryptographic hash functions and digital signature schemes that are secure against theoretically ultra-powerful quantum computers.
One of the proposals for a quantum-resistant cryptographic verification process is known as Crystals-Dilithium. Specifically, Crystals-Dilithium is a “digital signature scheme that is strongly secure under chosen message attacks based on the hardness of lattice problems over module lattices.”
Lattice-based cryptography is a relatively new branch of cryptography that offers protection against quantum computers and the coherent quantum superpositions of information they allow.
As such, lattice-based digital signature schemes such as Crystals-Dilithium will ensure a smooth and secure transition from existing cryptographic methods to stronger, quantum-secure encryption techniques.
Komodo Creates Dilithium, A Quantum Secure Blockchain
To stay two steps ahead of attackers and remain at the bleeding edge of the blockchain industry, Komodo’s Lead Dev James ‘jl777’ Lee has already implemented the Crystals-Dilithium digital signature scheme. The new custom consensus module is simply called Dilithium.
Integrating Dilithium was made simple with Komodo’s custom consensus framework. The open source code for the Crystals-Dilithium digital signature scheme was added into a smart module, along with a few small modifications.
One of these modifications was to allow users to create a new type of quantum-secure address. First, users register a handle of their choosing. This registration process executes a transaction on the blockchain, which takes both the user’s quantum-secure public key and chosen handle into account. This allows a mere 32 bytes of data (the transaction ID of the registration transaction) to refer to 3 kilobytes of data (the uncompressed Dilithium public key).
More significantly, this will allow users to send funds to one another’s handles. Rather than entering an ordinary address of random numbers and letters, Dilithium users will simply enter handles into a GUI and click send. If James ‘jl777’ Lee chose to use the handle “jl777” and registered that to his Dilithium public key, then you could send funds to “jl777” and they would be transferred directly to his wallet in a quantum-secure fashion.
There is one other major condition of the Dilithium smart module. It adds an additional consensus rule that requires each transaction to be signed twice: once in accordance with the blockchain’s original digital signature process, and then a second time according to Dilithium’s new quantum-resistant signature process. This just ensures that each and every transaction on any blockchain using the Dilithium module is protected against quantum computing attacks.
As Dilithium was coded using Komodo’s custom consensus framework, quantum secure transactions are not exclusive to one blockchain. Rather, the Dilithium module is available to any project that builds within the ecosystem. Quantum security can simply be added to any chain like a plug-in.
Komodo is constantly at the forefront of the blockchain industry and the integration of Dilithium to a custom consensus module is just one more example.
To learn more about the Dilithium smart module, please see the Dilithium Developer Documentation.
To be among the first to receive updates about other innovations from the Komodo team, join the Five Bullet Friday email list. Every Friday, you’ll receive a newsletter with the 5 most important events about Komodo from the previous week.
If you have any questions or would like to chat with the Komodo team and other community members, please join the Komodo Discord server.
Join us as we continue to lead the blockchain revolution.