Celebrating Six Years of Post-Quantum Security: The Journey of QRL

Read More

Last Month at QRL - April 2022

Last month the QRL team was excited to announce the September 2022 hackathon unveiling PoS and EVM compatible smart contracts. Geometry Labs, in partnership with QRL, released the first part of techniques for efficient finance series with more to come!

technical

1st May 2022

Table of Contents

Highlights

QRL Hackathon 2022

The QRL protocol’s future lies in a public blockchain powered by proof-of-stake that is environmentally friendly, completely decentralized, and capable of provably post-quantum secure transactions and Turing complete smart contracts. New and novel use-cases like dApps, DeFi applications, quantum-secure stablecoins, NFTs, and metaverse applications can be created by provably post-quantum safe Web3 capabilities. Using the QRL ecosystem, blockchain code may be made quantum-secure by anyone’s vision. Choosing to implement the EVM into the QRL protocol enables smart contract compatibility and interoperability with other EVM chains.

Which is why the QRL team was excited to announce the upcoming ‘Build on QRL Protocol’ hackathon event, which will take place in September 2022 where the upcoming network upgrade which includes Proof-of-Stake with compatible Ethereum Virtual Machine (EVM) smart contract functionality will be unveiled, demonstrating the future of post-quantum secure blockchains.

We’re happy to say we’ve narrowed it down to a single location and are getting other details sorted out before revealing. Stay tuned!

Techniques for Efficient Post-quantum Finance Series

The series starts with revealing lattice-algebra, a library with the goal to lower the barrier for creating lattice cryptography primitives and applications by allowing the developers to focus on securely building the higher-level constructs without having to worry about implementing the underlying algebra as well. In short, it is designed to make it easy for developers to write efficient, clean code which implements lattice-based cryptography for protocols and applications - something not readily found in current libraries and something sorely needed to help usher in the era of post-quantum finance.

This was then been followed up with post-quantum secure digital signatures, which describes lattice-based one-time signature scheme similar to the one published by Lyubashevsky and Micciancio. Since our scheme also has some similarities to CRYSTALS-Dilithium (a NIST post-quantum standardization candidate), there are general applications for our discussion below regarding optimizations for smaller keys and signatures in the lattice setting.

Building off of Lyubashevsky and Micciancio, we introduce Boneh and Kim style post-quantum secure signature aggregation, which has several potential applications such as reducing the on-chain footprint for proof-of-stake consensus with many validators, implementing m-of-n multisignature wallets, and on-chain governance.

From there, we’ll be taking a journey through two additional parts to the series, post-quantum secure adapter signatures and fountain architectures. Adaptor signatures is a secondary signature that is used in conjunction with an initial signature to reveal a piece of secret data, resolving the trust issue inherent in concurrent transactions such as atomic swaps. Fountain architectures is a method to significantly reduce the overall blockchain size in a way that remains secure. This is an evolution over light clients (which don’t validate transactions - vulnerable to security and privacy attacks), and block pruning (deletes old blocks after being validated - requires archival nodes to remain on the network). Worth a read is “SeF: A Secure Fountain Architecture for Slashing Storage Costs in Blockchains” which managed to slash storage costs by 1000x, bringing the Bitcoin network down from 191GB to 195MB.

While some effort has been made to make everything understandable, this article series is aimed at systems integrators and cryptography students. We will be maintaining an open AMA form throughout the “Techniques for efficient post-quantum finance” series to address any technical or non-technical questions that may arise, and encourage anyone to use it!

Other developments

Non-fungible Tokens (NFTs)

Early this month we put out a call-to-action for NFT Platform Providers which connects with our call-to-action for NFT creators earlier this year. Since then, we are pleased to announce that we have gathered interested parties and allocated development resources to assist in the development of post-quantum secure NFTs.

Developer Expansion

There are currently three candidates who have been shortlisted and will be subjected to additional evaluations over the next few months. These developers will work along with the rest of the development team to build out our Proof-of-Stake and EVM compatible smart contract platform, though importantly will not limit the ability to have a public devnet for our QRL Hackathon 2022.

