Hash-based cryptography: Difference between revisions

Content deleted Content added
Complemented "Implementations" section with hyperlinks and cited more valid reference sources.
m Updated the "QRL" Acronym to its current meaning "Quantum Resistant Ledger"
Line 41:
 
==Implementations==
Unlike other popular [[Blockchain|blockchain networks]] and [[Cryptocurrency|cryptocurrencies]] that use already [[NIST]] standardized Elliptic Curve Digital Signature Algorithms ([[Elliptic Curve Digital Signature Algorithm|ECDSA)]]<ref>{{Cite journal|last=Wang|first=Licheng|last2=Shen|first2=Xiaoying|last3=Li|first3=Jing|last4=Shao|first4=Jun|last5=Yang|first5=Yixian|date=2019-02-01|title=Cryptographic primitives in blockchains|url=http://www.sciencedirect.com/science/article/pii/S108480451830362X|journal=Journal of Network and Computer Applications|volume=127|pages=43–58|doi=10.1016/j.jnca.2018.11.003|issn=1084-8045}}</ref>, The Quantum ResearchResistant Ledger (QRL) is the first [[Open-source software|open source]] network to implement eXtended Merkle Signature Scheme<ref>{{cite web|url=https://theqrl.org/|title=The Quantum Resistant Ledger|date=2019-08-24|website=theqrl.org|language=en}}</ref>. In contrast to traditional ECDSA signatures, this stateful signature scheme is provably resistant to a sufficiently powerful quantum computer running [[Shor's algorithm|Shor’s algorithm]]. <ref>{{cite web|title=NIST Stateful Hash-Based Signatures|url=https://csrc.nist.gov/CSRC/media/Projects/Stateful-Hash-Based-Signatures/documents/stateful-HBS-public-comments-June2018-rfi.pdf|website=NIST|language=en|date=2019-02-04}}</ref><ref>{{Cite web|url=https://csrc.nist.gov/Projects/Stateful-Hash-Based-Signatures|title=Hash-Based Signatures {{!}} CSRC|last=Computer Security Division|first=Information Technology Laboratory|date=2018-12-20|website=CSRC {{!}} NIST|language=EN-US|access-date=2019-09-06}}</ref>
 
The XMSS, GMSS and SPHINCS schemes are available in the Java [[Bouncy Castle (cryptography)|Bouncy Castle]] cryptographic APIs.<ref>{{cite web|title=bcgit/bc-java|url=https://github.com/bcgit/bc-java/tree/master/core/src/main/java/org/bouncycastle/pqc/crypto|website=GitHub|language=en|date=2018-12-18}}</ref> SPHINCS is implemented in the SUPERCOP benchmarking toolkit.<ref>{{cite web|title=SUPERCOP|url=http://bench.cr.yp.to/supercop.html}}</ref> Optimised<ref>{{cite web|title=Code|url=https://huelsing.wordpress.com/code/|website=Andreas Hülsing}}</ref> and unoptimised<ref>{{cite web|title=squareUP > Publications|url=http://www.pqsignatures.org/index/publications.html#code|website=www.pqsignatures.org|language=en-gb}}</ref> reference implementations of the XMSS RFC exist. The LMS scheme has been implemented in Python<ref>{{cite web|last1=David|first1=McGrew|title=The hash-sigs package: an implementation of the Leighton-Micali Hierarchical Signature System (HSS).|url=https://github.com/davidmcgrew/hash-sigs/|website=GitHub|language=en|date=2018-05-29}}</ref> and in C<ref>{{cite web|last1=David|first1=McGrew|title=A full-featured implementation of the LMS and HSS Hash Based Signature Schemes from draft-mcgrew-hash-sigs-07.|url=https://github.com/cisco/hash-sigs|website=GitHub|language=en|date=2018-11-22}}</ref> following its Internet-Draft.