diff --git a/Biblio.bib b/Biblio.bib index d38e71c5..b9307667 100644 --- a/Biblio.bib +++ b/Biblio.bib @@ -1,3 +1,32 @@ +@misc{npmElectrum2017, + url = "https://www.npmjs.com/package/electrum", + note = {{\url{https://web.archive.org/save/https://www.npmjs.com/package/electrum}.}}, + author = "Arnaud, Pierre +and Schroeter, Mathieu +and Le Barbare, Sam", + title = {{Electrum}}, + year = {{2017}}, +} + +@Inbook{Courtois2014, + author="Courtois, Nicolas T. +and Grajek, Marek +and Naik, Rahul", + editor="Kotulski, Zbigniew +and Ksi{\k{e}}{\.{z}}opolski, Bogdan +and Mazur, Katarzyna", + title="Optimizing SHA256 in Bitcoin Mining", + bookTitle="Cryptography and Security Systems: Third International Conference, CSS 2014, Lublin, Poland, September 22-24, 2014. Proceedings", + year="2014", + publisher="Springer Berlin Heidelberg", + address="Berlin, Heidelberg", + pages="131--144", +abstract="Bitcoin is a ``crypto currency'', a decentralized electronic payment scheme based on cryptography. It implements a particular type of peer-to-peer payment system. Bitcoin depends on well-known cryptographic standards such as SHA-256. In this paper we revisit the cryptographic process which allows one to make money by producing new bitcoins. We reformulate this problem as a specific sort of Constrained Input Small Output (CISO) hashing problem and reduce the problem to a pure block cipher problem, cf. Fig. 1. We estimate the speed of this process and we show that the amortized cost of this process is less than it seems and it depends on a certain cryptographic constant which is estimated to be at most 1.89. These optimizations enable bitcoin miners to save countless millions of dollars per year in electricity bills.", + isbn="978-3-662-44893-9", + doi="10.1007/978-3-662-44893-9_12", + url="https://doi.org/10.1007/978-3-662-44893-9_12", +} + @misc{Keccak, url = "https://keccak.team/keccak.html", note = "Accessed 6 October 2017. Unable to be archived by the Wayback Machine.", diff --git a/Paper.tex b/Paper.tex index ae4e79b5..609c918d 100644 --- a/Paper.tex +++ b/Paper.tex @@ -1654,7 +1654,7 @@ \subsection{zkSNARK Related Precompiled Contracts} \section{Signing Transactions}\label{app:signing} -The method of signing transactions is similar to the `Electrum style signatures'; it utilises the SECP-256k1 curve as described by \cite{gura2004comparing}. +The method of signing transactions is similar to the `Electrum style signatures' as defined by \cite{npmElectrum2017}, heading "Managing styles with Radium" in the bullet point list. This method utilises the SECP-256k1 curve as described by \cite{Courtois2014}, and is implemented similarly to as described by \cite{gura2004comparing} on p.~9 of 15, para.~3. It is assumed that the sender has a valid private key $p_{\mathrm{r}}$, which is a randomly selected positive integer (represented as a byte array of length 32 in big-endian form) in the range \hbox{$[1, \mathtt{\tiny secp256k1n} - 1]$}.