EnQlave

EnQlave was founded in early 2020 after it was discovered that we could bring post-quantum security to the Ethereum blockchain (with costs). This pledged to give back to the Ethereum community while also introducing Ethereum to the QRL blockchain ecosystem and providing a bridge in the form of Uniswap. We had a prototype by April 2021 and determined that the project was viable.

Within weeks of the announcement, the average Ethereum gas fees skyrocketed by several factors. In spite of this, work was carried on until the end of 2020, when it was subjected to an audit. Unfortunately, as gas prices refused to recede, it was necessary to make changes in order to keep the project viable and so hash-chains were implemented. This corresponded with a development change to Kaushal/JP, while Charlie finished his final year of high school. Charlie is back as of late 2021/early 2022 (note: dev changes can take months to get acquainted with code) and will be preparing an update on EnQlave.

Since then, Charlie has returned to EnQlave in late 2021 (please keep in mind that development changes can take months to become familiar with the code) and will be working on an update that many are eagerly awaiting.

Website Improvements

We’ve updated to Hugo v97.3 from v74.1 (released early 2020!), which has many additional features such improved i18n handling (stay tuned!) and better file handling & management, which has allowed for the ability to significantly clean things up.

Other adjustments we’ve made have been the addition of Google Analytics 4 (running alongside of Universal Analytics 3 for now, but will supersede it) to continue being able to properly track and analyze milestones and evaluate the effectiveness of various initiatives. MathJax has gone through a downgrade from v3 to v2 to better match workflow with hackmd and spearhead content (hope you’re enjoying the LaTeX in the Geometry Labs blogs!). Additional features added are guest blogs and the ability to handle series for both video and written content!

Community Initiatives

QRL Cannon Release

QRL Cannon allows QRL nodes to be launched in the cloud through a web interface with no technical knowledge; just follow the directions at https://qrlcannon.net/.

Questions? The person spearheading QRL Cannon, K.G. Yıldırım, is available in Discord to answer any inquiries you may have.

Quantum News

OpenSSH now defaults to protecting against quantum computer attacks

“Post-quantum cryptography has arrived by default with the release of OpenSSH 9 and the adoption of the hybrid Streamlined NTRU Prime + x25519 key exchange method.” - zdnet

PsiQuantum’s Path to 1 Million Qubits

“PsiQuantum says it will have all the manufacturing processes in place “by the middle of the decade” and it’s working closely with GlobalFoundries (GF) to turn its vision into reality. The generous size of its funding suggests many think it will succeed. PsiQuantum is betting on a photonics-based approach called fusion-based quantum computing (paper) that relies mostly on well-understood optical technology but requires extremely precise manufacturing tolerances to scale up. It also relies on managing individual photons, something that has proven difficult for others.” - hpcwire

Development Log

theQRL/nft-providers

Add code generator

  • [c7287] Add base setup
  • [2e2c8] Merge branch ’theQRL:main’ into main
  • [c6d54] Add providers.yml and code generator
  • [9f306] Add README

theQRL/qrl-proto-sha256

Add walletProto

theQRL/block-explorer

NFT explorer functionality to testnet

  • [e245d] Support for nft-providers and NFTs in /tx route
  • [517c4] Version bump explorer-helpers
  • [34082] Add NFTs in tx list on address page
  • [ba578] Support NFTs on block list
  • [c13e5] Add verified provider badge in header of address page where appropriate
  • [d12ba] Add NFTs tab, populate and separate from tokens
  • [1f718] Dark mode UI fix for NFT header
  • [a4207] Remove extraneous console log
  • [4ff38] Add WIP transfer NFT display on Tx page
  • [4dd99] Use updated explorer-helpers
  • [8bf7b] Transfer NFTs on Tx page
  • [49b56] Send and receive NFTs on address page
  • [6b714] Add Transfer NFTs to block page
  • [d1531] Last TX page NFTs

