Last Month at QRL March 2023
21st April 2023
Table of Contents
Highlights
Geometry Labs have been awarded a grant regarding: Fusion signatures submission package for NIST standardization
Geometry Labs has developed highly aggregatable Fusion digital signatures for the QRL ecosystem with funding from the QRL Foundation’s grants programme.
Lattice cryptography, which provides post-quantum security, is the foundation for these very secure signatures. Fusion signatures were developed specifically for use in proof-of-stake systems that involve a large number of validators. The approach taken offers several benefits, including the simplification of the architecture, an increase in capacity, and smaller signatures and keys.
A formal specification and parameterization of the Fusion signature scheme is currently being developed by Geometry Labs; once complete, these algorithms will be made available to the public as open source software and shared with NIST for consideration as a possible standard.
To learn more, read our Fusion grant announcement blog and if you have any questions, you’ll want to get them prepared and stay tuned for an upcoming AMA!
Neven’s Law Explained - What It Means for the Future of Quantum Computing
We examine Moore’s Law, Neven’s Law, and the implications for quantum computing in our most recent episode.
Nevin’s Law has the potential to transform our perception of technology. It asserts that the processing capacity of quantum computers is increasing twice exponentially, i.e., the computer’s processing capability doubles for every additional qubit as the number of qubits increases. Neven’s Law has far-reaching implications since it predicts that in terms of processing power, quantum computers would eventually beat even the most powerful classical computers.
Be sure to check out the video to learn more.
Development Updates
crypto.js
- qrypto.js dilithium5 library working on node and browser
- qrypto.js node unit tests being replicated browser-side
- qrypto.js demo usage via a web-based UI ongoing development and previewed internally
- Fixes for browser implementation of qrypto.js
Cryptography
- Account module is now using Dilithium cryptography
- Functionality added to import dilithium wallet to the node from the hexseed
- Javascript implementation of Dilithium5 wallet with unit tests
- Integrated wallet.js library with @theQRL/web3 and zond-chrome-extension, replacing the older dilithium wallet library generated from go code
- wallet.js CI testing implemented
Progressive Web App (PWA) wallet
- Progressive Web App (PWA) wallet system design commenced
- @theqrl/wallet.js NPM prerelease package published
- Worked on deploy, mint, approve, revoke and transfer nft using Chrome Extension Wallet
- Signing/Verification in browser UI demo work-in-progress deployed
- Bug fixes for token transfer and token approve for the Chrome Extension Wallet
Zond
- Web3 API being upgraded with the latest Dilithium 5 javascript library.
- Looked into how the data of all the fields in the Genesis Block being calculated in the consensus engine.
- Tools to auto-generate Genesis Block for different types of network in progress.
- Reviewed the Genesis Block & state processing as well as the Block processing in the Consensus Engine
- Going through the batchBlock downloading during syncing and processing in Zond Consensus Engine
Other
- Legacy mobile wallet Android dependency deep-dive
- We’ve identified an API targeting issue affecting the legacy mobile wallet app. A short-term fix is in place and the app is now downloadable again from the Google Play store. We’re working on a both a medium term redeployment fix and the longer term mobile wallet development roadmap.
Quantum News
Changelog
theQRL/go-qrllib
- [42143] Added NewDilithiumFromHexSeed
Added NewDilithiumFromMnemonic
- [7fea7] Added NewDilithiumFromMnemonic
Replaced all Dilithium panic with error
- [76f29] Replaced all Dilithium panic with error
theQRL/qrypto.js
Tests for missing coverage in polyvec and symmetric-shake
- [1bd19] Tests for missing coverage in polyvec and symmetric-shake
- [e1d51] Merge remote-tracking branch ‘origin/main’
Refactor to CJS for web3-based module compatibility
- [b2494] Refactor to CJS for web3-based module compatibility
- [b4e88] Fix for randomBytes call
randombytes using appropriate node/browser source calls
- [61c78] randombytes using appropriate node/browser source calls
- [d5b8c] Merge remote-tracking branch ‘origin/main’
- [74bd8] Merge branch ‘main’ into main
- [57454] fix for cjs import
- [02791] Merge remote-tracking branch ‘origin/main’
- [6d7c0] version bump
Refactor SHAKE256 hashing for better browser compatibility
- [b5c03] Refactor SHAKE256 hashing for better browser compatibility
- [9f6cc] Merge branch ‘main’ into main
theQRL/theqrl.org
- [ce657] Fix mobile menu
theQRL/wallet.js
Add coverage and README badges
- [da616] Setup codecov
- [a1f5d] Merge remote-tracking branch ‘origin/main’
- [9dd2a] Generate coverage report
- [99d34] Add README
Refactor to CJS for web3-based module compatibility
- [37df6] Refactor to CJS for web3-based module compatibility
Additional unit test for 100% coverage
- [2d6b7] Additional unit test for 100% coverage
Bug fix, new unit tests and dev setup
- [3665e] Linting & testing setup
- [fbe70] Refactor imports
- [c7f40] Fix byte count check and throw on binToMnemonic()
- [35399] Linting refactor
- [61ec2] Unit tests for mnemonic for byte count check fixed in earlier commit
- [8ac26] Add GH workflow
21st April 2023