theQRL/qips

Mark QIP-016 as completed

  • [6f811] Mark QIP-016 as completed

theQRL/theqrl.org

Add geometry labs contributors

  • [da64e] Add geometry labs contributors
  • [16721] Update stats

tweak: remove link to pending article

  • [0c91c] tweak: remove link to pending article

Add new blog: Techniques for efficient post-quantum finance part 2

  • [4c9be] Update “case for QR blockchains”
  • [aa942] Add new blog: Techniques for efficient post-quantum finance part 2
  • [a3825] Add further reading which references theqrl.org Thanks curefrankosflue
  • [57b59] New feature: series taxonomy
  • [bf069] Add series taxonomy to part 1
  • [497b7] LaTex/Summary fixes
  • [aaa80] Illustration fixes

Update CI config for bumped Hugo version

  • [a02dc] Update CI config for bumped Hugo version

Tidy after v97.3 netlify update

  • [f74c1] Tidy
  • [5df7a] Merge remote-tracking branch ‘upstream/main’ into main
  • [2fa00] Merge remote-tracking branch ‘upstream/main’ into main
  • [de68e] Fix twitter warnings
  • [601bf] Add research category to blog
  • [1d356] Remove excess files and replace with mounts
  • [ec93a] Move static directory to assets
  • [f436f] Better CSP compliance + GA4
  • [f6918] Update stats
  • [cb115] Add GA4 Header

tweak: correct repository link

  • [8376a] tweak: correct repository link

Upgrade Hugo version

  • [895c5] Upgrade Hugo version

Remove redundant package-lock.json

  • [ac34e] Remove redundant package-lock.json

Remove mount and duplicate files instead

  • [21311] Remove mount and duplicate files instead

New blog: Techniques for efficient post-quantum finance (Part 1: digital signatures)

  • [6ab63] Improve mathjax configuration
  • [11840] Add guest blog ability
  • [590a5] Additional styling
  • [5cbb1] New blog: Techniques for efficient post-quantum finance (Part 1: digital signatures)
  • [27538] Fix Alicebob Oracle unforgeability

Fix header image for blog

  • [021ba] Fix header image for blog

New Blog: PoS/EVM Smart-contract reveal at the QRL Hackathon 2022

  • [a331b] New Blog: QRL Hackathon 2022 + PoS/Smart-contract reveal
  • [544b5] Fix windows downloads to show extensions
  • [d564f] Adjustments

New blog: Calling all NFT service providers

  • [e3fd3] New blog: Calling all NFT service providers
  • [0cf82] Update data

Add Last Month at QRL March 2022 blog update

  • [10824] Add Last Month at QRL March 2022 images
  • [c6224] Add Last Month at QRL March 2022 blog text
  • [1ed1d] Add Hack font to code areas
  • [c0e62] Update stats

Content maintenance

  • [178d3] Update presskit explainer deck
  • [36ffe] Add foundation website URL.
  • [85344] Update go modules for theQRL/qips
  • [ea99a] Update stats

Presskit ToS language update + supporting explainer files

  • [cc204] Presskit ToS language update + supporting explainer files

Add QRL Explainer

  • [59566] Add QRL Explainer

Add reasons to run a qrl node blog

  • [06c5f] Adjust css for code
  • [ca98f] Add ability to use stats inline in blog, live. Add stats
  • [19022] Add contributors and stats scripts file
  • [a33fd] Clean up extra.js
  • [4c78b] Updated contributions
  • [e68d6] Add citation (pointed out by quack)
  • [b4424] Change variable sources for timeline
  • [90dff] Add “reasons to run a qrl node” blog
  • [2bf3b] Remove lang.FormatNumber
  • [58c9d] Update stats

Last Month at QRL - February 2022

  • [0869e] Grammar fix by otdto
  • [6a43b] Remove countdown
  • [328bc] Update data
  • [dbb95] Update historical assets
  • [7b719] Last Month at QRL - February 2022

QRL Mainnet Release v3 blog

  • [32a42] QRL Mainnet Release v3 blog
  • [31653] Minor roadmap changes
  • [5be0a] Countdown changes (will be removed next update)
  • [49e56] Add geometry labs profile
  • [eaa60] Part of roadmap adjustments.

New lattice-algebra blog

  • [e2cdb] Lattice algebra blog
  • [e0f2c] Countdown to mainnet v3 counter
  • [131fd] Repository count change
  • [05b10] Additional citation (thanks to Quack from Discord)
  • [f5773] Lattice algebra blog updates
  • [9028c] Proof-of-Stake stub

Last Month at QRL - January 2022

  • [c55ad] Update QIPs
  • [211cf] Last Month at QRL - January 2022
  • [4687a] A few changes

theQRL/qrl-wallet

NFT wallet functionality to testnet

  • [abbc2] NFTs: use linting service (dev deploy)
  • [e7b7c] NFT: rudimentary send linted metadata as per QIP014
  • [8d5b4] Add NFTs tab on main wallet page
  • [9ec90] Add list of NFTs owned on main page and WIP on creation in Tx history
  • [7dd1f] NFT data on Tx page
  • [1c9ce] Select NFT to transfer UI logic
  • [49209] Parse token data as NFT on confirmation page
  • [352d3] Add NFT tx result page
  • [560d6] Use production version of linting service
  • [92e05] NFT visual fixes
  • [81a56] Bump meteor version
  • [24aa9] Dependency updates
  • [2711d] Dependency version bumps

theQRL/qrl-cli

Bump dependencies and fix to node >=16

  • [40d12] Merge pull request #1 from theQRL/master Merge fr1t2 testing/message changes
  • [8c8fd] Merge branch ’theQRL:master’ into master
  • [529e4] Merge branch ’theQRL:master’ into master
  • [d68a4] Bump dependencies for npm release
  • [d6914] Fixes for Silicon/npm

feat: Adding JSON response to output

  • [a0250] feat: Adding JSON response to output

theQRL/explorer-helpers

Add TRANSFER NFT

  • [f57f1] Add transfer NFT support
  • [dbf46] release v2.7.0
  • [5f391] Merge branch ‘master’ into master

Remove console output, add test & update deps

  • [de477] Remove console debug & test
  • [00d66] Dependency update
  • [1204a] Merge branch ‘master’ into master

Add ‘CREATE NFT’

  • [24e7b] Add ‘CREATE NFT’

theQRL/qrllib

QRL Rust port (unbenchmarked)

  • [06991] xmss_base Rust implementation
  • [2dbee] add xmss_alt_test and fix bugs
  • [7b4fa] xmss_basic implementation and tests for qrl_helper + qrl_descriptor
  • [a5008] add xmss_basic tests and fix minor bugs
  • [5212f] XMSSPool Rust implementation done + tests
  • [08269] finish implementing rust tests
  • [4bd2c] fix guard bug in algsxmss_fast
  • [81010] Rust port of misc and hashing + tests
  • [9dbf4] change xmss_pool to use hashing and misc

xmss_alt port to Rust

  • [670e9] start xmss_alt rust migration - fips202, hash_address, hash_functions
  • [80a8b] wots rust implementation with dependencies
  • [39786] hash rust implementation
  • [af1e7] xmss_common rust implementation
  • [ce9f8] algsxmss Rust implementation
  • [781c5] algsxmss_fast Rust implementation
  • [a2112] change unsigned long port from u32 to u64

Want to learn more?

Give our website theqrl.org a browse or join us for a chat in one of our many communities on Telegram, Discord, Reddit, Facebook, or KakaoTalk.

Want to stay up to date? Follow us on Youtube, Twitter or our Telegram news channel.

Want to dig into our audited, MIT open-source, enterprise-grade codebase? Check out our github at: https://github.com/theQRL/QRL/

technical

1st May 2022


Jack Matier

WRITTEN BY

Jack Matier