diff --git a/whitepaper/btch/Makefile b/whitepaper/btch/Makefile deleted file mode 100644 index f70ec6c..0000000 --- a/whitepaper/btch/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -protocol.pdf: protocol.tex hush.bib - $(MAKE) pdf - -LATEX=pdflatex - -.PHONY: pdf -pdf: - printf '\\renewcommand{\\docversion}{Version %s}' "$$(git describe --tags --abbrev=6)" |tee protocol.ver - # If $(LATEX) fails, touch an input so that 'make' won't think it is up-to-date next time. - rm -f protocol.aux protocol.bbl protocol.blg protocol.brf protocol.bcf - $(LATEX) protocol.tex - biber protocol - $(LATEX) protocol.tex - $(LATEX) protocol.tex - $(LATEX) protocol.tex -.PHONY: clean -clean: - rm -f protocol.dvi protocol.pdf protocol.bbl protocol.blg protocol.brf protocol.toc protocol.aux protocol.out protocol.log protocol.bcf protocol.run.xml protocol.ver diff --git a/whitepaper/btch/btch.bib b/whitepaper/btch/btch.bib deleted file mode 100644 index 0121c1f..0000000 --- a/whitepaper/btch/btch.bib +++ /dev/null @@ -1,576 +0,0 @@ -@misc{Zcash, - author={Daira Hopwood}, - title={Zcash Protocol Specification}, - url={https://github.com/zcash/zips/blob/master/protocol/protocol.pdf}, - urldate={2017-12-28} -} - -@misc{Komodo, - author={superNET}, - title={Komodo Platform}, - url={https://komodoplatform.com}, - urldate={2017-12-28} -} - -@misc{BarterDEX, - author={jl777}, - title={barterDEX - Atomic Swap Decentralized Exchange of Native Coins}, - url={https://github.com/SuperNETorg/komodo/wiki/barterDEX-Whitepaper-v2}, - urldate={2017-12-28} -} - -@misc{dPOW, - author={jl777}, - title={Delayed Proof of Work (dPoW)}, - url={https://supernet.org/en/technology/whitepapers/delayed-proof-of-work-dpow}, - urldate={2017-12-27} -} - -@misc{BCG+2014, - author={Eli Ben-Sasson and Alessandro Chiesa and Christina Garman and Matthew Green and Ian Miers and Eran Tromer and Madars Virza}, - title={Zerocash: Decentralized {A}nonymous {P}ayments from {B}itcoin (extended version)}, - url={http://zerocash-project.org/media/pdf/zerocash-extended-20140518.pdf}, - urldate={2016-08-06}, - addendum={A condensed version appeared in \textsl{Proceedings of the IEEE Symposium on Security and Privacy (Oakland) 2014}, -pages 459--474; IEEE, 2014.} -} - -@misc{BCTV2015, - author={Eli Ben-Sasson and Alessandro Chiesa and Eran Tromer and Madars Virza}, - title={Succinct {N}on-{I}nteractive {Z}ero {K}nowledge for a von {N}eumann {A}rchitecture}, - url={https://eprint.iacr.org/2013/879}, - urldate={2016-08-21}, - howpublished={Cryptology ePrint Archive: Report 2013/879. -Last revised \mbox{May 19,} 2015.} -} - -@misc{PGHR2013, - author={Bryan Parno and Craig Gentry and Jon Howell and Mariana Raykova}, - title={Pinocchio: {N}early {P}ractical {V}erifiable {C}omputation}, - url={https://eprint.iacr.org/2013/279}, - urldate={2016-08-31}, - howpublished={Cryptology ePrint Archive: Report 2013/279. Last revised \mbox{May 13,} 2013.} -} - -@misc{BCGTV2013, - author={Eli Ben-Sasson and Alessandro Chiesa and Daniel Genkin and Eran Tromer and Madars Virza}, - title={{SNARK}s for {C}: {V}erifying {P}rogram {E}xecutions {S}uccinctly and in {Z}ero {K}nowledge}, - url={https://eprint.iacr.org/2013/507}, - urldate={2016-08-31}, - howpublished={Cryptology ePrint Archive: Report 2013/507. -Last revised \mbox{October 7,} 2013.}, - addendum={An earlier version appeared in \textsl{Proceedings of the 33rd Annual International Cryptology Conference, -CRYPTO '13}, pages 90--108; IACR, 2013.} -} - -@misc{GGPR2013, - author={Rosario Gennaro and Craig Gentry and Bryan Parno and Mariana Raykova}, - title={Quadratic {S}pan {P}rograms and {S}uccinct {NIZK}s without {PCP}s}, - howpublished={Cryptology ePrint Archive: Report 2012/215. -Last revised \mbox{June 18,} 2012.}, - addendum={Also published in \textsl{Advances in Cryptology - EUROCRYPT 2013}, Vol. 7881 pages 626--645; -Lecture Notes in Computer Science; Springer, 2013.}, - url={https://eprint.iacr.org/2012/215}, - urldate={2016-09-01} -} - -@inproceedings{BCTV2014, - author={Eli Ben-Sasson and Alessandro Chiesa and Eran Tromer and Madars Virza}, - title={Scalable {Z}ero {K}nowledge via {C}ycles of {E}lliptic {C}urves (extended version)}, - booktitle={Advances in Cryptology - CRYPTO 2014}, - volume={8617}, - series={Lecture Notes in Computer Science}, - pages={276--294}, - year={2014}, - publisher={Springer}, - url={https://www.cs.tau.ac.il/~tromer/papers/scalablezk-20140803.pdf}, - urldate={2016-09-01} -} - -@misc{BGG2016, - author={Sean Bowe and Ariel Gabizon and Matthew Green}, - title={A multi-party protocol for constructing the public parameters of the {P}inocchio zk-{SNARK}}, - date={2016-11-24}, - url={https://github.com/zcash/mpc/blob/master/whitepaper.pdf}, - urldate={2017-02-11} -} - -@misc{Bitcoin, - author={Satoshi Nakamoto}, - title={Bitcoin:\, {A}\, {P}eer-to-{P}eer\, {E}lectronic\, {C}ash\, {S}ystem}, - date={2008-10-31}, - url={https://bitcoin.org/en/bitcoin-paper}, - urldate={2016-08-14} -} - -@misc{BK2016, - author={Alex Biryukov and Dmitry Khovratovich}, - title={Equihash: {A}symmetric {P}roof-of-{W}ork {B}ased on the {G}eneralized {B}irthday {P}roblem (full version)}, - url={https://eprint.iacr.org/2015/946}, - urldate={2016-10-30}, - howpublished={Cryptology ePrint Archive: Report 2015/946. -Last revised \mbox{October 27,} 2016.} -} - -@inproceedings{Bern2006, - author={Daniel Bernstein}, - title={Curve25519: new {D}iffie-{H}ellman speed records}, - booktitle={Public Key Cryptography - PKC 2006. Proceedings of the 9th International Conference on Theory and Practice in Public-Key Cryptography, New York, NY, USA, April 24-26}, - publisher={Springer-Verlag}, - date={2006-02-09}, - url={http://cr.yp.to/papers.html#curve25519}, - urldate={2016-08-14}, - addendum={Document ID: 4230efdfa673480fc079449d90f322c0.} -} - -@article{BDL+2012, - author={Daniel Bernstein and Niels Duif and Tanja Lange and Peter Schwabe and Bo-Yin Yang}, - title={High-speed high-security signatures}, - journal={Journal of Cryptographic Engineering}, - volume={2}, - pages={77-89}, - date={2011-09-26}, - url={http://cr.yp.to/papers.html#ed25519}, - urldate={2016-08-14}, - addendum={Document ID: a1a62a2f76d23f65d622484ddd09caf8.} -} - -@misc{Zave2012, - author={Gregory M. Zaverucha}, - title={Hybrid {E}ncryption in the {M}ulti-{U}ser {S}etting}, - url={https://eprint.iacr.org/2012/159}, - urldate={2016-09-24}, - howpublished={Cryptology ePrint Archive: Report 2012/159. -Received \mbox{March 20,} 2012.} -} - -@inproceedings{Bern2005, - author={Daniel Bernstein}, - title={Understanding brute force}, - date={2005-04-25}, - booktitle={ECRYPT STVL Workshop on Symmetric Key Encryption, eSTREAM report 2005/036}, - url={https://cr.yp.to/papers.html#bruteforce}, - urldate={2016-09-24}, - addendum={Document ID: 73e92f5b71793b498288efe81fe55dee.} -} - -@book{Unicode, - author={The Unicode Consortium}, - publisher={The Unicode Consortium}, - year={2016}, - title={The Unicode Standard}, - url={http://www.unicode.org/versions/latest/}, - urldate={2016-08-31} -} - -@misc{libsodium-Seal, - title={Sealed boxes \hspace{0.2em}---\hspace{0.2em} libsodium}, - url={https://download.libsodium.org/doc/public-key_cryptography/sealed_boxes.html}, - urldate={2016-02-01} -} - -@misc{NIST2015, - author={NIST}, - title={{FIPS} 180-4: Secure {H}ash {S}tandard ({SHS})}, - month={August}, - year={2015}, - doi={10.6028/NIST.FIPS.180-4}, - url={http://csrc.nist.gov/publications/PubsFIPS.html#180-4}, - urldate={2016-08-14} -} - -@misc{RIPEMD160, - author={Hans Dobbertin and Antoon Bosselaers and Bart Preneel}, - title={{RIPEMD}-160, a strengthened version of {RIPEMD}}, - url={http://homes.esat.kuleuven.be/~bosselae/ripemd160.html}, - urldate={2016-09-24} -} - -@misc{ANWW2013, - author={Jean-Philippe Aumasson and \;Samuel Neves and \;Zooko Wilcox-O'Hearn and -\;Christian Winnerlein}, - date={2013-01-29}, - title={{BLAKE2}: simpler, smaller, fast as {MD5}}, - url={https://blake2.net/#sp}, - urldate={2016-08-14} -} - -@misc{RFC-7693, - author={Markku-Juhani Saarinen (ed.)}, - title={Request for {C}omments 7693: {T}he {BLAKE2} {C}ryptographic {H}ash and -{M}essage {A}uthentication {C}ode ({MAC})}, - howpublished={Internet Engineering Task Force (IETF)}, - date={2015-11}, - url={https://tools.ietf.org/html/rfc7693}, - urldate={2016-08-31} -} - -@misc{RFC-2119, - author={Scott Bradner}, - title={Request for {C}omments 7693: {K}ey words for use in {RFC}s to {I}ndicate -{R}equirement {L}evels}, - howpublished={Internet Engineering Task Force (IETF)}, - date={1997-03}, - url={https://tools.ietf.org/html/rfc2119}, - urldate={2016-09-14} -} - -@misc{Cert2010, - author={Certicom Research}, - title={Standards for {E}fficient {C}ryptography 2 ({SEC} 2)}, - date={2010-01-27}, - addendum={Version 2.0.}, - url={http://www.secg.org/sec2-v2.pdf}, - urldate={2016-08-14} -} - -@inproceedings{MAEA2010, - author={V. Gayoso Mart{\'i}nez and F. Hern{\'a}ndez Alvarez and -L. Hern{\'a}ndez Encinas and C. S{\'a}nchez {\'A}vila}, - title={A {C}omparison of the {S}tandardized {V}ersions of {ECIES}}, - booktitle={Proceedings of Sixth International Conference on Information Assurance and Security, -23--25 August 2010, Atlanta, GA, USA. ISBN: 978-1-4244-7407-3}, - year={2010}, - pages={1-4}, - publisher={IEEE}, - doi={10.1109/ISIAS.2010.5604194}, - url={https://digital.csic.es/bitstream/10261/32674/1/Gayoso_A%20Comparison%20of%20the%20Standardized%20Versions%20of%20ECIES.pdf}, - urldate={2016-08-14} -} - -@misc{ABR1999, - author={Michel Abdalla and Mihir Bellare and Phillip Rogaway}, - title={{DHAES}: {A}n {E}ncryption {S}cheme {B}ased on the {D}iffie-{H}ellman {P}roblem}, - url={https://eprint.iacr.org/1999/007}, - urldate={2016-08-21}, - date={1998-09}, - howpublished={Cryptology ePrint Archive: Report 1999/007. Received \mbox{March 17,} 1999.} -} - -@misc{DGKM2011, - author={Dana Dachman-Soled and Rosario Gennaro and Hugo Krawczyk and Tal Malkin}, - title={Computational {E}xtractors and {P}seudorandomness}, - url={https://eprint.iacr.org/2011/708}, - urldate={2016-09-02}, - howpublished={Cryptology ePrint Archive: Report 2011/708. \mbox{December 28,} 2011.} -} - -@misc{BDEHR2011, - author={Johannes Buchmann and Erik Dahmen and Sarah Ereth and Andreas H{\"u}lsing and Markus R{\"u}ckert}, - title={On the {S}ecurity of the {W}internitz {O}ne-{T}ime {S}ignature {S}cheme (full version)}, - url={https://eprint.iacr.org/2011/191}, - urldate={2016-09-05}, - howpublished={Cryptology ePrint Archive: Report 2011/191. -Received \mbox{April 13,} 2011.} -} - -@misc{vanS2014, - author={Nicolas van Saberhagen}, - title={CryptoNote v 2.0}, - note={Date disputed.}, - url={https://cryptonote.org/whitepaper.pdf}, - urldate={2016-08-17}, -} - -@misc{Bitcoin-Base58, - title={Base58{C}heck encoding --- {B}itcoin {W}iki}, - url={https://en.bitcoin.it/wiki/Base58Check_encoding}, - urldate={2016-01-26} -} - -@misc{Bitcoin-secp256k1, - title={Secp256k1 --- {B}itcoin {W}iki}, - url={https://en.bitcoin.it/wiki/Secp256k1}, - urldate={2016-03-14} -} - -@misc{Bitcoin-CoinJoin, - title={Coin{J}oin --- {B}itcoin {W}iki}, - url={https://en.bitcoin.it/wiki/CoinJoin}, - urldate={2016-08-17} -} - -@misc{Bitcoin-Format, - title={Raw {T}ransaction {F}ormat --- {B}itcoin {D}eveloper {R}eference}, - url={https://bitcoin.org/en/developer-reference#raw-transaction-format}, - urldate={2016-03-15} -} - -@misc{Bitcoin-Block, - title={Block {H}eaders --- {B}itcoin {D}eveloper {R}eference}, - url={https://bitcoin.org/en/developer-reference#block-headers}, - urldate={2017-04-25} -} - -@misc{Bitcoin-nBits, - title={Target n{B}its --- {B}itcoin {D}eveloper {R}eference}, - url={https://bitcoin.org/en/developer-reference#target-nbits}, - urldate={2016-08-13} -} - -@misc{Bitcoin-Multisig, - title={P2SH multisig (definition) --- {B}itcoin {D}eveloper {R}eference}, - url={https://bitcoin.org/en/developer-guide#term-p2sh-multisig}, - urldate={2016-08-19} -} - -@misc{Bitcoin-P2SH, - title={P2SH (definition) --- {B}itcoin {D}eveloper {R}eference}, - url={https://bitcoin.org/en/developer-guide#term-p2sh}, - urldate={2016-08-24} -} - -@misc{Bitcoin-P2PKH, - title={P2PKH (definition) -- {B}itcoin {D}eveloper {R}eference}, - url={https://bitcoin.org/en/developer-guide#term-p2pkh}, - urldate={2016-08-24} -} - -@misc{Bitcoin-Protocol, - title={Protocol documentation --- {B}itcoin {W}iki}, - url={https://en.bitcoin.it/wiki/Protocol_documentation}, - urldate={2016-10-02} -} - -@misc{BIP-11, - author={Gavin Andresen}, - title={M-of-{N} {S}tandard {T}ransactions}, - howpublished={Bitcoin Improvement Proposal 11. Created October 18, 2011}, - url={https://github.com/bitcoin/bips/blob/master/bip-0011.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-13, - author={Gavin Andresen}, - title={Address {F}ormat for pay-to-script-hash}, - howpublished={Bitcoin Improvement Proposal 13. Created October 18, 2011}, - url={https://github.com/bitcoin/bips/blob/master/bip-0013.mediawiki}, - urldate={2016-09-24} -} - -@misc{BIP-14, - author={Amir Taaki and Patrick Strateman}, - title={Protocol {V}ersion and {U}ser {A}gent}, - howpublished={Bitcoin Improvement Proposal 14. Created November 10, 2011}, - url={https://github.com/bitcoin/bips/blob/master/bip-0014.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-16, - author={Gavin Andresen}, - title={Pay to {S}cript {H}ash}, - howpublished={Bitcoin Improvement Proposal 16. Created January 3, 2012}, - url={https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-30, - author={Pieter Wuille}, - title={Duplicate transactions}, - howpublished={Bitcoin Improvement Proposal 30. Created February 22, 2012}, - url={https://github.com/bitcoin/bips/blob/master/bip-0030.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-31, - author={Mike Hearn}, - title={Pong message}, - howpublished={Bitcoin Improvement Proposal 31. Created April 11, 2012}, - url={https://github.com/bitcoin/bips/blob/master/bip-0031.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-32, - author={Pieter Wuille}, - title={Hierarchical {D}eterministic {W}allets}, - howpublished={Bitcoin Improvement Proposal 32. Created February 11, 2012. Last updated January 15, 2014}, - url={https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki}, - urldate={2016-09-24} -} - -@misc{BIP-34, - author={Gavin Andresen}, - title={Block v2, {H}eight in {C}oinbase}, - howpublished={Bitcoin Improvement Proposal 34. Created July 6, 2012}, - url={https://github.com/bitcoin/bips/blob/master/bip-0034.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-35, - author={Jeff Garzik}, - title={mempool message}, - howpublished={Bitcoin Improvement Proposal 35. Created August 16, 2012}, - url={https://github.com/bitcoin/bips/blob/master/bip-0035.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-37, - author={Mike Hearn and Matt Corallo}, - title={Connection Bloom filtering}, - howpublished={Bitcoin Improvement Proposal 37. Created October 24, 2012}, - url={https://github.com/bitcoin/bips/blob/master/bip-0037.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-61, - author={Gavin Andresen}, - title={Reject P2P message}, - howpublished={Bitcoin Improvement Proposal 61. Created June 18, 2014}, - url={https://github.com/bitcoin/bips/blob/master/bip-0061.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-62, - author={Pieter Wuille}, - title={Dealing with malleability}, - howpublished={Bitcoin Improvement Proposal 62. Withdrawn Nov\-ember 17, 2015}, - url={https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki}, - urldate={2016-09-05} -} - -@misc{BIP-65, - author={Peter Todd}, - title={\ScriptOP{CHECKLOCKTIMEVERIFY}}, - howpublished={Bitcoin Improvement Proposal 65. Created October 10, 2014}, - url={https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-66, - author={Pieter Wuille}, - title={Strict {DER} signatures}, - howpublished={Bitcoin Improvement Proposal 66. Created January 10, 2015}, - url={https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki}, - urldate={2016-10-02} -} - -@misc{BIP-68, - author={Mark Friedenbach and BtcDrak and Nicolas Dorier and kinoshitajona}, - title={Relative lock-time using con\-sensus-enforced sequence numbers}, - howpublished={Bitcoin Improvement Proposal 68. Last revised November 21, 2015}, - url={https://github.com/bitcoin/bips/blob/master/bip-0068.mediawiki}, - urldate={2016-09-02} -} - -@misc{DigiByte-PoW, - author={DigiByte Core Developers}, - title={DigiSpeed 4.0.0 source code, functions GetNextWorkRequiredV3/4 in src/main.cpp as of commit 178e134}, - url={https://github.com/digibyte/digibyte/blob/178e1348a67d9624db328062397fde0de03fe388/src/main.cpp#L1587}, - urldate={2017-01-20} -} - -@misc{GitHub-mpc, - author={Sean Bowe and Ariel Gabizon and Matthew Green}, - title={GitHub repository `\hairspace zcash/mpc'\hairspace: zk-SNARK parameter multi-party computation protocol}, - url={https://github.com/zcash/mpc}, - urldate={2017-01-06} -} - -@misc{ZcashIssue-2113, - author={Simon Liu}, - title={GitHub repository `\hairspace zcash/zcash'\hairspace: Issue 2113}, - url={https://github.com/zcash/zcash/issues/2113}, - urldate={2017-02-20} -} - -@book{IEEE2000, - author={IEEE Computer Society}, - publisher={IEEE}, - date={2000-08-29}, - title={IEEE {S}td 1363-2000: {S}tandard {S}pecifications for {P}ublic-{K}ey {C}ryptography}, - url={http://ieeexplore.ieee.org/servlet/opac?punumber=7168}, - urldate={2016-08-03}, - doi={10.1109/IEEESTD.2000.92292} -} - -@book{IEEE2004, - author={IEEE Computer Society}, - publisher={IEEE}, - date={2004-09-02}, - title={IEEE {S}td 1363a-2004: {S}tandard {S}pecifications for {P}ublic-{K}ey {C}ryptography -- -{A}mendment 1: {A}dditional {T}echniques}, - url={http://ieeexplore.ieee.org/servlet/opac?punumber=9276}, - urldate={2016-08-03}, - doi={10.1109/IEEESTD.2004.94612} -} - -@misc{libsnark-fork, - title={libsnark: {C}++ library for {zkSNARK} proofs (Zcash fork)}, - url={https://github.com/zcash/libsnark}, - urldate={2016-08-14} -} - -@misc{RFC-7539, - author={Yoav Nir and Adam Langley}, - title={Request for {C}omments 7539: Cha{C}ha20 and {P}oly1305 for {IETF} {P}rotocols}, - howpublished={Internet Research Task Force (IRTF)}, - date={2015-05}, - url={https://tools.ietf.org/html/rfc7539}, - urldate={2016-09-02}, - addendum={As modified by verified errata at \url{https://www.rfc-editor.org/errata_search.php?rfc=7539} -(visited on 2016-09-02).} -} - -@misc{BN2007, - author={Mihir Bellare and Chanathip Namprempre}, - title={Authenticated {E}ncryption: {R}elations among notions and analysis of the -generic composition paradigm}, - url={https://eprint.iacr.org/2000/025}, - urldate={2016-09-02}, - howpublished={Cryptology ePrint Archive: Report 2000/025. Last revised \mbox{July 14,} 2007.} -} - -@misc{BBDP2001, - author={Mihir Bellare and Alexandra Boldyreva and Anand Desai and David Pointcheval}, - title={Key-{P}rivacy in {P}ublic-{K}ey {E}ncryption}, - addendum={Full version.}, - month={September}, - year={2001}, - url={https://cseweb.ucsd.edu/~mihir/papers/anonenc.html}, - urldate={2016-08-14} -} - -@book{LG2004, - author={Eddie Lenihan and Carolyn Eve Green}, - title={Meeting the {O}ther {C}rowd: {T}he {F}airy {S}tories of {H}idden {I}reland}, - month={February}, - year={2004}, - publisher={TarcherPerigee}, - pages={109-110}, - isbn={1-58542-206-1} -} - -@misc{GGM2016, - author={Christina Garman\; and \;Matthew Green\; and \;Ian Miers}, - title={Accountable\, {P}rivacy\, for\, {D}ecentralized\, {A}nonymous\, {P}ayments}, - howpublished={Cryptology ePrint Archive: Report 2016/061. Last revised \mbox{January 24,} 2016}, - url={https://eprint.iacr.org/2016/061}, - urldate={2016-09-02} -} - -@misc{WG2016, - author={Zooko Wilcox and Jack Grigg}, - title={Why {E}quihash?}, - howpublished={Zcash blog}, - date={2016-04-15}, - url={https://z.cash/blog/why-equihash.html}, - urldate={2016-08-05} -} - -@misc{HW2016, - author={Taylor Hornby\; and \;Zooko Wilcox}, - title={Fixing\, {V}ulnerabilities\, in\, the\, {Z}cash\, {P}rotocol}, - howpublished={Zcash blog}, - date={2016-04-25}, - url={https://z.cash/blog/fixing-zcash-vulns.html}, - urldate={2016-06-22} -} - -@misc{EWD-831, - author={Edsger W. Dijkstra}, - title={Why\, numbering\, should\, start\, at\, zero}, - howpublished={\;Manuscript}, - date={1982-08-11}, - url={https://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html}, - urldate={2016-08-09} -} diff --git a/whitepaper/btch/protocol.aux b/whitepaper/btch/protocol.aux deleted file mode 100644 index c7e28de..0000000 --- a/whitepaper/btch/protocol.aux +++ /dev/null @@ -1,58 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\abx@aux@sortscheme{anyt} -\abx@aux@sortnamekeyscheme{global} -\@writefile{toc}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax } -\@writefile{lof}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax } -\@writefile{lot}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax } -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\relax \fontsize {14.4}{18}\selectfont Contents\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{1}{section*.1}} -\abx@aux@cite{RFC-2119} -\abx@aux@cite{Bitcoin-Protocol} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{3}{section.1}} -\abx@aux@backref{1}{RFC-2119}{0}{3}{3} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {1.1}High-level Overview\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{3}{subsection.1.1}} -\abx@aux@backref{2}{Bitcoin-Protocol}{0}{3}{3} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {1.2}Types Of Transactions\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{3}{subsection.1.2}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {2}Design of \textbf {HushList}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{4}{section.2}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {3}Reference Implementation\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{4}{section.3}} -\abx@aux@cite{dPOW} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {4}Account Funding\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{section.4}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {5}\textbf {HushList}\xspace Contacts\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{section.5}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {6}\textbf {HushList}\xspace Creation\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{section.6}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Private \textbf {HushLists}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{subsection.6.1}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Multi-Chain Private \textbf {HushLists}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{subsection.6.2}} -\abx@aux@backref{3}{dPOW}{0}{6}{6} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {6.3}Public \textbf {HushLists}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{6}{subsection.6.3}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {7}List Subscription\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{6}{section.7}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {8}Sending To A List\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.8}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {9}Receiving Messages\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.9}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {10}Costs\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.10}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {11}Examples\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.11}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {12}Metadata Analysis\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{8}{section.12}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {13}User Stories\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{8}{section.13}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {13.1}"Pen Name" user story - Amanda\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{8}{subsection.13.1}} -\abx@aux@cite{Komodo} -\abx@aux@cite{BarterDEX} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {13.2}"Security Researcher" user story - Gordon\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{subsection.13.2}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {13.3}"Whisteblower" user story - Martha\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{subsection.13.3}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {13.4}"Censored Journalist" user story - Billy\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{subsection.13.4}} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {14}Special Thanks\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{section.14}} -\abx@aux@backref{4}{Komodo}{0}{9}{9} -\abx@aux@backref{5}{BarterDEX}{0}{9}{9} -\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {15}References\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{section.15}} diff --git a/whitepaper/btch/protocol.bbl b/whitepaper/btch/protocol.bbl deleted file mode 100644 index 691de5a..0000000 --- a/whitepaper/btch/protocol.bbl +++ /dev/null @@ -1,127 +0,0 @@ -% $ biblatex auxiliary file $ -% $ biblatex bbl format version 2.6 $ -% Do not modify the above lines! -% -% This is an auxiliary file used by the 'biblatex' package. -% This file may safely be deleted. It will be recreated by -% biber as required. -% -\begingroup -\makeatletter -\@ifundefined{ver@biblatex.sty} - {\@latex@error - {Missing 'biblatex' package} - {The bibliography requires the 'biblatex' package.} - \aftergroup\endinput} - {} -\endgroup - - -\refsection{0} - \sortlist[entry]{anyt/global} - \entry{BarterDEX}{misc}{} - \name{author}{1}{}{% - {{hash=2d64cb2091a8d6f2d518febd802ef688}{% - family={jl777}, - family_i={j\bibinitperiod}}}% - } - \strng{namehash}{2d64cb2091a8d6f2d518febd802ef688} - \strng{fullhash}{2d64cb2091a8d6f2d518febd802ef688} - \field{labelalpha}{BarterDEX} - \field{sortinit}{B} - \field{sortinithash}{4ecbea03efd0532989d3836d1a048c32} - \field{labelnamesource}{author} - \field{labeltitlesource}{title} - \field{title}{barterDEX - Atomic Swap Decentralized Exchange of Native Coins} - \field{urlday}{28} - \field{urlmonth}{12} - \field{urlyear}{2017} - \verb{url} - \verb https://github.com/SuperNETorg/komodo/wiki/barterDEX-Whitepaper-v2 - \endverb - \endentry - \entry{Bitcoin-Protocol}{misc}{} - \field{labelalpha}{Bitcoin-Protocol} - \field{sortinit}{B} - \field{sortinithash}{4ecbea03efd0532989d3836d1a048c32} - \field{labeltitlesource}{title} - \field{title}{Protocol documentation --- {B}itcoin {W}iki} - \field{urlday}{02} - \field{urlmonth}{10} - \field{urlyear}{2016} - \verb{url} - \verb https://en.bitcoin.it/wiki/Protocol_documentation - \endverb - \endentry - \entry{dPOW}{misc}{} - \name{author}{1}{}{% - {{hash=2d64cb2091a8d6f2d518febd802ef688}{% - family={jl777}, - family_i={j\bibinitperiod}}}% - } - \strng{namehash}{2d64cb2091a8d6f2d518febd802ef688} - \strng{fullhash}{2d64cb2091a8d6f2d518febd802ef688} - \field{labelalpha}{dPOW} - \field{sortinit}{d} - \field{sortinithash}{78f7c4753a2004675f316a80bdb31742} - \field{labelnamesource}{author} - \field{labeltitlesource}{title} - \field{title}{Delayed Proof of Work (dPoW)} - \field{urlday}{27} - \field{urlmonth}{12} - \field{urlyear}{2017} - \verb{url} - \verb https://supernet.org/en/technology/whitepapers/delayed-proof-of-work-dpow - \endverb - \endentry - \entry{Komodo}{misc}{} - \name{author}{1}{}{% - {{hash=01918554ac47b06522c7acba68e88c2e}{% - family={superNET}, - family_i={s\bibinitperiod}}}% - } - \strng{namehash}{01918554ac47b06522c7acba68e88c2e} - \strng{fullhash}{01918554ac47b06522c7acba68e88c2e} - \field{labelalpha}{Komodo} - \field{sortinit}{K} - \field{sortinithash}{a7d5b3aec5a0890aae7baf85a209abfc} - \field{labelnamesource}{author} - \field{labeltitlesource}{title} - \field{title}{Komodo Platform} - \field{urlday}{28} - \field{urlmonth}{12} - \field{urlyear}{2017} - \verb{url} - \verb https://komodoplatform.com - \endverb - \endentry - \entry{RFC-2119}{misc}{} - \name{author}{1}{}{% - {{hash=b366d831fea9715823f953b9b26c2527}{% - family={Bradner}, - family_i={B\bibinitperiod}, - given={Scott}, - given_i={S\bibinitperiod}}}% - } - \strng{namehash}{b366d831fea9715823f953b9b26c2527} - \strng{fullhash}{b366d831fea9715823f953b9b26c2527} - \field{labelalpha}{RFC-2119} - \field{sortinit}{R} - \field{sortinithash}{c7387613477035a752d935acfc3e3ea2} - \field{labelnamesource}{author} - \field{labeltitlesource}{title} - \field{howpublished}{Internet Engineering Task Force (IETF)} - \field{month}{03} - \field{title}{Request for {C}omments 7693: {K}ey words for use in {RFC}s to {I}ndicate {R}equirement {L}evels} - \field{urlday}{14} - \field{urlmonth}{09} - \field{urlyear}{2016} - \field{year}{1997} - \verb{url} - \verb https://tools.ietf.org/html/rfc2119 - \endverb - \endentry - \endsortlist -\endrefsection -\endinput - diff --git a/whitepaper/btch/protocol.bcf b/whitepaper/btch/protocol.bcf deleted file mode 100644 index f95fb15..0000000 --- a/whitepaper/btch/protocol.bcf +++ /dev/null @@ -1,2087 +0,0 @@ - - - - - - output_encoding - ascii - - - input_encoding - ascii - - - debug - 0 - - - mincrossrefs - 2 - - - sortcase - 1 - - - sortgiveninits - 0 - - - sortupper - 1 - - - - - - - alphaothers - + - - - labelalpha - 1 - - - labelnamespec - shortauthor - author - shorteditor - editor - translator - - - labeltitle - 0 - - - labeltitlespec - shorttitle - title - - - labeltitleyear - 0 - - - labeldate - 0 - - - labeldatespec - date - eventdate - origdate - urldate - nodate - - - maxalphanames - 3 - - - maxbibnames - 99 - - - maxcitenames - 3 - - - maxitems - 3 - - - minalphanames - 1 - - - minbibnames - 1 - - - mincitenames - 1 - - - minitems - 1 - - - singletitle - 0 - - - sortalphaothers - + - - - sortlocale - english - - - sortscheme - anyt - - - uniquelist - 0 - - - uniquename - 0 - - - useprefix - 0 - - - useafterword - 1 - - - useannotator - 1 - - - useauthor - 1 - - - usebookauthor - 1 - - - usecommentator - 1 - - - useeditor - 1 - - - useeditora - 1 - - - useeditorb - 1 - - - useeditorc - 1 - - - useforeword - 1 - - - useholder - 1 - - - useintroduction - 1 - - - usenamea - 1 - - - usenameb - 1 - - - usenamec - 1 - - - usetranslator - 0 - - - useshortauthor - 1 - - - useshorteditor - 1 - - - - - datamodel - labelalphatemplate - inheritance - sortingnamekey - sortscheme - labelnamespec - labeltitlespec - labeldatespec - controlversion - alphaothers - sortalphaothers - presort - backend - texencoding - bibencoding - sorting - sortlos - sortlocale - language - babel - autolang - backrefsetstyle - block - date - datelabel - urldate - eventdate - origdate - alldates - autocite - notetype - refsection - refsegment - citereset - backrefstyle - arxiv - useafterword - useannotator - useauthor - usebookauthor - usecommentator - useeditor - useeditora - useeditorb - useeditorc - useforeword - useholder - useintroduction - usenamea - usenameb - usenamec - usetranslator - useshortauthor - useshorteditor - debug - loadfiles - safeinputenc - sortcase - sortupper - terseinits - firstinits - sortfirstinits - giveninits - sortgiveninits - abbreviate - dateabbrev - clearlang - indexing - sortcites - hyperref - backref - pagetracker - citecounter - citetracker - ibidtracker - idemtracker - opcittracker - loccittracker - parentracker - datezeros - autopunct - punctfont - labelnumber - labelalpha - labeltitle - labeltitleyear - labeldate - labelyear - uniquelist - uniquename - singletitle - defernumbers - bibwarn - useprefix - defernums - isbn - url - doi - eprint - related - mincrossrefs - maxnames - minnames - maxbibnames - minbibnames - maxcitenames - mincitenames - maxitems - minitems - maxalphanames - minalphanames - maxparens - - - alphaothers - sortalphaothers - presort - useafterword - useannotator - useauthor - usebookauthor - usecommentator - useeditor - useeditora - useeditorb - useeditorc - useforeword - useholder - useintroduction - usenamea - usenameb - usenamec - usetranslator - useshortauthor - useshorteditor - indexing - labelnumber - labelalpha - labeltitle - labeltitleyear - labeldate - labelyear - uniquelist - uniquename - singletitle - useprefix - skipbib - skiplos - skipbiblist - skiplab - dataonly - labelalphatemplate - sortexclusion - labelnamespec - labeltitlespec - labeldatespec - maxnames - minnames - maxbibnames - minbibnames - maxcitenames - mincitenames - maxitems - minitems - maxalphanames - minalphanames - - - useafterword - useannotator - useauthor - usebookauthor - usecommentator - useeditor - useeditora - useeditorb - useeditorc - useforeword - useholder - useintroduction - usenamea - usenameb - usenamec - usetranslator - useshortauthor - useshorteditor - indexing - uniquelist - uniquename - useprefix - skipbib - skiplos - skipbiblist - skiplab - dataonly - sortnamekeyscheme - presort - maxnames - minnames - maxbibnames - minbibnames - maxcitenames - mincitenames - maxitems - minitems - maxalphanames - minalphanames - - - useprefix - sortnamekeyscheme - - - useprefix - sortnamekeyscheme - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - citekey - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - prefix - - - family - - - given - - - suffix - - - prefix - - - - - mm - - presort - - - labelalpha - - - sortkey - - - sortname - author - editor - translator - sorttitle - title - - - sortyear - year - - - sorttitle - title - - - volume - 0000 - - - - - - sf,sm,sn,pf,pm,pn,pp - prefix,family,suffix,given - boolean,integer,string,xml - - - article - artwork - audio - bibnote - book - bookinbook - booklet - collection - commentary - customa - customb - customc - customd - custome - customf - inbook - incollection - inproceedings - inreference - image - jurisdiction - legal - legislation - letter - manual - misc - movie - music - mvcollection - mvreference - mvbook - online - patent - performance - periodical - proceedings - reference - report - review - set - software - standard - suppbook - suppcollection - thesis - unpublished - video - xdata - - - month - year - day - endday - endmonth - eventday - eventendday - eventendmonth - eventmonth - eventyear - origday - origendday - origendmonth - origmonth - origyear - urlday - urlendday - urlendmonth - urlmonth - urlyear - abstract - addendum - annotation - booksubtitle - booktitle - booktitleaddon - chapter - edition - eid - entrysubtype - eprintclass - eprinttype - eventtitle - eventtitleaddon - gender - howpublished - indexsorttitle - indextitle - isan - isbn - ismn - isrn - issn - issue - issuesubtitle - issuetitle - iswc - journalsubtitle - journaltitle - label - langid - langidopts - library - mainsubtitle - maintitle - maintitleaddon - nameaddon - note - number - origtitle - pagetotal - part - relatedstring - relatedtype - reprinttitle - series - shorthandintro - subtitle - title - titleaddon - usera - userb - userc - userd - usere - userf - venue - version - volume - volumes - shorthand - shortjournal - shortseries - shorttitle - urlendyear - endyear - eventendyear - origendyear - sorttitle - sortshorthand - sortyear - sortkey - presort - institution - lista - listb - listc - listd - liste - listf - location - organization - origlocation - origpublisher - publisher - afterword - annotator - author - bookauthor - commentator - editor - editora - editorb - editorc - foreword - holder - introduction - namea - nameb - namec - translator - shortauthor - shorteditor - sortname - authortype - editoratype - editorbtype - editorctype - editortype - bookpagination - nameatype - namebtype - namectype - origlanguage - pagination - pubstate - type - language - crossref - xref - date - eventdate - origdate - urldate - doi - eprint - file - verba - verbb - verbc - url - xdata - ids - entryset - related - keywords - options - relatedoptions - pages - execute - - - abstract - annotation - authortype - bookpagination - crossref - entryset - entrysubtype - execute - file - gender - ids - indextitle - indexsorttitle - isan - ismn - iswc - keywords - label - langid - langidopts - library - lista - listb - listc - listd - liste - listf - nameaddon - options - origday - origendday - origendmonth - origendyear - origmonth - origyear - origlocation - origpublisher - origtitle - pagination - presort - related - relatedoptions - relatedstring - relatedtype - shortauthor - shorteditor - shorthand - shorthandintro - shortjournal - shortseries - shorttitle - sortkey - sortname - sortshorthand - sorttitle - sortyear - usera - userb - userc - userd - usere - userf - verba - verbb - verbc - xdata - xref - - - set - entryset - crossref - - - article - author - journaltitle - title - day - endday - endmonth - endyear - month - year - addendum - annotator - commentator - doi - editor - editora - editorb - editorc - editoratype - editorbtype - editorctype - eid - eprint - eprintclass - eprinttype - issn - issue - issuetitle - issuesubtitle - journalsubtitle - language - note - number - origlanguage - pages - pubstate - series - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - version - volume - - - bibnote - note - - - book - author - title - day - endday - endmonth - endyear - month - year - addendum - afterword - annotator - chapter - commentator - doi - edition - editor - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - foreword - introduction - isbn - language - location - maintitle - maintitleaddon - mainsubtitle - note - number - origlanguage - pages - pagetotal - part - publisher - pubstate - series - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - volumes - - - mvbook - author - title - day - endday - endmonth - endyear - month - year - addendum - afterword - annotator - commentator - doi - edition - editor - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - foreword - introduction - isbn - language - location - note - number - origlanguage - pagetotal - publisher - pubstate - series - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - volumes - - - inbook - bookinbook - suppbook - author - title - booktitle - day - endday - endmonth - endyear - month - year - addendum - afterword - annotator - bookauthor - booksubtitle - booktitleaddon - chapter - commentator - doi - edition - editor - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - foreword - introduction - isbn - language - location - mainsubtitle - maintitle - maintitleaddon - note - number - origlanguage - part - publisher - pages - pubstate - series - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - volumes - - - booklet - author - editor - title - day - endday - endmonth - endyear - month - year - addendum - chapter - doi - eprint - eprintclass - eprinttype - howpublished - language - location - note - pages - pagetotal - pubstate - subtitle - titleaddon - type - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - - - collection - reference - editor - title - day - endday - endmonth - endyear - month - year - addendum - afterword - annotator - chapter - commentator - doi - edition - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - foreword - introduction - isbn - language - location - mainsubtitle - maintitle - maintitleaddon - note - number - origlanguage - pages - pagetotal - part - publisher - pubstate - series - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - volumes - - - mvcollection - mvreference - author - title - day - endday - endmonth - endyear - month - year - addendum - afterword - annotator - commentator - doi - edition - editor - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - foreword - introduction - isbn - language - location - note - number - origlanguage - publisher - pubstate - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - volumes - - - incollection - suppcollection - inreference - author - editor - title - booktitle - day - endday - endmonth - endyear - month - year - addendum - afterword - annotator - booksubtitle - booktitleaddon - chapter - commentator - doi - edition - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - foreword - introduction - isbn - language - location - mainsubtitle - maintitle - maintitleaddon - note - number - origlanguage - pages - part - publisher - pubstate - series - subtitle - titleaddon - translator - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - volumes - - - manual - title - day - endday - endmonth - endyear - month - year - addendum - author - chapter - doi - edition - editor - eprint - eprintclass - eprinttype - isbn - language - location - note - number - organization - pages - pagetotal - publisher - pubstate - series - subtitle - titleaddon - type - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - version - - - misc - title - day - endday - endmonth - endyear - day - endday - endmonth - endyear - month - year - addendum - author - doi - editor - eprint - eprintclass - eprinttype - howpublished - language - location - note - organization - pubstate - subtitle - titleaddon - type - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - version - - - online - title - url - addendum - author - editor - language - month - note - organization - pubstate - subtitle - titleaddon - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - version - year - - - patent - author - title - number - day - endday - endmonth - endyear - month - year - addendum - doi - eprint - eprintclass - eprinttype - holder - location - note - pubstate - subtitle - titleaddon - type - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - version - - - periodical - editor - title - day - endday - endmonth - endyear - month - year - addendum - doi - editora - editorb - editorc - editoratype - editorbtype - editorctype - eprint - eprintclass - eprinttype - issn - issue - issuesubtitle - issuetitle - language - note - number - pubstate - series - subtitle - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - volume - - - mvproceedings - editor - title - day - endday - endmonth - endyear - month - year - addendum - doi - eprint - eprintclass - eprinttype - eventday - eventendday - eventendmonth - eventendyear - eventmonth - eventyear - eventtitle - eventtitleaddon - isbn - language - location - note - number - organization - pagetotal - publisher - pubstate - series - subtitle - titleaddon - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - venue - volumes - - - proceedings - editor - title - day - endday - endmonth - endyear - month - year - addendum - chapter - doi - eprint - eprintclass - eprinttype - eventday - eventendday - eventendmonth - eventendyear - eventmonth - eventyear - eventtitle - eventtitleaddon - isbn - language - location - mainsubtitle - maintitle - maintitleaddon - note - number - organization - pages - pagetotal - part - publisher - pubstate - series - subtitle - titleaddon - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - venue - volume - volumes - - - inproceedings - author - editor - title - booktitle - day - endday - endmonth - endyear - month - year - addendum - booksubtitle - booktitleaddon - chapter - doi - eprint - eprintclass - eprinttype - eventday - eventendday - eventendmonth - eventendyear - eventmonth - eventyear - eventtitle - eventtitleaddon - isbn - language - location - mainsubtitle - maintitle - maintitleaddon - note - number - organization - pages - part - publisher - pubstate - series - subtitle - titleaddon - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - venue - volume - volumes - - - report - author - title - type - institution - day - endday - endmonth - endyear - month - year - addendum - chapter - doi - eprint - eprintclass - eprinttype - isrn - language - location - note - number - pages - pagetotal - pubstate - subtitle - titleaddon - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - version - - - thesis - author - title - type - institution - day - endday - endmonth - endyear - month - year - addendum - chapter - doi - eprint - eprintclass - eprinttype - language - location - note - pages - pagetotal - pubstate - subtitle - titleaddon - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - - - unpublished - author - title - day - endday - endmonth - endyear - month - year - addendum - howpublished - language - location - note - pubstate - subtitle - titleaddon - url - urlday - urlendday - urlendmonth - urlendyear - urlmonth - urlyear - - - article - book - inbook - bookinbook - suppbook - booklet - collection - incollection - suppcollection - manual - misc - mvbook - mvcollection - online - patent - periodical - suppperiodical - proceedings - inproceedings - reference - inreference - report - set - thesis - unpublished - - - date - year - - - - - set - - entryset - crossref - - - - article - - author - journaltitle - title - - - - book - mvbook - mvcollection - mvreference - - author - title - - - - inbook - bookinbook - suppbook - - author - title - booktitle - - - - booklet - - - author - editor - - title - - - - collection - reference - - editor - title - - - - incollection - suppcollection - inreference - - author - editor - title - booktitle - - - - manual - - title - - - - misc - - title - - - - online - - title - url - - - - patent - - author - title - number - - - - periodical - - editor - title - - - - proceedings - mvproceedings - - editor - title - - - - inproceedings - - author - title - booktitle - - - - report - - author - title - type - institution - - - - thesis - - author - title - type - institution - - - - unpublished - - author - title - - - - - isbn - - - issn - - - ismn - - - date - eventdate - origdate - urldate - - - gender - - - - - - - hush.bib - - - RFC-2119 - Bitcoin-Protocol - dPOW - Komodo - BarterDEX - - - - - presort - - - labelalpha - - - sortkey - - - sortname - author - editor - translator - sorttitle - title - - - sortyear - year - - - sorttitle - title - - - volume - 0000 - - - - diff --git a/whitepaper/btch/protocol.blg b/whitepaper/btch/protocol.blg deleted file mode 100644 index 055e167..0000000 --- a/whitepaper/btch/protocol.blg +++ /dev/null @@ -1,15 +0,0 @@ -[0] Config.pm:340> INFO - This is Biber 2.4 -[0] Config.pm:343> INFO - Logfile is 'protocol.blg' -[267] biber:287> INFO - === Sun Jan 7, 2018, 10:55:26 -[803] Biber.pm:348> INFO - Reading 'protocol.bcf' -[1640] Biber.pm:742> INFO - Found 5 citekeys in bib section 0 -[1663] Biber.pm:3151> INFO - Processing section 0 -[1867] Biber.pm:3308> INFO - Looking for bibtex format file 'hush.bib' for section 0 -[2420] bibtex.pm:1113> INFO - Decoding LaTeX character macros into UTF-8 -[2913] bibtex.pm:974> INFO - Found BibTeX data source 'hush.bib' -[3634] UCollate.pm:65> INFO - Overriding locale 'en-US' defaults 'variable = shifted' with 'variable = non-ignorable' -[3651] UCollate.pm:65> INFO - Overriding locale 'en-US' defaults 'normalization = NFD' with 'normalization = prenormalized' -[3651] Biber.pm:3028> INFO - Sorting list 'anyt/global' of type 'entry' with scheme 'anyt' and locale 'en-US' -[3651] Biber.pm:3032> INFO - No sort tailoring available for locale 'en-US' -[3674] bbl.pm:519> INFO - Writing 'protocol.bbl' with encoding 'ascii' -[3891] bbl.pm:615> INFO - Output to protocol.bbl diff --git a/whitepaper/btch/protocol.log b/whitepaper/btch/protocol.log deleted file mode 100644 index 318a89f..0000000 --- a/whitepaper/btch/protocol.log +++ /dev/null @@ -1,1229 +0,0 @@ -This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) (preloaded format=pdflatex 2017.12.22) 7 JAN 2018 10:55 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**protocol.tex -(./protocol.tex -LaTeX2e <2016/02/01> -Babel <3.9q> and hyphenation patterns for 3 language(s) loaded. -(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls -Document Class: article 2014/09/29 v1.4h Standard LaTeX document class -(/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo -File: size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option) -) -\c@part=\count79 -\c@section=\count80 -\c@subsection=\count81 -\c@subsubsection=\count82 -\c@paragraph=\count83 -\c@subparagraph=\count84 -\c@figure=\count85 -\c@table=\count86 -\abovecaptionskip=\skip41 -\belowcaptionskip=\skip42 -\bibindent=\dimen102 -) -(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty -Package: amsmath 2016/03/03 v2.15a AMS math features -\@mathmargin=\skip43 - -For additional information on amsmath, use the `?' option. -(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty -Package: amstext 2000/06/29 v2.01 AMS text - -(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty -File: amsgen.sty 1999/11/30 v2.0 generic functions -\@emptytoks=\toks14 -\ex@=\dimen103 -)) -(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty -Package: amsbsy 1999/11/29 v1.2d Bold Symbols -\pmbraise@=\dimen104 -) -(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty -Package: amsopn 1999/12/14 v2.01 operator names -) -\inf@bad=\count87 -LaTeX Info: Redefining \frac on input line 199. -\uproot@=\count88 -\leftroot@=\count89 -LaTeX Info: Redefining \overline on input line 297. -\classnum@=\count90 -\DOTSCASE@=\count91 -LaTeX Info: Redefining \ldots on input line 394. -LaTeX Info: Redefining \dots on input line 397. -LaTeX Info: Redefining \cdots on input line 518. -\Mathstrutbox@=\box26 -\strutbox@=\box27 -\big@size=\dimen105 -LaTeX Font Info: Redeclaring font encoding OML on input line 630. -LaTeX Font Info: Redeclaring font encoding OMS on input line 631. -\macc@depth=\count92 -\c@MaxMatrixCols=\count93 -\dotsspace@=\muskip10 -\c@parentequation=\count94 -\dspbrk@lvl=\count95 -\tag@help=\toks15 -\row@=\count96 -\column@=\count97 -\maxfields@=\count98 -\andhelp@=\toks16 -\eqnshift@=\dimen106 -\alignsep@=\dimen107 -\tagshift@=\dimen108 -\tagwidth@=\dimen109 -\totwidth@=\dimen110 -\lineht@=\dimen111 -\@envbody=\toks17 -\multlinegap=\skip44 -\multlinetaggap=\skip45 -\mathdisplay@stack=\toks18 -LaTeX Info: Redefining \[ on input line 2735. -LaTeX Info: Redefining \] on input line 2736. -) -(/usr/share/texlive/texmf-dist/tex/latex/bytefield/bytefield.sty -Package: bytefield 2015/10/28 v2.3 Network protocol diagrams - -(/usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty -Package: calc 2014/10/28 v4.3 Infix arithmetic (KKT,FJ) -\calc@Acount=\count99 -\calc@Bcount=\count100 -\calc@Adimen=\dimen112 -\calc@Bdimen=\dimen113 -\calc@Askip=\skip46 -\calc@Bskip=\skip47 -LaTeX Info: Redefining \setlength on input line 80. -LaTeX Info: Redefining \addtolength on input line 81. -\calc@Ccount=\count101 -\calc@Cskip=\skip48 -) -(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty -Package: keyval 2014/10/28 v1.15 key=value parser (DPC) -\KV@toks@=\toks19 -) -\bytefield@height=\skip49 -\bytefield@height@increment=\skip50 -\entire@bytefield@picture=\box28 -\bf@bitwidth=\skip51 -\bf@bitheight=\skip52 -\units@wide=\skip53 -\units@tall=\skip54 -\units@high=\skip55 -\header@xpos=\skip56 -\c@header@val=\count102 -\c@max@header@val=\count103 -\curly@box=\box29 -\wordlabelr@start=\skip57 -\wordlabelr@end=\skip58 -\wordlabell@start=\skip59 -\wordlabell@end=\skip60 -\total@lbox@width=\skip61 -\label@box@width=\skip62 -\label@box@height=\skip63 -\word@label@box=\box30 -) -(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty -Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) - -(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty -Package: graphics 2016/01/03 v1.0q Standard LaTeX Graphics (DPC,SPQR) - -(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty -Package: trig 2016/01/03 v1.10 sin cos tan (DPC) -) -(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg -File: graphics.cfg 2010/04/23 v1.9 graphics configuration of TeX Live -) -Package graphics Info: Driver file: pdftex.def on input line 95. - -(/usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def -File: pdftex.def 2011/05/27 v0.06d Graphics/color for pdfTeX - -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty -Package: infwarerr 2010/04/08 v1.3 Providing info/warning/error messages (HO) -) -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty -Package: ltxcmds 2011/11/09 v1.22 LaTeX kernel commands for general use (HO) -) -\Gread@gobject=\count104 -)) -\Gin@req@height=\dimen114 -\Gin@req@width=\dimen115 -) -(/usr/share/texlive/texmf-dist/tex/latex/newtx/newtxmath.sty -Package: newtxmath 2016/01/31 v1.465 - -`newtxmath' v1.465, 2016/01/31 Math macros based on txfonts (msharpe) -(/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty -Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional -) -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty -Package: ifluatex 2010/03/01 v1.3 Provides the ifluatex switch (HO) -Package ifluatex Info: LuaTeX not detected. -) -(/usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty -Package: xkeyval 2014/12/03 v2.7a package option processing (HA) - -(/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkeyval.tex -(/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkvutils.tex -\XKV@toks=\toks20 -\XKV@tempa@toks=\toks21 -) -\XKV@depth=\count105 -File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA) -)) -(/usr/share/texlive/texmf-dist/tex/generic/kastrup/binhex.tex) -\tx@Isdigit=\count106 -LaTeX Font Info: Redeclaring symbol font `operators' on input line 137. -LaTeX Font Info: Overwriting symbol font `operators' in version `normal' -(Font) OT1/cmr/m/n --> OT1/cmr/m/n on input line 137. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/cmr/bx/n --> OT1/cmr/m/n on input line 137. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/cmr/m/n --> OT1/cmr/b/n on input line 138. -LaTeX Font Info: Redeclaring math alphabet \mathsf on input line 144. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' -(Font) OT1/cmss/m/n --> OT1/cmss/m/n on input line 144. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/cmss/bx/n --> OT1/cmss/m/n on input line 144. -LaTeX Font Info: Redeclaring math alphabet \mathit on input line 145. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' -(Font) OT1/cmr/m/it --> OT1/cmr/m/it on input line 145. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' -(Font) OT1/cmr/bx/it --> OT1/cmr/m/it on input line 145. -LaTeX Font Info: Redeclaring math alphabet \mathtt on input line 146. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' -(Font) OT1/cmtt/m/n --> OT1/cmtt/m/n on input line 146. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/cmtt/m/n --> OT1/cmtt/m/n on input line 146. -LaTeX Font Info: Redeclaring math alphabet \mathbf on input line 148. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' -(Font) OT1/cmr/bx/n --> OT1/cmr/b/n on input line 148. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' -(Font) OT1/cmr/bx/n --> OT1/cmr/b/n on input line 148. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' -(Font) OT1/cmr/m/it --> OT1/cmr/b/it on input line 149. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/cmss/m/n --> OT1/cmss/b/n on input line 150. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/cmtt/m/n --> OT1/cmtt/b/n on input line 151. -LaTeX Font Info: Redeclaring symbol font `letters' on input line 197. -LaTeX Font Info: Overwriting symbol font `letters' in version `normal' -(Font) OML/cmm/m/it --> OML/ntxmi/m/it on input line 197. -LaTeX Font Info: Overwriting symbol font `letters' in version `bold' -(Font) OML/cmm/b/it --> OML/ntxmi/m/it on input line 197. -LaTeX Font Info: Overwriting symbol font `letters' in version `bold' -(Font) OML/ntxmi/m/it --> OML/ntxmi/b/it on input line 198. -\symlettersA=\mathgroup4 -LaTeX Font Info: Overwriting symbol font `lettersA' in version `bold' -(Font) U/ntxmia/m/it --> U/ntxmia/b/it on input line 213. -LaTeX Font Info: Redeclaring symbol font `symbols' on input line 221. -LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' -(Font) OMS/cmsy/m/n --> OMS/ntxsy/m/n on input line 221. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/cmsy/b/n --> OMS/ntxsy/m/n on input line 221. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/ntxsy/m/n --> OMS/ntxsy/b/n on input line 222. -\symAMSm=\mathgroup5 -LaTeX Font Info: Overwriting symbol font `AMSm' in version `bold' -(Font) U/ntxsym/m/n --> U/ntxsym/b/n on input line 242. -\symsymbolsC=\mathgroup6 -LaTeX Font Info: Overwriting symbol font `symbolsC' in version `bold' -(Font) U/ntxsyc/m/n --> U/ntxsyc/b/n on input line 263. -LaTeX Font Info: Redeclaring symbol font `largesymbols' on input line 276. -LaTeX Font Info: Encoding `OMX' has changed to `LMX' for symbol font -(Font) `largesymbols' in the math version `normal' on input line 2 -76. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' -(Font) OMX/cmex/m/n --> LMX/ntxexx/m/n on input line 276. -LaTeX Font Info: Encoding `OMX' has changed to `LMX' for symbol font -(Font) `largesymbols' in the math version `bold' on input line 276 -. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) OMX/cmex/m/n --> LMX/ntxexx/m/n on input line 276. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) LMX/ntxexx/m/n --> LMX/ntxexx/b/n on input line 277. -\symlargesymbolsTXA=\mathgroup7 -LaTeX Font Info: Overwriting symbol font `largesymbolsTXA' in version `bold' - -(Font) U/ntxexa/m/n --> U/ntxexa/b/n on input line 291. -LaTeX Info: Redefining \not on input line 1749. -) -(/usr/share/texlive/texmf-dist/tex/latex/mathtools/mathtools.sty -Package: mathtools 2015/11/12 v1.18 mathematical typesetting tools - -(/usr/share/texlive/texmf-dist/tex/latex/mathtools/mhsetup.sty -Package: mhsetup 2010/01/21 v1.2a programming setup (MH) -) -LaTeX Info: Thecontrolsequence`\('isalreadyrobust on input line 129. -LaTeX Info: Thecontrolsequence`\)'isalreadyrobust on input line 129. -LaTeX Info: Thecontrolsequence`\['isalreadyrobust on input line 129. -LaTeX Info: Thecontrolsequence`\]'isalreadyrobust on input line 129. -\g_MT_multlinerow_int=\count107 -\l_MT_multwidth_dim=\dimen116 -\origjot=\skip64 -\l_MT_shortvdotswithinadjustabove_dim=\dimen117 -\l_MT_shortvdotswithinadjustbelow_dim=\dimen118 -\l_MT_above_intertext_sep=\dimen119 -\l_MT_below_intertext_sep=\dimen120 -\l_MT_above_shortintertext_sep=\dimen121 -\l_MT_below_shortintertext_sep=\dimen122 -) -(/usr/share/texlive/texmf-dist/tex/latex/tools/xspace.sty -Package: xspace 2014/10/28 v1.13 Space after command names (DPC,MH) -) -(/usr/share/texlive/texmf-dist/tex/latex/url/url.sty -\Urlmuskip=\muskip11 -Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. -) -(/usr/share/texlive/texmf-dist/tex/latex/changepage/changepage.sty -Package: changepage 2009/10/20 v1.0c check page and change page layout -\c@cp@cntr=\count108 -\cp@tempcnt=\count109 -) -(/usr/share/texlive/texmf-dist/tex/latex/enumitem/enumitem.sty -Package: enumitem 2011/09/28 v3.5.2 Customized lists -\labelindent=\skip65 -\enit@outerparindent=\dimen123 -\enit@toks=\toks22 -\enit@inbox=\box31 -\enitdp@description=\count110 -) -(/usr/share/texlive/texmf-dist/tex/latex/tools/tabularx.sty -Package: tabularx 2014/10/28 v2.10 `tabularx' package (DPC) - -(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty -Package: array 2014/10/28 v2.4c Tabular extension package (FMi) -\col@sep=\dimen124 -\extrarowheight=\dimen125 -\NC@list=\toks23 -\extratabsurround=\skip66 -\backup@length=\skip67 -) -\TX@col@width=\dimen126 -\TX@old@table=\dimen127 -\TX@old@col=\dimen128 -\TX@target=\dimen129 -\TX@delta=\dimen130 -\TX@cols=\count111 -\TX@ftn=\toks24 -) -(/usr/share/texlive/texmf-dist/tex/latex/tools/hhline.sty -Package: hhline 2014/10/28 v2.03 Table rule package (DPC) -) -(/usr/share/texlive/texmf-dist/tex/latex/stackengine/stackengine.sty -Package: stackengine 2014/01/06 v3.24\ Stacking text and objects in convenient -ways - -(/usr/share/texlive/texmf-dist/tex/latex/etoolbox/etoolbox.sty -Package: etoolbox 2015/08/02 v2.2a e-TeX tools for LaTeX (JAW) -\etb@tempcnta=\count112 -) -\c@@stackindex=\count113 -\@boxshift=\skip68 -\stack@tmplength=\skip69 -\temp@stkl=\skip70 -\@stackedboxwidth=\skip71 -\@addedbox=\box32 -\@anchorbox=\box33 -\stackedbox=\box34 -\@centerbox=\box35 -\c@ROWcellindex@=\count114 -) -(/usr/share/texlive/texmf-dist/tex/latex/comment/comment.sty -\CommentStream=\write3 - -Excluding comment 'comment') -(/usr/share/texlive/texmf-dist/tex/latex/needspace/needspace.sty -Package: needspace 2010/09/12 v1.3d reserve vertical space -) -(/usr/share/texlive/texmf-dist/tex/latex/titlesec/titlesec.sty -Package: titlesec 2016/03/15 v2.10.1 Sectioning titles -\ttl@box=\box36 -\beforetitleunit=\skip72 -\aftertitleunit=\skip73 -\ttl@plus=\dimen131 -\ttl@minus=\dimen132 -\ttl@toksa=\toks25 -\titlewidth=\dimen133 -\titlewidthlast=\dimen134 -\titlewidthfirst=\dimen135 -) -(/usr/share/texlive/texmf-dist/tex/latex/footmisc/footmisc.sty -Package: footmisc 2011/06/06 v5.5b a miscellany of footnote facilities -\FN@temptoken=\toks26 -\footnotemargin=\dimen136 -\c@pp@next@reset=\count115 -Package footmisc Info: Declaring symbol style bringhurst on input line 855. -Package footmisc Info: Declaring symbol style chicago on input line 863. -Package footmisc Info: Declaring symbol style wiley on input line 872. -Package footmisc Info: Declaring symbol style lamport-robust on input line 883. - -Package footmisc Info: Declaring symbol style lamport* on input line 903. -Package footmisc Info: Declaring symbol style lamport*-robust on input line 924 -. -) -(/usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.sty -(/usr/share/texlive/texmf-dist/tex/generic/xstring/xstring.tex -\@xs@message=\write4 -\integerpart=\count116 -\decimalpart=\count117 -) -Package: xstring 2013/10/13 v1.7c String manipulations (C Tellechea) -) -(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty -Package: hyperref 2012/11/06 v6.83m Hypertext links for LaTeX - -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty -Package: hobsub-hyperref 2012/05/28 v1.13 Bundle oberdiek, subset hyperref (HO) - - -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty -Package: hobsub-generic 2012/05/28 v1.13 Bundle oberdiek, subset generic (HO) -Package: hobsub 2012/05/28 v1.13 Construct package bundles (HO) -Package hobsub Info: Skipping package `infwarerr' (already loaded). -Package hobsub Info: Skipping package `ltxcmds' (already loaded). -Package hobsub Info: Skipping package `ifluatex' (already loaded). -Package: ifvtex 2010/03/01 v1.5 Detect VTeX and its facilities (HO) -Package ifvtex Info: VTeX not detected. -Package: intcalc 2007/09/27 v1.1 Expandable calculations with integers (HO) -Package: ifpdf 2011/01/30 v2.3 Provides the ifpdf switch (HO) -Package ifpdf Info: pdfTeX in PDF mode is detected. -Package: etexcmds 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO) -Package etexcmds Info: Could not find \expanded. -(etexcmds) That can mean that you are not using pdfTeX 1.50 or -(etexcmds) that some package has redefined \expanded. -(etexcmds) In the latter case, load this package earlier. -Package: kvsetkeys 2012/04/25 v1.16 Key value parser (HO) -Package: kvdefinekeys 2011/04/07 v1.3 Define keys (HO) -Package: pdftexcmds 2011/11/29 v0.20 Utility functions of pdfTeX for LuaTeX (HO -) -Package pdftexcmds Info: LuaTeX not detected. -Package pdftexcmds Info: \pdf@primitive is available. -Package pdftexcmds Info: \pdf@ifprimitive is available. -Package pdftexcmds Info: \pdfdraftmode found. -Package: pdfescape 2011/11/25 v1.13 Implements pdfTeX's escape features (HO) -Package: bigintcalc 2012/04/08 v1.3 Expandable calculations on big integers (HO -) -Package: bitset 2011/01/30 v1.1 Handle bit-vector datatype (HO) -Package: uniquecounter 2011/01/30 v1.2 Provide unlimited unique counter (HO) -) -Package hobsub Info: Skipping package `hobsub' (already loaded). -Package: letltxmacro 2010/09/02 v1.4 Let assignment for LaTeX macros (HO) -Package: hopatch 2012/05/28 v1.2 Wrapper for package hooks (HO) -Package: xcolor-patch 2011/01/30 xcolor patch -Package: atveryend 2011/06/30 v1.8 Hooks at the very end of document (HO) -Package: atbegshi 2011/10/05 v1.16 At begin shipout hook (HO) -Package: refcount 2011/10/16 v3.4 Data extraction from label references (HO) -Package: hycolor 2011/01/30 v1.7 Color options for hyperref/bookmark (HO) -) -(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty -Package: auxhook 2011/03/04 v1.3 Hooks for auxiliary files (HO) -) -(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty -Package: kvoptions 2011/06/30 v3.11 Key value format for package options (HO) -) -\@linkdim=\dimen137 -\Hy@linkcounter=\count118 -\Hy@pagecounter=\count119 - -(/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def -File: pd1enc.def 2012/11/06 v6.83m Hyperref: PDFDocEncoding definition (HO) -) -\Hy@SavedSpaceFactor=\count120 - -(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg -File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive -) -Package hyperref Info: Option `unicode' set `true' on input line 4319. - -(/usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def -File: puenc.def 2012/11/06 v6.83m Hyperref: PDF Unicode definition (HO) -) -Package hyperref Info: Option `bookmarksnumbered' set `true' on input line 4319 -. -Package hyperref Info: Option `bookmarksopen' set `true' on input line 4319. -Package hyperref Info: Hyper figures OFF on input line 4443. -Package hyperref Info: Link nesting OFF on input line 4448. -Package hyperref Info: Hyper index ON on input line 4451. -Package hyperref Info: Plain pages OFF on input line 4458. -Package hyperref Info: Backreferencing OFF on input line 4463. -Package hyperref Info: Implicit mode ON; LaTeX internals redefined. -Package hyperref Info: Bookmarks ON on input line 4688. -\c@Hy@tempcnt=\count121 -LaTeX Info: Redefining \url on input line 5041. -\XeTeXLinkMargin=\dimen138 -\Fld@menulength=\count122 -\Field@Width=\dimen139 -\Fld@charsize=\dimen140 -Package hyperref Info: Hyper figures OFF on input line 6295. -Package hyperref Info: Link nesting OFF on input line 6300. -Package hyperref Info: Hyper index ON on input line 6303. -Package hyperref Info: backreferencing OFF on input line 6310. -Package hyperref Info: Link coloring OFF on input line 6315. -Package hyperref Info: Link coloring with OCG OFF on input line 6320. -Package hyperref Info: PDF/A mode OFF on input line 6325. -LaTeX Info: Redefining \ref on input line 6365. -LaTeX Info: Redefining \pageref on input line 6369. -\Hy@abspage=\count123 -\c@Item=\count124 -\c@Hfootnote=\count125 -) - -Package hyperref Message: Driver (autodetected): hpdftex. - -(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def -File: hpdftex.def 2012/11/06 v6.83m Hyperref driver for pdfTeX -\Fld@listcount=\count126 -\c@bookmark@seq@number=\count127 - -(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty -Package: rerunfilecheck 2011/04/15 v1.7 Rerun checks for auxiliary files (HO) -Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 -82. -) -\Hy@SectionHShift=\skip74 -) -(/usr/share/texlive/texmf-dist/tex/latex/cleveref/cleveref.sty -Package: cleveref 2013/12/28 v0.19 Intelligent cross-referencing -Package cleveref Info: `hyperref' support loaded on input line 2230. -LaTeX Info: Redefining \cref on input line 2230. -LaTeX Info: Redefining \Cref on input line 2230. -LaTeX Info: Redefining \crefrange on input line 2230. -LaTeX Info: Redefining \Crefrange on input line 2230. -LaTeX Info: Redefining \cpageref on input line 2230. -LaTeX Info: Redefining \Cpageref on input line 2230. -LaTeX Info: Redefining \cpagerefrange on input line 2230. -LaTeX Info: Redefining \Cpagerefrange on input line 2230. -LaTeX Info: Redefining \labelcref on input line 2230. -LaTeX Info: Redefining \labelcpageref on input line 2230. -) -(/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty -Package: nameref 2012/10/27 v2.43 Cross-referencing by name of section - -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty -Package: gettitlestring 2010/12/03 v1.4 Cleanup title references (HO) -) -\c@section@level=\count128 -) -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty -Package: biblatex 2016/03/03 v3.3 programmable bibliographies (PK/JW/AB) - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex_.sty -Package: biblatex_ 2016/03/03 v3.3 programmable bibliographies (biber) (PK/JW/A -B) - -(/usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.sty -Package: logreq 2010/08/04 v1.0 xml request logger -\lrq@indent=\count129 - -(/usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.def -File: logreq.def 2010/08/04 v1.0 logreq spec v1.0 -)) -(/usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty -Package: ifthen 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC) -) -\c@tabx@nest=\count130 -\c@listtotal=\count131 -\c@listcount=\count132 -\c@liststart=\count133 -\c@liststop=\count134 -\c@citecount=\count135 -\c@citetotal=\count136 -\c@multicitecount=\count137 -\c@multicitetotal=\count138 -\c@instcount=\count139 -\c@maxnames=\count140 -\c@minnames=\count141 -\c@maxitems=\count142 -\c@minitems=\count143 -\c@citecounter=\count144 -\c@savedcitecounter=\count145 -\c@uniquelist=\count146 -\c@uniquename=\count147 -\c@refsection=\count148 -\c@refsegment=\count149 -\c@maxextratitle=\count150 -\c@maxextratitleyear=\count151 -\c@maxextrayear=\count152 -\c@maxextraalpha=\count153 -\c@abbrvpenalty=\count154 -\c@highnamepenalty=\count155 -\c@lownamepenalty=\count156 -\c@maxparens=\count157 -\c@parenlevel=\count158 -\blx@tempcnta=\count159 -\blx@tempcntb=\count160 -\blx@tempcntc=\count161 -\blx@maxsection=\count162 -\blx@maxsegment@0=\count163 -\blx@notetype=\count164 -\blx@parenlevel@text=\count165 -\blx@parenlevel@foot=\count166 -\blx@sectionciteorder@0=\count167 -\labelnumberwidth=\skip75 -\labelalphawidth=\skip76 -\biblabelsep=\skip77 -\bibitemsep=\skip78 -\bibnamesep=\skip79 -\bibinitsep=\skip80 -\bibparsep=\skip81 -\bibhang=\skip82 -\blx@bcfin=\read1 -\blx@bcfout=\write5 -\c@mincomprange=\count168 -\c@maxcomprange=\count169 -\c@mincompwidth=\count170 -Package biblatex Info: Trying to load biblatex default data model... -Package biblatex Info: ... file 'blx-dm.def' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-dm.def) -Package biblatex Info: Trying to load biblatex style data model... -Package biblatex Info: ... file 'alphabetic.dbx' not found. -Package biblatex Info: Trying to load biblatex custom data model... -Package biblatex Info: ... file 'biblatex-dm.cfg' not found. -\c@afterword=\count171 -\c@savedafterword=\count172 -\c@annotator=\count173 -\c@savedannotator=\count174 -\c@author=\count175 -\c@savedauthor=\count176 -\c@bookauthor=\count177 -\c@savedbookauthor=\count178 -\c@commentator=\count179 -\c@savedcommentator=\count180 -\c@editor=\count181 -\c@savededitor=\count182 -\c@editora=\count183 -\c@savededitora=\count184 -\c@editorb=\count185 -\c@savededitorb=\count186 -\c@editorc=\count187 -\c@savededitorc=\count188 -\c@foreword=\count189 -\c@savedforeword=\count190 -\c@holder=\count191 -\c@savedholder=\count192 -\c@introduction=\count193 -\c@savedintroduction=\count194 -\c@namea=\count195 -\c@savednamea=\count196 -\c@nameb=\count197 -\c@savednameb=\count198 -\c@namec=\count199 -\c@savednamec=\count266 -\c@translator=\count267 -\c@savedtranslator=\count268 -\c@shortauthor=\count269 -\c@savedshortauthor=\count270 -\c@shorteditor=\count271 -\c@savedshorteditor=\count272 -\c@labelname=\count273 -\c@savedlabelname=\count274 -\c@institution=\count275 -\c@savedinstitution=\count276 -\c@lista=\count277 -\c@savedlista=\count278 -\c@listb=\count279 -\c@savedlistb=\count280 -\c@listc=\count281 -\c@savedlistc=\count282 -\c@listd=\count283 -\c@savedlistd=\count284 -\c@liste=\count285 -\c@savedliste=\count286 -\c@listf=\count287 -\c@savedlistf=\count288 -\c@location=\count289 -\c@savedlocation=\count290 -\c@organization=\count291 -\c@savedorganization=\count292 -\c@origlocation=\count293 -\c@savedoriglocation=\count294 -\c@origpublisher=\count295 -\c@savedorigpublisher=\count296 -\c@publisher=\count297 -\c@savedpublisher=\count298 -\c@language=\count299 -\c@savedlanguage=\count300 -\c@pageref=\count301 -\c@savedpageref=\count302 -\shorthandwidth=\skip83 -\shortjournalwidth=\skip84 -\shortserieswidth=\skip85 -\shorttitlewidth=\skip86 -\shortauthorwidth=\skip87 -\shorteditorwidth=\skip88 -Package biblatex Info: Trying to load compatibility code... -Package biblatex Info: ... file 'blx-compat.def' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-compat.def -File: blx-compat.def 2016/03/03 v3.3 biblatex compatibility (PK/JW/AB) -) -Package biblatex Info: Trying to load generic definitions... -Package biblatex Info: ... file 'biblatex_.def' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex_.def -File: biblatex_.def -\c@textcitecount=\count303 -\c@textcitetotal=\count304 -\c@textcitemaxnames=\count305 -\c@biburlnumpenalty=\count306 -\c@biburlucpenalty=\count307 -\c@biburllcpenalty=\count308 -\c@smartand=\count309 -) -Package biblatex Info: Trying to load bibliography style 'alphabetic'... -Package biblatex Info: ... file 'alphabetic.bbx' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/alphabetic.bbx -File: alphabetic.bbx 2016/03/03 v3.3 biblatex bibliography style (PK/JW/AB) -Package biblatex Info: Trying to load bibliography style 'standard'... -Package biblatex Info: ... file 'standard.bbx' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/standard.bbx -File: standard.bbx 2016/03/03 v3.3 biblatex bibliography style (PK/JW/AB) -\c@bbx:relatedcount=\count310 -\c@bbx:relatedtotal=\count311 -)) -Package biblatex Info: Trying to load citation style 'alphabetic'... -Package biblatex Info: ... file 'alphabetic.cbx' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/cbx/alphabetic.cbx -File: alphabetic.cbx 2016/03/03 v3.3 biblatex citation style (PK/JW/AB) -Package biblatex Info: Redefining '\cite'. -Package biblatex Info: Redefining '\parencite'. -Package biblatex Info: Redefining '\footcite'. -Package biblatex Info: Redefining '\footcitetext'. -Package biblatex Info: Redefining '\smartcite'. -Package biblatex Info: Redefining '\textcite'. -Package biblatex Info: Redefining '\textcites'. -Package biblatex Info: Redefining '\cites'. -Package biblatex Info: Redefining '\parencites'. -Package biblatex Info: Redefining '\smartcites'. -) -Package biblatex Info: Trying to load configuration file... -Package biblatex Info: ... file 'biblatex.cfg' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.cfg -File: biblatex.cfg -))) -(/usr/share/texmf/tex/latex/lm/lmodern.sty -Package: lmodern 2009/10/30 v1.6 Latin Modern Fonts -LaTeX Font Info: Overwriting symbol font `operators' in version `normal' -(Font) OT1/cmr/m/n --> OT1/lmr/m/n on input line 22. -LaTeX Font Info: Overwriting symbol font `letters' in version `normal' -(Font) OML/ntxmi/m/it --> OML/lmm/m/it on input line 23. -LaTeX Font Info: Overwriting symbol font `symbols' in version `normal' -(Font) OMS/ntxsy/m/n --> OMS/lmsy/m/n on input line 24. -LaTeX Font Info: Encoding `LMX' has changed to `OMX' for symbol font -(Font) `largesymbols' in the math version `normal' on input line 2 -5. -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `normal' -(Font) LMX/ntxexx/m/n --> OMX/lmex/m/n on input line 25. -LaTeX Font Info: Overwriting symbol font `operators' in version `bold' -(Font) OT1/cmr/b/n --> OT1/lmr/bx/n on input line 26. -LaTeX Font Info: Overwriting symbol font `letters' in version `bold' -(Font) OML/ntxmi/b/it --> OML/lmm/b/it on input line 27. -LaTeX Font Info: Overwriting symbol font `symbols' in version `bold' -(Font) OMS/ntxsy/b/n --> OMS/lmsy/b/n on input line 28. -LaTeX Font Info: Encoding `LMX' has changed to `OMX' for symbol font -(Font) `largesymbols' in the math version `bold' on input line 29. - -LaTeX Font Info: Overwriting symbol font `largesymbols' in version `bold' -(Font) LMX/ntxexx/b/n --> OMX/lmex/m/n on input line 29. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' -(Font) OT1/cmr/b/n --> OT1/lmr/bx/n on input line 31. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' -(Font) OT1/cmss/m/n --> OT1/lmss/m/n on input line 32. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' -(Font) OT1/cmr/m/it --> OT1/lmr/m/it on input line 33. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' -(Font) OT1/cmtt/m/n --> OT1/lmtt/m/n on input line 34. -LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `bold' -(Font) OT1/cmr/b/n --> OT1/lmr/bx/n on input line 35. -LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' -(Font) OT1/cmss/b/n --> OT1/lmss/bx/n on input line 36. -LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' -(Font) OT1/cmr/b/it --> OT1/lmr/bx/it on input line 37. -LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' -(Font) OT1/cmtt/b/n --> OT1/lmtt/m/n on input line 38. -) -(/usr/share/texlive/texmf-dist/tex/latex/quattrocento/quattrocento.sty -Package: quattrocento 2012/11/24 (Bob Tennent) Supports Quattrocento(Sans) font -s for all LaTeX engines. - -(/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty -Package: textcomp 2005/09/27 v1.99g Standard LaTeX package -Package textcomp Info: Sub-encoding information: -(textcomp) 5 = only ISO-Adobe without \textcurrency -(textcomp) 4 = 5 + \texteuro -(textcomp) 3 = 4 + \textohm -(textcomp) 2 = 3 + \textestimated + \textcurrency -(textcomp) 1 = TS1 - \textcircled - \t -(textcomp) 0 = TS1 (full) -(textcomp) Font families with sub-encoding setting implement -(textcomp) only a restricted character set as indicated. -(textcomp) Family '?' is the default used for unknown fonts. -(textcomp) See the documentation for details. -Package textcomp Info: Setting ? sub-encoding to TS1/1 on input line 79. - -(/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def -File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file -) -LaTeX Info: Redefining \oldstylenums on input line 334. -Package textcomp Info: Setting cmr sub-encoding to TS1/0 on input line 349. -Package textcomp Info: Setting cmss sub-encoding to TS1/0 on input line 350. -Package textcomp Info: Setting cmtt sub-encoding to TS1/0 on input line 351. -Package textcomp Info: Setting cmvtt sub-encoding to TS1/0 on input line 352. -Package textcomp Info: Setting cmbr sub-encoding to TS1/0 on input line 353. -Package textcomp Info: Setting cmtl sub-encoding to TS1/0 on input line 354. -Package textcomp Info: Setting ccr sub-encoding to TS1/0 on input line 355. -Package textcomp Info: Setting ptm sub-encoding to TS1/4 on input line 356. -Package textcomp Info: Setting pcr sub-encoding to TS1/4 on input line 357. -Package textcomp Info: Setting phv sub-encoding to TS1/4 on input line 358. -Package textcomp Info: Setting ppl sub-encoding to TS1/3 on input line 359. -Package textcomp Info: Setting pag sub-encoding to TS1/4 on input line 360. -Package textcomp Info: Setting pbk sub-encoding to TS1/4 on input line 361. -Package textcomp Info: Setting pnc sub-encoding to TS1/4 on input line 362. -Package textcomp Info: Setting pzc sub-encoding to TS1/4 on input line 363. -Package textcomp Info: Setting bch sub-encoding to TS1/4 on input line 364. -Package textcomp Info: Setting put sub-encoding to TS1/5 on input line 365. -Package textcomp Info: Setting uag sub-encoding to TS1/5 on input line 366. -Package textcomp Info: Setting ugq sub-encoding to TS1/5 on input line 367. -Package textcomp Info: Setting ul8 sub-encoding to TS1/4 on input line 368. -Package textcomp Info: Setting ul9 sub-encoding to TS1/4 on input line 369. -Package textcomp Info: Setting augie sub-encoding to TS1/5 on input line 370. -Package textcomp Info: Setting dayrom sub-encoding to TS1/3 on input line 371. -Package textcomp Info: Setting dayroms sub-encoding to TS1/3 on input line 372. - -Package textcomp Info: Setting pxr sub-encoding to TS1/0 on input line 373. -Package textcomp Info: Setting pxss sub-encoding to TS1/0 on input line 374. -Package textcomp Info: Setting pxtt sub-encoding to TS1/0 on input line 375. -Package textcomp Info: Setting txr sub-encoding to TS1/0 on input line 376. -Package textcomp Info: Setting txss sub-encoding to TS1/0 on input line 377. -Package textcomp Info: Setting txtt sub-encoding to TS1/0 on input line 378. -Package textcomp Info: Setting lmr sub-encoding to TS1/0 on input line 379. -Package textcomp Info: Setting lmdh sub-encoding to TS1/0 on input line 380. -Package textcomp Info: Setting lmss sub-encoding to TS1/0 on input line 381. -Package textcomp Info: Setting lmssq sub-encoding to TS1/0 on input line 382. -Package textcomp Info: Setting lmvtt sub-encoding to TS1/0 on input line 383. -Package textcomp Info: Setting lmtt sub-encoding to TS1/0 on input line 384. -Package textcomp Info: Setting qhv sub-encoding to TS1/0 on input line 385. -Package textcomp Info: Setting qag sub-encoding to TS1/0 on input line 386. -Package textcomp Info: Setting qbk sub-encoding to TS1/0 on input line 387. -Package textcomp Info: Setting qcr sub-encoding to TS1/0 on input line 388. -Package textcomp Info: Setting qcs sub-encoding to TS1/0 on input line 389. -Package textcomp Info: Setting qpl sub-encoding to TS1/0 on input line 390. -Package textcomp Info: Setting qtm sub-encoding to TS1/0 on input line 391. -Package textcomp Info: Setting qzc sub-encoding to TS1/0 on input line 392. -Package textcomp Info: Setting qhvc sub-encoding to TS1/0 on input line 393. -Package textcomp Info: Setting futs sub-encoding to TS1/4 on input line 394. -Package textcomp Info: Setting futx sub-encoding to TS1/4 on input line 395. -Package textcomp Info: Setting futj sub-encoding to TS1/4 on input line 396. -Package textcomp Info: Setting hlh sub-encoding to TS1/3 on input line 397. -Package textcomp Info: Setting hls sub-encoding to TS1/3 on input line 398. -Package textcomp Info: Setting hlst sub-encoding to TS1/3 on input line 399. -Package textcomp Info: Setting hlct sub-encoding to TS1/5 on input line 400. -Package textcomp Info: Setting hlx sub-encoding to TS1/5 on input line 401. -Package textcomp Info: Setting hlce sub-encoding to TS1/5 on input line 402. -Package textcomp Info: Setting hlcn sub-encoding to TS1/5 on input line 403. -Package textcomp Info: Setting hlcw sub-encoding to TS1/5 on input line 404. -Package textcomp Info: Setting hlcf sub-encoding to TS1/5 on input line 405. -Package textcomp Info: Setting pplx sub-encoding to TS1/3 on input line 406. -Package textcomp Info: Setting pplj sub-encoding to TS1/3 on input line 407. -Package textcomp Info: Setting ptmx sub-encoding to TS1/4 on input line 408. -Package textcomp Info: Setting ptmj sub-encoding to TS1/4 on input line 409. -) -(/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty -Package: fontenc 2005/09/27 v1.99g Standard LaTeX package -) -(/usr/share/texlive/texmf-dist/tex/latex/fontaxes/fontaxes.sty -Package: fontaxes 2014/03/23 v1.0d Font selection axes -LaTeX Info: Redefining \upshape on input line 29. -LaTeX Info: Redefining \itshape on input line 31. -LaTeX Info: Redefining \slshape on input line 33. -LaTeX Info: Redefining \scshape on input line 37. -)) -(/usr/share/texlive/texmf-dist/tex/latex/mathalfa/mathalfa.sty -Package: mathalfa 2012/07/10 - 1.07mathalfa (License LPPL) Michael Sharpe -LaTeX Font Info: Redeclaring math alphabet \mathbb on input line 69. -) -\enitdp@formulae=\count312 -\symfdsymbol=\mathgroup8 -\symbskadd=\mathgroup9 - -(/usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty -Package: xcolor 2007/01/21 v2.11 LaTeX color extensions (UK) - -(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg -File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive -) -Package xcolor Info: Package option `usenames' ignored on input line 216. -Package xcolor Info: Driver file: pdftex.def on input line 225. -Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1337. -Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1341. -Package xcolor Info: Model `RGB' extended on input line 1353. -Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1355. -Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1356. -Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1357. -Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1358. -Package xcolor Info: Model `Gray' substituted by `gray' on input line 1359. -Package xcolor Info: Model `wave' substituted by `hsb' on input line 1360. - -(/usr/share/texlive/texmf-dist/tex/latex/graphics/dvipsnam.def -File: dvipsnam.def 2015/12/30 v3.0k Driver-dependent file (DPC,SPQR) -)) -Package biblatex Info: Trying to load language 'english'... -Package biblatex Info: ... file 'english.lbx' found. - -(/usr/share/texlive/texmf-dist/tex/latex/biblatex/lbx/english.lbx -File: english.lbx 2016/03/03 v3.3 biblatex localization (PK/JW/AB) -) -\@quotelevel=\count313 -\@quotereset=\count314 - -(./protocol.aux) -\openout1 = `protocol.aux'. - -LaTeX Font Info: Checking defaults for OML/ntxmi/m/it on input line 761. -LaTeX Font Info: Try loading font information for OML+ntxmi on input line 76 -1. - (/usr/share/texlive/texmf-dist/tex/latex/newtx/omlntxmi.fd -File: omlntxmi.fd 2015/08/25 Fontinst v1.933 font definitions for OML/ntxmi. -) -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 761. -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 761. -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for OMS/ntxsy/m/n on input line 761. -LaTeX Font Info: Try loading font information for OMS+ntxsy on input line 76 -1. - -(/usr/share/texlive/texmf-dist/tex/latex/newtx/omsntxsy.fd -File: omsntxsy.fd 2012/11/14 Fontinst v1.933 font definitions for OMS/ntxsy. -) -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 761. -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for U/ntxexa/m/n on input line 761. -LaTeX Font Info: Try loading font information for U+ntxexa on input line 761 -. - -(/usr/share/texlive/texmf-dist/tex/latex/newtx/untxexa.fd -File: untxexa.fd 2012/04/16 Fontinst v1.933 font definitions for U/ntxexa. -) -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for LMX/ntxexx/m/n on input line 761. -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 761. -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 761. -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 761. -LaTeX Font Info: Try loading font information for TS1+cmr on input line 761. - - -(/usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd -File: ts1cmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions -) -LaTeX Font Info: ... okay on input line 761. -LaTeX Font Info: Try loading font information for OT1+Quattrocento-TLF on in -put line 761. - -(/usr/share/texlive/texmf-dist/tex/latex/quattrocento/OT1Quattrocento-TLF.fd -File: OT1Quattrocento-TLF.fd 2012/11/07 (autoinst) Font definitions for OT1/Qua -ttrocento-TLF. -) -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 10.0pt on input line 761. - -(/usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii -[Loading MPS to PDF converter (version 2006.09.02).] -\scratchcounter=\count315 -\scratchdimen=\dimen141 -\scratchbox=\box37 -\nofMPsegments=\count316 -\nofMParguments=\count317 -\everyMPshowfont=\toks27 -\MPscratchCnt=\count318 -\MPscratchDim=\dimen142 -\MPnumerator=\count319 -\makeMPintoPDFobject=\count320 -\everyMPtoPDFconversion=\toks28 -) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty -Package: epstopdf-base 2010/02/09 v2.5 Base part for package epstopdf - -(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty -Package: grfext 2010/08/19 v1.1 Manage graphics extensions (HO) -) -Package grfext Info: Graphics extension search list: -(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE -G,.JBIG2,.JB2,.eps] -(grfext) \AppendGraphicsExtensions on input line 452. - -(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg -File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv -e -)) -\AtBeginShipoutBox=\box38 -Package hyperref Info: Link coloring OFF on input line 761. -LaTeX Info: Redefining \ref on input line 761. -LaTeX Info: Redefining \pageref on input line 761. -LaTeX Info: Redefining \nameref on input line 761. - -(./protocol.out) (./protocol.out) -\@outlinefile=\write6 -\openout6 = `protocol.out'. - -Package biblatex Info: No input encoding detected. -(biblatex) Assuming 'ascii'. -Package biblatex Info: Automatic encoding selection. -(biblatex) Assuming data encoding 'ascii'. -\openout5 = `protocol.bcf'. - -Package biblatex Info: Trying to load bibliographic data... -Package biblatex Info: ... file 'protocol.bbl' found. - (./protocol.bbl) -Package biblatex Info: Reference section=0 on input line 761. -Package biblatex Info: Reference segment=0 on input line 761. -\c@mv@tabular=\count321 -\c@mv@boldtabular=\count322 -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 17.28pt on input line 771. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 14.4pt on input line 771. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 12.0pt on input line 771. -LaTeX Font Info: Try loading font information for OT1+lmr on input line 771. - - -(/usr/share/texmf/tex/latex/lm/ot1lmr.fd -File: ot1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern -) -LaTeX Font Info: Try loading font information for OML+lmm on input line 771. - - -(/usr/share/texmf/tex/latex/lm/omllmm.fd -File: omllmm.fd 2009/10/30 v1.6 Font defs for Latin Modern -) -LaTeX Font Info: Try loading font information for OMS+lmsy on input line 771 -. - -(/usr/share/texmf/tex/latex/lm/omslmsy.fd -File: omslmsy.fd 2009/10/30 v1.6 Font defs for Latin Modern -) -LaTeX Font Info: Try loading font information for OMX+lmex on input line 771 -. - -(/usr/share/texmf/tex/latex/lm/omxlmex.fd -File: omxlmex.fd 2009/10/30 v1.6 Font defs for Latin Modern -) -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <12> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <8.8> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <6.6> on input line 771. -LaTeX Font Info: Try loading font information for U+ntxmia on input line 771 -. - -(/usr/share/texlive/texmf-dist/tex/latex/newtx/untxmia.fd -File: untxmia.fd 2012/04/16 Fontinst v1.933 font definitions for U/ntxmia. -) -LaTeX Font Info: Try loading font information for U+ntxsym on input line 771 -. - -(/usr/share/texlive/texmf-dist/tex/latex/newtx/untxsym.fd -File: untxsym.fd 2015/03/20 Fontinst v1.933 font definitions for U/ntxsym. -) -LaTeX Font Info: Try loading font information for U+ntxsyc on input line 771 -. - -(/usr/share/texlive/texmf-dist/tex/latex/newtx/untxsyc.fd -File: untxsyc.fd 2012/04/12 Fontinst v1.933 font definitions for U/ntxsyc. -) -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 4.79993pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 3.51994pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 2.63995pt on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <14.4> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <10.5> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <7.9> on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 5.7599pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 4.19994pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 3.15994pt on input line 771. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 10.5pt on input line 771. -LaTeX Font Info: Calculating math sizes for size <10.5> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <7.66495> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <5.77502> on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 3.06592pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 2.30997pt on input line 771. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 8.0pt on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <8> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <6.2> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <5.5> on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 3.19995pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 2.47995pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 2.19997pt on input line 771. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 6.2pt on input line 771. -LaTeX Font Info: Calculating math sizes for size <6.2> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <4.52597> on input line 771. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <3.41> on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 1.81035pt on input line 771. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 1.36397pt on input line 771. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 9.0pt on input line 774. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/bx/n' in size <9> not avai -lable -(Font) Font shape `OT1/Quattrocento-TLF/b/n' tried instead on inpu -t line 774. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/b/n' will be -(Font) scaled to size 9.0pt on input line 774. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/bx/n' in size <10> not ava -ilable -(Font) Font shape `OT1/Quattrocento-TLF/b/n' tried instead on inpu -t line 775. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/b/n' will be -(Font) scaled to size 10.0pt on input line 775. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/bx/n' in size <14.4> not a -vailable -(Font) Font shape `OT1/Quattrocento-TLF/b/n' tried instead on inpu -t line 809. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/b/n' will be -(Font) scaled to size 14.4pt on input line 809. - (./protocol.toc -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <10> on input line 7. -LaTeX Font Info: External font `lmex10' loaded for size -(Font) <7.3> on input line 7. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 3.99994pt on input line 7. -LaTeX Font Info: Font shape `U/FdSymbolA/m/n' will be -(Font) scaled to size 2.91995pt on input line 7. - -[1 - -{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}]) -\tf@toc=\write7 -\openout7 = `protocol.toc'. - - [2] -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/sl' in size <10> not ava -ilable -(Font) Font shape `OT1/Quattrocento-TLF/m/it' tried instead on inp -ut line 820. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/it' will be -(Font) scaled to size 10.0pt on input line 820. -LaTeX Font Info: Try loading font information for OT1+pnc on input line 820. - - -(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1pnc.fd -File: ot1pnc.fd 2001/06/04 font definitions for OT1/pnc. -) -LaTeX Font Info: Try loading font information for TS1+Quattrocento-TLF on in -put line 833. - -(/usr/share/texlive/texmf-dist/tex/latex/quattrocento/TS1Quattrocento-TLF.fd -File: TS1Quattrocento-TLF.fd 2012/11/07 (autoinst) Font definitions for TS1/Qua -ttrocento-TLF. -) -LaTeX Font Info: Font shape `TS1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 10.0pt on input line 833. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/bx/n' in size <12> not ava -ilable -(Font) Font shape `OT1/Quattrocento-TLF/b/n' tried instead on inpu -t line 842. -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/b/n' will be -(Font) scaled to size 12.0pt on input line 842. - -[3] [4] [5] [6] [7] [8] -LaTeX Font Info: Font shape `OT1/Quattrocento-TLF/m/n' will be -(Font) scaled to size 7.3pt on input line 1155. -LaTeX Font Info: Try loading font information for OT1+lmtt on input line 116 -6. - (/usr/share/texmf/tex/latex/lm/ot1lmtt.fd -File: ot1lmtt.fd 2009/10/30 v1.6 Font defs for Latin Modern -) -Overfull \hbox (4.27275pt too wide) in paragraph at lines 1167--1167 -[]\OT1/Quattrocento-TLF/m/n/10 jl777. \OT1/Quattrocento-TLF/m/it/10 bar-ter-DEX - - Atomic Swap De-cen-tral-ized Ex-change of Na-tive Coins\OT1/Quattrocento-TLF -/m/n/10 . URL: []$\OT1/lmtt/m/n/10 https : / / github .| - [] - - -Overfull \hbox (15.90253pt too wide) in paragraph at lines 1167--1167 -[]\OT1/Quattrocento-TLF/m/n/10 jl777. \OT1/Quattrocento-TLF/m/it/10 De-layed Pr -oof of Work (dPoW)\OT1/Quattrocento-TLF/m/n/10 . URL: []$\OT1/lmtt/m/n/10 https - : / / supernet . org / en / technology / whitepapers /| - [] - -[9] -Package atveryend Info: Empty hook `BeforeClearDocument' on input line 1169. - [10] -Package atveryend Info: Empty hook `AfterLastShipout' on input line 1169. - (./protocol.aux) -Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 1169. -Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 1169. - -Package rerunfilecheck Info: File `protocol.out' has not changed. -(rerunfilecheck) Checksum: C845216A6090C976405F2709E5409DEF;4159. -Package logreq Info: Writing requests to 'protocol.run.xml'. -\openout1 = `protocol.run.xml'. - - ) -Here is how much of TeX's memory you used: - 21209 strings out of 494953 - 332230 string characters out of 6180976 - 742373 words of memory out of 5000000 - 24172 multiletter control sequences out of 15000+600000 - 131532 words of font info for 170 fonts, out of 8000000 for 9000 - 14 hyphenation exceptions out of 8191 - 39i,13n,46p,1153b,1101s stack positions out of 5000i,500n,10000p,200000b,80000s -{/usr/share/texmf/fonts/enc/dvips/lm/lm-rmtt.enc}{/usr/share/texmf/fonts/enc/ -dvips/lm/lm-mathit.enc}{/usr/share/texmf/fonts/enc/dvips/lm/lm-rm.enc}{/usr/sha -re/texlive/texmf-dist/fonts/enc/dvips/quattrocento/qtrcnt_dw2g3h.enc}{/usr/shar -e/texlive/texmf-dist/fonts/enc/dvips/base/8r.enc}{/usr/share/texlive/texmf-dist -/fonts/enc/dvips/quattrocento/qtrcnt_zievlx.enc}{/usr/share/texmf/fonts/enc/dvi -ps/lm/lm-mathsy.enc} -Output written on protocol.pdf (10 pages, 321278 bytes). -PDF statistics: - 261 PDF objects out of 1000 (max. 8388607) - 236 compressed objects within 3 object streams - 41 named destinations out of 1000 (max. 500000) - 201 words of extra memory for PDF output out of 10000 (max. 10000000) - diff --git a/whitepaper/btch/protocol.out b/whitepaper/btch/protocol.out deleted file mode 100644 index b48b156..0000000 --- a/whitepaper/btch/protocol.out +++ /dev/null @@ -1,25 +0,0 @@ -\BOOKMARK [1][]{section*.1}{\376\377\000C\000o\000n\000t\000e\000n\000t\000s}{}% 1 -\BOOKMARK [1][]{section.1}{\376\377\0001\000\040\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n}{}% 2 -\BOOKMARK [2][]{subsection.1.1}{\376\377\0001\000.\0001\000\040\000H\000i\000g\000h\000-\000l\000e\000v\000e\000l\000\040\000O\000v\000e\000r\000v\000i\000e\000w}{section.1}% 3 -\BOOKMARK [2][]{subsection.1.2}{\376\377\0001\000.\0002\000\040\000T\000y\000p\000e\000s\000\040\000O\000f\000\040\000T\000r\000a\000n\000s\000a\000c\000t\000i\000o\000n\000s}{section.1}% 4 -\BOOKMARK [1][]{section.2}{\376\377\0002\000\040\000D\000e\000s\000i\000g\000n\000\040\000o\000f\000\040\000H\000u\000s\000h\000L\000i\000s\000t}{}% 5 -\BOOKMARK [1][]{section.3}{\376\377\0003\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e\000\040\000I\000m\000p\000l\000e\000m\000e\000n\000t\000a\000t\000i\000o\000n}{}% 6 -\BOOKMARK [1][]{section.4}{\376\377\0004\000\040\000A\000c\000c\000o\000u\000n\000t\000\040\000F\000u\000n\000d\000i\000n\000g}{}% 7 -\BOOKMARK [1][]{section.5}{\376\377\0005\000\040\000H\000u\000s\000h\000L\000i\000s\000t\000\040\000C\000o\000n\000t\000a\000c\000t\000s}{}% 8 -\BOOKMARK [1][]{section.6}{\376\377\0006\000\040\000H\000u\000s\000h\000L\000i\000s\000t\000\040\000C\000r\000e\000a\000t\000i\000o\000n}{}% 9 -\BOOKMARK [2][]{subsection.6.1}{\376\377\0006\000.\0001\000\040\000P\000r\000i\000v\000a\000t\000e\000\040\000H\000u\000s\000h\000L\000i\000s\000t\000s}{section.6}% 10 -\BOOKMARK [2][]{subsection.6.2}{\376\377\0006\000.\0002\000\040\000M\000u\000l\000t\000i\000-\000C\000h\000a\000i\000n\000\040\000P\000r\000i\000v\000a\000t\000e\000\040\000H\000u\000s\000h\000L\000i\000s\000t\000s}{section.6}% 11 -\BOOKMARK [2][]{subsection.6.3}{\376\377\0006\000.\0003\000\040\000P\000u\000b\000l\000i\000c\000\040\000H\000u\000s\000h\000L\000i\000s\000t\000s}{section.6}% 12 -\BOOKMARK [1][]{section.7}{\376\377\0007\000\040\000L\000i\000s\000t\000\040\000S\000u\000b\000s\000c\000r\000i\000p\000t\000i\000o\000n}{}% 13 -\BOOKMARK [1][]{section.8}{\376\377\0008\000\040\000S\000e\000n\000d\000i\000n\000g\000\040\000T\000o\000\040\000A\000\040\000L\000i\000s\000t}{}% 14 -\BOOKMARK [1][]{section.9}{\376\377\0009\000\040\000R\000e\000c\000e\000i\000v\000i\000n\000g\000\040\000M\000e\000s\000s\000a\000g\000e\000s}{}% 15 -\BOOKMARK [1][]{section.10}{\376\377\0001\0000\000\040\000C\000o\000s\000t\000s}{}% 16 -\BOOKMARK [1][]{section.11}{\376\377\0001\0001\000\040\000E\000x\000a\000m\000p\000l\000e\000s}{}% 17 -\BOOKMARK [1][]{section.12}{\376\377\0001\0002\000\040\000M\000e\000t\000a\000d\000a\000t\000a\000\040\000A\000n\000a\000l\000y\000s\000i\000s}{}% 18 -\BOOKMARK [1][]{section.13}{\376\377\0001\0003\000\040\000U\000s\000e\000r\000\040\000S\000t\000o\000r\000i\000e\000s}{}% 19 -\BOOKMARK [2][]{subsection.13.1}{\376\377\0001\0003\000.\0001\000\040\000"\000P\000e\000n\000\040\000N\000a\000m\000e\000"\000\040\000u\000s\000e\000r\000\040\000s\000t\000o\000r\000y\000\040\000-\000\040\000A\000m\000a\000n\000d\000a}{section.13}% 20 -\BOOKMARK [2][]{subsection.13.2}{\376\377\0001\0003\000.\0002\000\040\000"\000S\000e\000c\000u\000r\000i\000t\000y\000\040\000R\000e\000s\000e\000a\000r\000c\000h\000e\000r\000"\000\040\000u\000s\000e\000r\000\040\000s\000t\000o\000r\000y\000\040\000-\000\040\000G\000o\000r\000d\000o\000n}{section.13}% 21 -\BOOKMARK [2][]{subsection.13.3}{\376\377\0001\0003\000.\0003\000\040\000"\000W\000h\000i\000s\000t\000e\000b\000l\000o\000w\000e\000r\000"\000\040\000u\000s\000e\000r\000\040\000s\000t\000o\000r\000y\000\040\000-\000\040\000M\000a\000r\000t\000h\000a}{section.13}% 22 -\BOOKMARK [2][]{subsection.13.4}{\376\377\0001\0003\000.\0004\000\040\000"\000C\000e\000n\000s\000o\000r\000e\000d\000\040\000J\000o\000u\000r\000n\000a\000l\000i\000s\000t\000"\000\040\000u\000s\000e\000r\000\040\000s\000t\000o\000r\000y\000\040\000-\000\040\000B\000i\000l\000l\000y}{section.13}% 23 -\BOOKMARK [1][]{section.14}{\376\377\0001\0004\000\040\000S\000p\000e\000c\000i\000a\000l\000\040\000T\000h\000a\000n\000k\000s}{}% 24 -\BOOKMARK [1][]{section.15}{\376\377\0001\0005\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s}{}% 25 diff --git a/whitepaper/btch/protocol.pdf b/whitepaper/btch/protocol.pdf deleted file mode 100644 index 25ac6a3..0000000 Binary files a/whitepaper/btch/protocol.pdf and /dev/null differ diff --git a/whitepaper/btch/protocol.run.xml b/whitepaper/btch/protocol.run.xml deleted file mode 100644 index 3bb101a..0000000 --- a/whitepaper/btch/protocol.run.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - -]> - - - latex - - protocol.bcf - - - protocol.bbl - - - blx-dm.def - blx-compat.def - biblatex_.def - alphabetic.bbx - standard.bbx - alphabetic.cbx - biblatex.cfg - english.lbx - - - - biber - - biber - protocol - - - protocol.bcf - - - protocol.bbl - - - protocol.bbl - - - protocol.bcf - - - hush.bib - - - diff --git a/whitepaper/btch/protocol.tex b/whitepaper/btch/protocol.tex deleted file mode 100644 index c560536..0000000 --- a/whitepaper/btch/protocol.tex +++ /dev/null @@ -1,1176 +0,0 @@ -\documentclass{article} - -\RequirePackage{amsmath} -\RequirePackage{bytefield} -\RequirePackage{graphicx} -\RequirePackage{newtxmath} -\RequirePackage{mathtools} -\RequirePackage{xspace} -\RequirePackage{url} -\RequirePackage{changepage} -\RequirePackage{enumitem} -\RequirePackage{tabularx} -\RequirePackage{hhline} -\RequirePackage[usestackEOL]{stackengine} -\RequirePackage{comment} -\RequirePackage{needspace} -\RequirePackage[nobottomtitles]{titlesec} -\RequirePackage[hang]{footmisc} -\RequirePackage{xstring} -\RequirePackage[unicode,bookmarksnumbered,bookmarksopen,pdfview=Fit]{hyperref} -\RequirePackage{cleveref} -\RequirePackage{nameref} - -\RequirePackage[style=alphabetic,maxbibnames=99,dateabbrev=false,urldate=iso8601,backref=true,backrefstyle=none,backend=biber]{biblatex} -\addbibresource{hush.bib} - -% Fonts -\RequirePackage{lmodern} -\RequirePackage{quattrocento} -\RequirePackage[bb=ams]{mathalfa} - -% Quattrocento is beautiful but doesn't have an italic face. So we scale -% New Century Schoolbook italic to fit in with slanted Quattrocento and -% match its x height. -\renewcommand{\emph}[1]{\hspace{0.15em}{\fontfamily{pnc}\selectfont\scalebox{1.02}[0.999]{\textit{#1}}}\hspace{0.02em}} - -% While we're at it, let's match the tt x height to Quattrocento as well. -\let\oldtexttt\texttt -\let\oldmathtt\mathtt -\renewcommand{\texttt}[1]{\scalebox{1.02}[1.07]{\oldtexttt{#1}}} -\renewcommand{\mathtt}[1]{\scalebox{1.02}[1.07]{$\oldmathtt{#1}$}} - -\newcommand{\zsendmany}{\textbf{z\_sendmany}} - -% bold but not extended -\newcommand{\textbnx}[1]{{\fontseries{b}\selectfont #1}} - - -\crefformat{footnote}{#2\footnotemark[#1]#3} - -\DeclareLabelalphaTemplate{ - \labelelement{\field{citekey}} -} - -\DefineBibliographyStrings{english}{ - page = {page}, - pages = {pages}, - backrefpage = {\mbox{$\uparrow$ p\!}}, - backrefpages = {\mbox{$\uparrow$ p\!}} -} - -\setlength{\oddsidemargin}{-0.25in} -\setlength{\textwidth}{7in} -\setlength{\topmargin}{-0.75in} -\setlength{\textheight}{9.2in} -\setlength{\parindent}{0ex} -\renewcommand{\arraystretch}{1.4} -\overfullrule=2cm - -\setlength{\footnotemargin}{0.6em} -\setlength{\footnotesep}{2ex} -\addtolength{\skip\footins}{3ex} - -\renewcommand{\bottomtitlespace}{8ex} - -% Use rubber lengths between paragraphs to improve default pagination. -% https://tex.stackexchange.com/questions/17178/vertical-spacing-pagination-and-ideal-results -\setlength{\parskip}{1.5ex plus 1pt minus 1pt} - -\setlist[enumerate]{before=\vspace{-1ex}} -\setlist[itemize]{itemsep=0.5ex,topsep=0.2ex,before=\vspace{-1ex},after=\vspace{1.5ex}} - -\newlist{formulae}{itemize}{3} -\setlist[formulae]{itemsep=0.2ex,topsep=0ex,leftmargin=1.5em,label=,after=\vspace{1.5ex}} - -\newcommand{\docversion}{Pre-Release Version} -\newcommand{\termbf}[1]{\textbf{#1}\xspace} -\newcommand{\Hushlist}{\termbf{HushList}} -\newcommand{\HushList}{\termbf{HushList}} -\newcommand{\Hushlists}{\termbf{HushLists}} -\newcommand{\HushLists}{\termbf{HushLists}} - -\newcommand{\doctitle}{BTCH Cryptocoin Specification} -\newcommand{\leadauthor}{Duke Leto} -\newcommand{\coauthora}{\;jl777} - -\newcommand{\keywords}{privacy coin, cryptocurrency, UTXOs, anonymity, freedom of speech, cryptographic protocols,\ -electronic commerce and payment, financial privacy, proof of work, zero knowledge, zkSNARKs} - -\hypersetup{ - pdfborderstyle={/S/U/W 0.7}, - pdfinfo={ - Title={\doctitle, \docversion}, - Author={\leadauthor, \coauthora}, - Keywords={\keywords} - } -} - -\makeatletter -\renewcommand*{\@fnsymbol}[1]{\ensuremath{\ifcase#1\or \dagger\or \ddagger\or - \mathsection\or \mathparagraph\else\@ctrerr\fi}} -\makeatother - -\renewcommand{\sectionautorefname}{\S\!} -\renewcommand{\subsectionautorefname}{\S\!} -\renewcommand{\subsubsectionautorefname}{\S\!} -\renewcommand{\subparagraphautorefname}{\S\!} -\newcommand{\crossref}[1]{\autoref{#1}\, \emph{`\nameref*{#1}\kern -0.05em'} on p.\,\pageref*{#1}} - -\newcommand{\nstrut}[1]{\texorpdfstring{#1\rule[-.2\baselineskip]{0pt}{\baselineskip}}{#1}} -\newcommand{\nsection}[1]{\section{\nstrut{#1}}} -\newcommand{\nsubsection}[1]{\subsection{\nstrut{#1}}} -\newcommand{\nsubsubsection}[1]{\subsubsection{\nstrut{#1}}} - -\newcommand{\introlist}{\needspace{15ex}} -\newcommand{\introsection}{\needspace{30ex}} - -\mathchardef\mhyphen="2D - -% http://tex.stackexchange.com/a/309445/78411 -\DeclareFontFamily{U}{FdSymbolA}{} -\DeclareFontShape{U}{FdSymbolA}{m}{n}{ - <-> s*[.4] FdSymbolA-Regular -}{} -\DeclareSymbolFont{fdsymbol}{U}{FdSymbolA}{m}{n} -\DeclareMathSymbol{\smallcirc}{\mathord}{fdsymbol}{"60} - -\makeatletter -\newcommand{\hollowcolon}{\mathpalette\hollow@colon\relax} -\newcommand{\hollow@colon}[2]{ - \mspace{0.7mu} - \vbox{\hbox{$\m@th#1\smallcirc$}\nointerlineskip\kern.45ex \hbox{$\m@th#1\smallcirc$}\kern-.06ex} - \mspace{1mu} -} -\makeatother -\newcommand{\typecolon}{\;\hollowcolon\;} - -% We just want one ampersand symbol from boisik. -\DeclareSymbolFont{bskadd}{U}{bskma}{m}{n} -\DeclareFontFamily{U}{bskma}{\skewchar\font130 } -\DeclareFontShape{U}{bskma}{m}{n}{<->bskma10}{} -\DeclareMathSymbol{\binampersand}{\mathbin}{bskadd}{"EE} - -\newcommand{\hairspace}{~\!} -\newcommand{\hparen}{\hphantom{(}} - -\newcommand{\hfrac}[2]{\scalebox{0.8}{$\genfrac{}{}{0.5pt}{0}{#1}{#2}$}} - - -\RequirePackage[usenames,dvipsnames]{xcolor} -% https://en.wikibooks.org/wiki/LaTeX/Colors#The_68_standard_colors_known_to_dvips -\newcommand{\todo}[1]{{\color{Sepia}\sf{TODO: #1}}} - -\newcommand{\changedcolor}{magenta} -\newcommand{\setchanged}{\color{\changedcolor}} -\newcommand{\changed}[1]{\texorpdfstring{{\setchanged{#1}}}{#1}} - -% terminology - -\newcommand{\term}[1]{\textsl{#1}\kern 0.05em\xspace} -\newcommand{\titleterm}[1]{#1} -\newcommand{\quotedterm}[1]{``~\!\!\term{#1}''} -\newcommand{\conformance}[1]{\textbnx{#1}\xspace} - -\newcommand{\Zcash}{\termbf{Zcash}} -\newcommand{\Hush}{\termbf{Hush}} -\newcommand{\Zerocash}{\termbf{Zerocash}} -\newcommand{\Bitcoin}{\termbf{Bitcoin}} -\newcommand{\Komodo}{\termbf{Komodo}} -\newcommand{\CryptoNote}{\termbf{CryptoNote}} -\newcommand{\ZEC}{\termbf{ZEC}} -\newcommand{\ZER}{\termbf{ZER}} -\newcommand{\ZEN}{\termbf{ZEN}} -\newcommand{\ZCL}{\termbf{ZCL}} -\newcommand{\KMD}{\termbf{KMD}} -\newcommand{\BTCH}{\termbf{BTCH}} -\newcommand{\BTCP}{\termbf{BTCP}} -\newcommand{\ZGLD}{\termbf{ZGLD}} -\newcommand{\HUSH}{\termbf{HUSH}} -\newcommand{\zatoshi}{\term{zatoshi}} -\newcommand{\puposhi}{\term{puposhi}} -\newcommand{\zcashd}{\textsf{zcashd}\,} -\newcommand{\hushd}{\textsf{hushd}\,} - -\newcommand{\MUST}{\conformance{MUST}} -\newcommand{\MUSTNOT}{\conformance{MUST NOT}} -\newcommand{\SHOULD}{\conformance{SHOULD}} -\newcommand{\SHOULDNOT}{\conformance{SHOULD NOT}} -\newcommand{\ALLCAPS}{\conformance{ALL CAPS}} - -\newcommand{\note}{\term{note}} -\newcommand{\notes}{\term{notes}} -\newcommand{\Note}{\titleterm{Note}} -\newcommand{\Notes}{\titleterm{Notes}} -\newcommand{\dummy}{\term{dummy}} -\newcommand{\dummyNotes}{\term{dummy notes}} -\newcommand{\DummyNotes}{\titleterm{Dummy Notes}} -\newcommand{\commitmentScheme}{\term{commitment scheme}} -\newcommand{\commitmentTrapdoor}{\term{commitment trapdoor}} -\newcommand{\commitmentTrapdoors}{\term{commitment trapdoors}} -\newcommand{\trapdoor}{\term{trapdoor}} -\newcommand{\noteCommitment}{\term{note commitment}} -\newcommand{\noteCommitments}{\term{note commitments}} -\newcommand{\NoteCommitment}{\titleterm{Note Commitment}} -\newcommand{\NoteCommitments}{\titleterm{Note Commitments}} -\newcommand{\noteCommitmentTree}{\term{note commitment tree}} -\newcommand{\NoteCommitmentTree}{\titleterm{Note Commitment Tree}} -\newcommand{\noteTraceabilitySet}{\term{note traceability set}} -\newcommand{\noteTraceabilitySets}{\term{note traceability sets}} -\newcommand{\joinSplitDescription}{\term{JoinSplit description}} -\newcommand{\joinSplitDescriptions}{\term{JoinSplit descriptions}} -\newcommand{\JoinSplitDescriptions}{\titleterm{JoinSplit Descriptions}} -\newcommand{\sequenceOfJoinSplitDescriptions}{\changed{sequence of} \joinSplitDescription\changed{\term{s}}\xspace} -\newcommand{\joinSplitTransfer}{\term{JoinSplit transfer}} -\newcommand{\joinSplitTransfers}{\term{JoinSplit transfers}} -\newcommand{\JoinSplitTransfer}{\titleterm{JoinSplit Transfer}} -\newcommand{\JoinSplitTransfers}{\titleterm{JoinSplit Transfers}} -\newcommand{\joinSplitSignature}{\term{JoinSplit signature}} -\newcommand{\joinSplitSignatures}{\term{JoinSplit signatures}} -\newcommand{\joinSplitSigningKey}{\term{JoinSplit signing key}} -\newcommand{\joinSplitVerifyingKey}{\term{JoinSplit verifying key}} -\newcommand{\joinSplitStatement}{\term{JoinSplit statement}} -\newcommand{\joinSplitStatements}{\term{JoinSplit statements}} -\newcommand{\JoinSplitStatement}{\titleterm{JoinSplit Statement}} -\newcommand{\joinSplitProof}{\term{JoinSplit proof}} -\newcommand{\statement}{\term{statement}} -\newcommand{\zeroKnowledgeProof}{\term{zero-knowledge proof}} -\newcommand{\ZeroKnowledgeProofs}{\titleterm{Zero-Knowledge Proofs}} -\newcommand{\provingSystem}{\term{proving system}} -\newcommand{\zeroKnowledgeProvingSystem}{\term{zero-knowledge proving system}} -\newcommand{\ZeroKnowledgeProvingSystem}{\titleterm{Zero-Knowledge Proving System}} -\newcommand{\ppzkSNARK}{\term{preprocessing zk-SNARK}} -\newcommand{\provingKey}{\term{proving key}} -\newcommand{\zkProvingKeys}{\term{zero-knowledge proving keys}} -\newcommand{\verifyingKey}{\term{verifying key}} -\newcommand{\zkVerifyingKeys}{\term{zero-knowledge verifying keys}} -\newcommand{\joinSplitParameters}{\term{JoinSplit parameters}} -\newcommand{\JoinSplitParameters}{\titleterm{JoinSplit Parameters}} -\newcommand{\arithmeticCircuit}{\term{arithmetic circuit}} -\newcommand{\rankOneConstraintSystem}{\term{Rank 1 Constraint System}} -\newcommand{\primary}{\term{primary}} -\newcommand{\primaryInput}{\term{primary input}} -\newcommand{\primaryInputs}{\term{primary inputs}} -\newcommand{\auxiliaryInput}{\term{auxiliary input}} -\newcommand{\auxiliaryInputs}{\term{auxiliary inputs}} -\newcommand{\fullnode}{\term{full node}} -\newcommand{\fullnodes}{\term{full nodes}} -\newcommand{\anchor}{\term{anchor}} -\newcommand{\anchors}{\term{anchors}} -\newcommand{\UTXO}{\term{UTXO}} -\newcommand{\UTXOs}{\term{UTXOs}} -\newcommand{\block}{\term{block}} -\newcommand{\blocks}{\term{blocks}} -\newcommand{\header}{\term{header}} -\newcommand{\headers}{\term{headers}} -\newcommand{\blockHeader}{\term{block header}} -\newcommand{\blockHeaders}{\term{block headers}} -\newcommand{\Blockheader}{\term{Block header}} -\newcommand{\BlockHeader}{\titleterm{Block Header}} -\newcommand{\blockVersionNumber}{\term{block version number}} -\newcommand{\blockVersionNumbers}{\term{block version numbers}} -\newcommand{\Blockversions}{\term{Block versions}} -\newcommand{\blockTime}{\term{block time}} -\newcommand{\blockHeight}{\term{block height}} -\newcommand{\blockHeights}{\term{block heights}} -\newcommand{\genesisBlock}{\term{genesis block}} -\newcommand{\transaction}{\term{transaction}} -\newcommand{\transactions}{\term{transactions}} -\newcommand{\Transactions}{\titleterm{Transactions}} -\newcommand{\transactionFee}{\term{transaction fee}} -\newcommand{\transactionFees}{\term{transaction fees}} -\newcommand{\transactionVersionNumber}{\term{transaction version number}} -\newcommand{\transactionVersionNumbers}{\term{transaction version numbers}} -\newcommand{\Transactionversion}{\term{Transaction version}} -\newcommand{\coinbaseTransaction}{\term{coinbase transaction}} -\newcommand{\coinbaseTransactions}{\term{coinbase transactions}} -\newcommand{\CoinbaseTransactions}{\titleterm{Coinbase Transactions}} -\newcommand{\transparent}{\term{transparent}} -\newcommand{\xTransparent}{\term{Transparent}} -\newcommand{\Transparent}{\titleterm{Transparent}} -\newcommand{\transparentValuePool}{\term{transparent value pool}} -\newcommand{\deshielding}{\term{deshielding}} -\newcommand{\shielding}{\term{shielding}} -\newcommand{\shielded}{\term{shielded}} -\newcommand{\shieldedXTN}{\term{shielded} $ t \rightarrow z $ transaction} -\newcommand{\shieldedXTNs}{\term{shielded} $ t \rightarrow z $ transactions} -\newcommand{\shieldedNote}{\term{shielded note}} -\newcommand{\shieldedNotes}{\term{shielded notes}} -\newcommand{\xShielded}{\term{Shielded}} -\newcommand{\Shielded}{\titleterm{Shielded}} -\newcommand{\blockchain}{\term{block chain}} -\newcommand{\blockchains}{\term{block chains}} -\newcommand{\mempool}{\term{mempool}} -\newcommand{\treestate}{\term{treestate}} -\newcommand{\treestates}{\term{treestates}} -\newcommand{\nullifier}{\term{nullifier}} -\newcommand{\nullifiers}{\term{nullifiers}} -\newcommand{\xNullifiers}{\term{Nullifiers}} -\newcommand{\Nullifier}{\titleterm{Nullifier}} -\newcommand{\Nullifiers}{\titleterm{Nullifiers}} -\newcommand{\nullifierSet}{\term{nullifier set}} -\newcommand{\NullifierSet}{\titleterm{Nullifier Set}} -% Daira: This doesn't adequately distinguish between zk stuff and transparent stuff -\newcommand{\paymentAddress}{\term{payment address}} -\newcommand{\paymentAddresses}{\term{payment addresses}} -\newcommand{\viewingKey}{\term{viewing key}} -\newcommand{\viewingKeys}{\term{viewing keys}} -\newcommand{\spendingKey}{\term{spending key}} -\newcommand{\spendingKeys}{\term{spending keys}} -\newcommand{\payingKey}{\term{paying key}} -\newcommand{\transmissionKey}{\term{transmission key}} -\newcommand{\transmissionKeys}{\term{transmission keys}} -\newcommand{\keyTuple}{\term{key tuple}} -\newcommand{\notePlaintext}{\term{note plaintext}} -\newcommand{\notePlaintexts}{\term{note plaintexts}} -\newcommand{\NotePlaintexts}{\titleterm{Note Plaintexts}} -\newcommand{\notesCiphertext}{\term{transmitted notes ciphertext}} -\newcommand{\incrementalMerkleTree}{\term{incremental Merkle tree}} -\newcommand{\merkleRoot}{\term{root}} -\newcommand{\merkleNode}{\term{node}} -\newcommand{\merkleNodes}{\term{nodes}} -\newcommand{\merkleHash}{\term{hash value}} -\newcommand{\merkleHashes}{\term{hash values}} -\newcommand{\merkleLeafNode}{\term{leaf node}} -\newcommand{\merkleLeafNodes}{\term{leaf nodes}} -\newcommand{\merkleInternalNode}{\term{internal node}} -\newcommand{\merkleInternalNodes}{\term{internal nodes}} -\newcommand{\MerkleInternalNodes}{\term{Internal nodes}} -\newcommand{\merklePath}{\term{path}} -\newcommand{\merkleLayer}{\term{layer}} -\newcommand{\merkleLayers}{\term{layers}} -\newcommand{\merkleIndex}{\term{index}} -\newcommand{\merkleIndices}{\term{indices}} -\newcommand{\zkSNARK}{\term{zk-SNARK}} -\newcommand{\zkSNARKs}{\term{zk-SNARKs}} -\newcommand{\libsnark}{\term{libsnark}} -\newcommand{\memo}{\term{memo field}} -\newcommand{\memos}{\term{memo fields}} -\newcommand{\Memos}{\titleterm{Memo Fields}} -\newcommand{\keyAgreementScheme}{\term{key agreement scheme}} -\newcommand{\KeyAgreement}{\titleterm{Key Agreement}} -\newcommand{\keyDerivationFunction}{\term{Key Derivation Function}} -\newcommand{\KeyDerivation}{\titleterm{Key Derivation}} -\newcommand{\encryptionScheme}{\term{encryption scheme}} -\newcommand{\symmetricEncryptionScheme}{\term{authenticated one-time symmetric encryption scheme}} -\newcommand{\SymmetricEncryption}{\titleterm{Authenticated One-Time Symmetric Encryption}} -\newcommand{\signatureScheme}{\term{signature scheme}} -\newcommand{\pseudoRandomFunction}{\term{Pseudo Random Function}} -\newcommand{\pseudoRandomFunctions}{\term{Pseudo Random Functions}} -\newcommand{\PseudoRandomFunctions}{\titleterm{Pseudo Random Functions}} - -% conventions -\newcommand{\bytes}[1]{\underline{\raisebox{-0.22ex}{}\smash{#1}}} -\newcommand{\zeros}[1]{[0]^{#1}} -\newcommand{\bit}{\mathbb{B}} -\newcommand{\Nat}{\mathbb{N}} -\newcommand{\PosInt}{\mathbb{N}^+} -\newcommand{\Rat}{\mathbb{Q}} -\newcommand{\typeexp}[2]{{#1}\vphantom{)}^{[{#2}]}} -\newcommand{\bitseq}[1]{\typeexp{\bit}{#1}} -\newcommand{\byteseqs}{\typeexp{\bit}{8\mult\Nat}} -\newcommand{\concatbits}{\mathsf{concat}_\bit} -\newcommand{\listcomp}[1]{[~{#1}~]} -\newcommand{\for}{\text{ for }} -\newcommand{\from}{\text{ from }} -\newcommand{\upto}{\text{ up to }} -\newcommand{\downto}{\text{ down to }} -\newcommand{\squash}{\!\!\!} -\newcommand{\caseif}{\squash\text{if }} -\newcommand{\caseotherwise}{\squash\text{otherwise}} -\newcommand{\sorted}{\mathsf{sorted}} -\newcommand{\length}{\mathsf{length}} -\newcommand{\mean}{\mathsf{mean}} -\newcommand{\median}{\mathsf{median}} -\newcommand{\clamp}[2]{\mathsf{clamp\,}_{#1}^{#2}} -\newcommand{\Lower}{\mathsf{lower}} -\newcommand{\Upper}{\mathsf{upper}} -\newcommand{\bitlength}{\mathsf{bitlength}} -\newcommand{\size}{\mathsf{size}} -\newcommand{\mantissa}{\mathsf{mantissa}} -\newcommand{\ToCompact}{\mathsf{ToCompact}} -\newcommand{\ToTarget}{\mathsf{ToTarget}} -\newcommand{\hexint}[1]{\mathbf{0x{#1}}} -\newcommand{\dontcare}{\kern -0.06em\raisebox{0.1ex}{\footnotesize{$\times$}}} -\newcommand{\ascii}[1]{\textbf{``\texttt{#1}"}} -\newcommand{\Justthebox}[2][-1.3ex]{\;\raisebox{#1}{\usebox{#2}}\;} -\newcommand{\hSigCRH}{\mathsf{hSigCRH}} -\newcommand{\hSigLength}{\mathsf{\ell_{hSig}}} -\newcommand{\hSigType}{\bitseq{\hSigLength}} -\newcommand{\EquihashGen}[1]{\mathsf{EquihashGen}_{#1}} -\newcommand{\CRH}{\mathsf{CRH}} -\newcommand{\CRHbox}[1]{\SHA\left(\Justthebox{#1}\right)} -\newcommand{\SHA}{\mathtt{SHA256Compress}} -\newcommand{\SHAName}{\term{SHA-256 compression}} -\newcommand{\FullHash}{\mathtt{SHA256}} -\newcommand{\FullHashName}{\mathsf{SHA\mhyphen256}} -\newcommand{\Blake}[1]{\mathsf{BLAKE2b\kern 0.05em\mhyphen{#1}}} -\newcommand{\BlakeGeneric}{\mathsf{BLAKE2b}} -\newcommand{\FullHashbox}[1]{\FullHash\left(\Justthebox{#1}\right)} -\newcommand{\setof}[1]{\{{#1}\}} -\newcommand{\range}[2]{\{{#1}\,..\,{#2}\}} -\newcommand{\minimum}{\mathsf{min}} -\newcommand{\maximum}{\mathsf{max}} -\newcommand{\floor}[1]{\mathsf{floor}\!\left({#1}\right)} -\newcommand{\trunc}[1]{\mathsf{trunc}\!\left({#1}\right)} -\newcommand{\ceiling}[1]{\mathsf{ceiling}\left({#1}\right)} -\newcommand{\vsum}[2]{\smashoperator[r]{\sum_{#1}^{#2}}} -\newcommand{\vxor}[2]{\smashoperator[r]{\bigoplus_{#1}^{#2}}} -\newcommand{\xor}{\oplus} -\newcommand{\band}{\binampersand} -\newcommand{\mult}{\cdot} -\newcommand{\rightarrowR}{\buildrel{\scriptstyle\mathrm{R}}\over\rightarrow} -\newcommand{\leftarrowR}{\buildrel{\scriptstyle\mathrm{R}}\over\leftarrow} - -% key pairs: -\newcommand{\PaymentAddress}{\mathsf{addr_{pk}}} -\newcommand{\PaymentAddressLeadByte}{\hexint{16}} -\newcommand{\PaymentAddressSecondByte}{\hexint{9A}} -\newcommand{\SpendingKeyLeadByte}{\hexint{AB}} -\newcommand{\SpendingKeySecondByte}{\hexint{36}} -\newcommand{\PtoSHAddressLeadByte}{\hexint{1C}} -\newcommand{\PtoSHAddressSecondByte}{\hexint{BD}} -\newcommand{\PtoPKHAddressLeadByte}{\hexint{1C}} -\newcommand{\PtoPKHAddressSecondByte}{\hexint{B8}} -\newcommand{\PaymentAddressTestnetLeadByte}{\hexint{16}} -\newcommand{\PaymentAddressTestnetSecondByte}{\hexint{B6}} -\newcommand{\SpendingKeyTestnetLeadByte}{\hexint{AC}} -\newcommand{\SpendingKeyTestnetSecondByte}{\hexint{08}} -\newcommand{\PtoSHAddressTestnetLeadByte}{\hexint{1C}} -\newcommand{\PtoSHAddressTestnetSecondByte}{\hexint{BA}} -\newcommand{\PtoPKHAddressTestnetLeadByte}{\hexint{1D}} -\newcommand{\PtoPKHAddressTestnetSecondByte}{\hexint{25}} -\newcommand{\NotePlaintextLeadByte}{\hexint{00}} -\newcommand{\AuthPublic}{\mathsf{a_{pk}}} -\newcommand{\AuthPrivate}{\mathsf{a_{sk}}} -\newcommand{\AuthPublicX}[1]{\mathsf{a^\mathrm{#1}_{pk}}} -\newcommand{\AuthPrivateX}[1]{\mathsf{a^\mathrm{#1}_{sk}}} -\newcommand{\AuthPrivateLength}{\mathsf{\ell_{\AuthPrivate}}} -\newcommand{\AuthPublicOld}[1]{\mathsf{a^{old}_{pk,\mathnormal{#1}}}} -\newcommand{\AuthPrivateOld}[1]{\mathsf{a^{old}_{sk,\mathnormal{#1}}}} -\newcommand{\AuthEmphPublicOld}[1]{\mathsf{a^{old}_{\textsf{\textbf{pk}},\mathnormal{#1}}}} -\newcommand{\AuthPublicOldX}[1]{\mathsf{a^{old}_{pk,\mathrm{#1}}}} -\newcommand{\AuthPrivateOldX}[1]{\mathsf{a^{old}_{sk,\mathrm{#1}}}} -\newcommand{\AuthPublicNew}[1]{\mathsf{a^{new}_{pk,\mathnormal{#1}}}} -\newcommand{\AuthPrivateNew}[1]{\mathsf{a^{new}_{sk,\mathnormal{#1}}}} -\newcommand{\AddressPublicNew}[1]{\mathsf{addr^{new}_{pk,\mathnormal{#1}}}} -\newcommand{\enc}{\mathsf{enc}} -\newcommand{\DHSecret}[1]{\mathsf{sharedSecret}_{#1}} -\newcommand{\EphemeralPublic}{\mathsf{epk}} -\newcommand{\EphemeralPrivate}{\mathsf{esk}} -\newcommand{\TransmitPublic}{\mathsf{pk_{enc}}} -\newcommand{\TransmitPublicSup}[1]{\mathsf{pk}^{#1}_\mathsf{enc}} -\newcommand{\TransmitPublicNew}[1]{\mathsf{pk^{new}_{\enc,\mathnormal{#1}}}} -\newcommand{\TransmitPrivate}{\mathsf{sk_{enc}}} -\newcommand{\TransmitPrivateSup}[1]{\mathsf{sk}^{#1}_\mathsf{enc}} - -% PRFs -\newcommand{\PRF}[2]{\mathsf{{PRF}^{#2}_\mathnormal{#1}}} -\newcommand{\PRFaddr}[1]{\PRF{#1}{addr}} -\newcommand{\PRFnf}[1]{\PRF{#1}{\nf}} -\newcommand{\PRFsn}[1]{\PRF{#1}{sn}} -\newcommand{\PRFpk}[1]{\PRF{#1}{pk}} -\newcommand{\PRFrho}[1]{\PRF{#1}{\NoteAddressRand}} -\newcommand{\PRFOutputLength}{\mathsf{\ell_{PRF}}} -\newcommand{\PRFOutput}{\bitseq{\PRFOutputLength}} - -% Commitments -\newcommand{\Commit}[1]{\mathsf{COMM}_{#1}} -\newcommand{\CommitTrapdoor}{\mathsf{COMM.Trapdoor}} -\newcommand{\CommitInput}{\mathsf{COMM.Input}} -\newcommand{\CommitOutput}{\mathsf{COMM.Output}} -\newcommand{\NoteCommit}{\mathtt{NoteCommitment}} -\newcommand{\Uncommitted}{\mathsf{Uncommitted}} - -% Symmetric encryption -\newcommand{\Sym}{\mathsf{Sym}} -\newcommand{\SymEncrypt}[1]{\mathsf{Sym.}\mathtt{Encrypt}_{#1}} -\newcommand{\SymDecrypt}[1]{\mathsf{Sym.}\mathtt{Decrypt}_{#1}} -\newcommand{\SymSpecific}{\mathsf{AEAD\_CHACHA20\_POLY1305}} -\newcommand{\SymCipher}{\mathsf{ChaCha20}} -\newcommand{\SymAuth}{\mathsf{Poly1305}} -\newcommand{\Ptext}{\mathsf{P}} -\newcommand{\Plaintext}{\mathsf{Sym.}\mathbf{P}} -\newcommand{\Ctext}{\mathsf{C}} -\newcommand{\Ciphertext}{\mathsf{Sym.}\mathbf{C}} -\newcommand{\Key}{\mathsf{K}} -\newcommand{\Keyspace}{\mathsf{Sym.}\mathbf{K}} -\newcommand{\TransmitPlaintext}[1]{\Ptext^\enc_{#1}} -\newcommand{\TransmitCiphertext}[1]{\Ctext^\enc_{#1}} -\newcommand{\TransmitKey}[1]{\Key^\enc_{#1}} -\newcommand{\Adversary}{\mathcal{A}} -\newcommand{\CryptoBoxSeal}{\mathsf{crypto\_box\_seal}} - -% Key agreement -\newcommand{\KA}{\mathsf{KA}} -\newcommand{\KAPublic}{\mathsf{KA.Public}} -\newcommand{\KAPrivate}{\mathsf{KA.Private}} -\newcommand{\KASharedSecret}{\mathsf{KA.SharedSecret}} -\newcommand{\KAFormatPrivate}{\mathsf{KA.}\mathtt{FormatPrivate}} -\newcommand{\KADerivePublic}{\mathsf{KA.}\mathtt{DerivePublic}} -\newcommand{\KAAgree}{\mathsf{KA.}\mathtt{Agree}} -\newcommand{\CurveMultiply}{\mathsf{Curve25519}} -\newcommand{\CurveBase}{\bytes{9}} -\newcommand{\Clamp}{\mathsf{clamp_{Curve25519}}} - -% KDF -\newcommand{\KDF}{\mathsf{KDF}} -\newcommand{\kdftag}{\mathsf{kdftag}} -\newcommand{\kdfinput}{\mathsf{kdfinput}} - -% Notes -\newcommand{\Value}{\mathsf{v}} -\newcommand{\ValueNew}[1]{\mathsf{v^{new}_\mathnormal{#1}}} -\newcommand{\ValueOld}[1]{\mathsf{v^{old}_\mathnormal{#1}}} -\newcommand{\NoteTuple}[1]{\mathbf{n}_{#1}} -\newcommand{\NoteType}{\mathsf{Note}} -\newcommand{\NotePlaintext}[1]{\mathbf{np}_{#1}} -\newcommand{\NoteCommitRand}{\mathsf{r}} -\newcommand{\NoteCommitRandLength}{\mathsf{\ell_{\NoteCommitRand}}} -\newcommand{\NoteCommitRandOld}[1]{\mathsf{r^{old}_\mathnormal{#1}}} -\newcommand{\NoteCommitRandNew}[1]{\mathsf{r^{new}_\mathnormal{#1}}} -\newcommand{\NoteAddressRand}{\mathsf{\uprho}} -\newcommand{\NoteAddressRandOld}[1]{\mathsf{\uprho^{old}_\mathnormal{#1}}} -\newcommand{\NoteAddressRandOldX}[1]{\mathsf{\uprho^{old}_\mathrm{#1}}} -\newcommand{\NoteAddressRandNew}[1]{\mathsf{\uprho^{new}_\mathnormal{#1}}} -\newcommand{\NoteAddressPreRand}{\mathsf{\upvarphi}} -\newcommand{\NoteAddressPreRandLength}{\mathsf{\ell_{\NoteAddressPreRand}}} -\newcommand{\NoteCommitS}{\mathsf{s}} -\newcommand{\cm}{\mathsf{cm}} -\newcommand{\cmOld}[1]{\mathsf{{cm}^{old}_\mathnormal{#1}}} -\newcommand{\cmOldX}[1]{\mathsf{{cm}^{old}_\mathrm{#1}}} -\newcommand{\cmNew}[1]{\mathsf{{cm}^{new}_\mathnormal{#1}}} -\newcommand{\snOldX}[1]{\mathsf{{sn}^{old}_\mathrm{#1}}} -\newcommand{\nf}{\mathsf{nf}} -\newcommand{\nfOld}[1]{\nf^\mathsf{old}_\mathnormal{#1}} -\newcommand{\Memo}{\mathsf{memo}} -\newcommand{\DecryptNote}{\mathtt{DecryptNote}} -\newcommand{\ReplacementCharacter}{\textsf{U+FFFD}} - -% Money supply -\newcommand{\MAXMONEY}{\mathsf{MAX\_MONEY}} -\newcommand{\BlockSubsidy}{\mathsf{BlockSubsidy}} -\newcommand{\MinerSubsidy}{\mathsf{MinerSubsidy}} -\newcommand{\FoundersReward}{\mathsf{FoundersReward}} -\newcommand{\SlowStartInterval}{\mathsf{SlowStartInterval}} -\newcommand{\SlowStartShift}{\mathsf{SlowStartShift}} -\newcommand{\SlowStartRate}{\mathsf{SlowStartRate}} -\newcommand{\HalvingInterval}{\mathsf{HalvingInterval}} -\newcommand{\MaxBlockSubsidy}{\mathsf{MaxBlockSubsidy}} -\newcommand{\NumFounderAddresses}{\mathsf{NumFounderAddresses}} -\newcommand{\FounderAddressChangeInterval}{\mathsf{FounderAddressChangeInterval}} -\newcommand{\FoundersFraction}{\mathsf{FoundersFraction}} -\newcommand{\BlockHeight}{\mathsf{height}} -\newcommand{\Halving}{\mathsf{Halving}} -\newcommand{\FounderAddress}{\mathsf{FounderAddress}} -\newcommand{\FounderAddressList}{\mathsf{FounderAddressList}} -\newcommand{\FounderAddressIndex}{\mathsf{FounderAddressIndex}} -\newcommand{\RedeemScriptHash}{\mathsf{RedeemScriptHash}} - -\newcommand{\blockSubsidy}{\term{block subsidy}} -\newcommand{\minerSubsidy}{\term{miner subsidy}} -\newcommand{\foundersReward}{\term{Founders' Reward}} -\newcommand{\slowStartPeriod}{\term{slow-start period}} -\newcommand{\halvingInterval}{\term{halving interval}} - -\newcommand{\PoWLimit}{\mathsf{PoWLimit}} -\newcommand{\PoWAveragingWindow}{\mathsf{PoWAveragingWindow}} -\newcommand{\PoWMedianBlockSpan}{\mathsf{PoWMedianBlockSpan}} -\newcommand{\PoWMaxAdjustDown}{\mathsf{PoWMaxAdjustDown}} -\newcommand{\PoWMaxAdjustUp}{\mathsf{PoWMaxAdjustUp}} -\newcommand{\PoWDampingFactor}{\mathsf{PoWDampingFactor}} -\newcommand{\PoWTargetSpacing}{\mathsf{PoWTargetSpacing}} -\newcommand{\MeanTarget}{\mathsf{MeanTarget}} -\newcommand{\MedianTime}{\mathsf{MedianTime}} -\newcommand{\AveragingWindowTimespan}{\mathsf{AveragingWindowTimespan}} -\newcommand{\MinActualTimespan}{\mathsf{MinActualTimespan}} -\newcommand{\MaxActualTimespan}{\mathsf{MaxActualTimespan}} -\newcommand{\ActualTimespan}{\mathsf{ActualTimespan}} -\newcommand{\ActualTimespanDamped}{\mathsf{ActualTimespanDamped}} -\newcommand{\ActualTimespanClamped}{\mathsf{ActualTimespanClamped}} -\newcommand{\Threshold}{\mathsf{Threshold}} -\newcommand{\ThresholdBits}{\mathsf{ThresholdBits}} - -\newcommand{\targetThreshold}{\term{target threshold}} -\newcommand{\targetThresholds}{\term{target thresholds}} - -% Signatures -\newcommand{\Sig}{\mathsf{Sig}} -\newcommand{\SigPublic}{\mathsf{Sig.Public}} -\newcommand{\SigPrivate}{\mathsf{Sig.Private}} -\newcommand{\SigMessage}{\mathsf{Sig.Message}} -\newcommand{\SigSignature}{\mathsf{Sig.Signature}} -\newcommand{\SigGen}{\mathsf{Sig.Gen}} -\newcommand{\SigSign}[1]{\mathsf{Sig.Sign}_{#1}} -\newcommand{\SigVerify}[1]{\mathsf{Sig.Verify}_{#1}} -\newcommand{\JoinSplitSig}{\mathsf{JoinSplitSig}} -\newcommand{\JoinSplitSigPublic}{\mathsf{JoinSplitSig.Public}} -\newcommand{\JoinSplitSigPrivate}{\mathsf{JoinSplitSig.Private}} -\newcommand{\JoinSplitSigMessage}{\mathsf{JoinSplitSig.Message}} -\newcommand{\JoinSplitSigSignature}{\mathsf{JoinSplitSig.Signature}} -\newcommand{\JoinSplitSigGen}{\mathsf{JoinSplitSig.Gen}} -\newcommand{\JoinSplitSigSign}[1]{\mathsf{JoinSplitSig.Sign}_{#1}} -\newcommand{\JoinSplitSigVerify}[1]{\mathsf{JoinSplitSig.Verify}_{#1}} -\newcommand{\JoinSplitSigSpecific}{\mathsf{Ed25519}} -\newcommand{\JoinSplitSigHashName}{\mathsf{SHA\mhyphen512}} -\newcommand{\EdDSAr}{R} -\newcommand{\EdDSAs}{S} -\newcommand{\EdDSAR}{\bytes{R}} -\newcommand{\EdDSAS}{\bytes{S}} -\newcommand{\RandomSeedLength}{\mathsf{\ell_{Seed}}} -\newcommand{\RandomSeedType}{\bitseq{\mathsf{\ell_{Seed}}}} -\newcommand{\pksig}{\mathsf{pk_{sig}}} -\newcommand{\sk}{\mathsf{sk}} -\newcommand{\hSigInput}{\mathsf{hSigInput}} -\newcommand{\dataToBeSigned}{\mathsf{dataToBeSigned}} - -% Merkle tree -\newcommand{\MerkleDepth}{\mathsf{d_{Merkle}}} -\newcommand{\MerkleNode}[2]{\mathsf{M}^{#1}_{#2}} -\newcommand{\MerkleSibling}{\mathsf{sibling}} -\newcommand{\MerkleCRH}{\mathsf{MerkleCRH}} -\newcommand{\MerkleHashLength}{\mathsf{\ell_{Merkle}}} -\newcommand{\MerkleHash}{\bitseq{\MerkleHashLength}} - -% Transactions -\newcommand{\versionField}{\mathtt{version}} -\newcommand{\txInCount}{\mathtt{tx\_in\_count}} -\newcommand{\txIn}{\mathtt{tx\_in}} -\newcommand{\txOutCount}{\mathtt{tx\_out\_count}} -\newcommand{\txOut}{\mathtt{tx\_out}} -\newcommand{\lockTime}{\mathtt{lock\_time}} -\newcommand{\nJoinSplit}{\mathtt{nJoinSplit}} -\newcommand{\vJoinSplit}{\mathtt{vJoinSplit}} -\newcommand{\vpubOldField}{\mathtt{vpub\_old}} -\newcommand{\vpubNewField}{\mathtt{vpub\_new}} -\newcommand{\anchorField}{\mathtt{anchor}} -\newcommand{\joinSplitSig}{\mathtt{joinSplitSig}} -\newcommand{\joinSplitPrivKey}{\mathtt{joinSplitPrivKey}} -\newcommand{\joinSplitPubKey}{\mathtt{joinSplitPubKey}} -\newcommand{\nullifiersField}{\mathtt{nullifiers}} -\newcommand{\commitments}{\mathtt{commitments}} -\newcommand{\ephemeralKey}{\mathtt{ephemeralKey}} -\newcommand{\encCiphertexts}{\mathtt{encCiphertexts}} -\newcommand{\randomSeed}{\mathtt{randomSeed}} -\newcommand{\Varies}{\textit{Varies}} -\newcommand{\heading}[1]{\multicolumn{1}{c|}{#1}} -\newcommand{\type}[1]{\texttt{#1}} -\newcommand{\compactSize}{\type{compactSize uint}} - -\newcommand{\sighashType}{\term{SIGHASH type}} -\newcommand{\sighashTypes}{\term{SIGHASH types}} -\newcommand{\SIGHASHALL}{\mathsf{SIGHASH\_ALL}} -\newcommand{\scriptSig}{\mathtt{scriptSig}} -\newcommand{\scriptPubKey}{\mathtt{scriptPubKey}} -\newcommand{\ScriptOP}[1]{\texttt{OP\_{#1}}} - -% Equihash and block headers -\newcommand{\validEquihashSolution}{\term{valid Equihash solution}} -\newcommand{\powtag}{\mathsf{powtag}} -\newcommand{\powheader}{\mathsf{powheader}} -\newcommand{\powcount}{\mathsf{powcount}} -\newcommand{\nVersion}{\mathtt{nVersion}} -\newcommand{\hashPrevBlock}{\mathtt{hashPrevBlock}} -\newcommand{\hashMerkleRoot}{\mathtt{hashMerkleRoot}} -\newcommand{\hashReserved}{\mathtt{hashReserved}} -\newcommand{\nTimeField}{\mathtt{nTime}} -\newcommand{\nTime}{\mathsf{nTime}} -\newcommand{\nBitsField}{\mathtt{nBits}} -\newcommand{\nBits}{\mathsf{nBits}} -\newcommand{\nNonce}{\mathtt{nNonce}} -\newcommand{\solutionSize}{\mathtt{solutionSize}} -\newcommand{\solution}{\mathtt{solution}} -\newcommand{\SHAd}{\term{SHA-256d}} - -% Proving system -\newcommand{\ZK}{\mathsf{ZK}} -\newcommand{\ZKProvingKey}{\mathsf{ZK.ProvingKey}} -\newcommand{\ZKVerifyingKey}{\mathsf{ZK.VerifyingKey}} -\newcommand{\pk}{\mathsf{pk}} -\newcommand{\vk}{\mathsf{vk}} -\newcommand{\ZKGen}{\mathsf{ZK.Gen}} -\newcommand{\ZKProof}{\mathsf{ZK.Proof}} -\newcommand{\ZKPrimary}{\mathsf{ZK.PrimaryInput}} -\newcommand{\ZKAuxiliary}{\mathsf{ZK.AuxiliaryInput}} -\newcommand{\ZKSatisfying}{\mathsf{ZK.SatisfyingInputs}} -\newcommand{\ZKProve}[1]{\mathsf{ZK.}\mathtt{Prove}_{#1}} -\newcommand{\ZKVerify}[1]{\mathsf{ZK.}\mathtt{Verify}_{#1}} -\newcommand{\Simulator}{\mathcal{S}} -\newcommand{\Distinguisher}{\mathcal{D}} -\newcommand{\JoinSplit}{\text{\footnotesize\texttt{JoinSplit}}} -\newcommand{\ZKJoinSplit}{\mathsf{ZK}_{\JoinSplit}} -\newcommand{\ZKJoinSplitVerify}{\ZKJoinSplit\mathsf{.Verify}} -\newcommand{\ZKJoinSplitProve}{\ZKJoinSplit\mathsf{.Prove}} -\newcommand{\ZKJoinSplitProof}{\ZKJoinSplit\mathsf{.Proof}} -\newcommand{\Proof}{\pi} -\newcommand{\JoinSplitProof}{\Proof_{\JoinSplit}} -\newcommand{\zkproof}{\mathtt{zkproof}} -\newcommand{\POUR}{\texttt{POUR}} -\newcommand{\Prob}[2]{\mathrm{Pr}\scalebox{0.88}{\ensuremath{ - \left[\!\!\begin{array}{c}#1\end{array} \middle| \begin{array}{l}#2\end{array}\!\!\right] -}}} - -% JoinSplit -\newcommand{\hSig}{\mathsf{h_{Sig}}} -\newcommand{\hSigText}{\texorpdfstring{$\hSig$}{hSig}} -\newcommand{\h}[1]{\mathsf{h_{\mathnormal{#1}}}} -\newcommand{\NOld}{\mathrm{N}^\mathsf{old}} -\newcommand{\NNew}{\mathrm{N}^\mathsf{new}} -\newcommand{\allN}[1]{\mathrm{1}..\mathrm{N}^\mathsf{#1}} -\newcommand{\allOld}{\allN{old}} -\newcommand{\allNew}{\allN{new}} -\newcommand{\setofOld}{\setof{\allOld}} -\newcommand{\setofNew}{\setof{\allNew}} -\newcommand{\vmacs}{\mathtt{vmacs}} -\newcommand{\GroupG}[1]{\mathbb{G}_{#1}} -\newcommand{\GroupGstar}[1]{\mathbb{G}^\ast_{#1}} -\newcommand{\PointP}[1]{\mathcal{P}_{#1}} -\newcommand{\xP}{{x_{\hspace{-0.12em}P}}} -\newcommand{\yP}{{y_{\hspace{-0.03em}P}}} -\newcommand{\AtInfinity}[1]{\mathcal{O}_{#1}} -\newcommand{\GF}[1]{\mathbb{F}_{#1}} -\newcommand{\GFstar}[1]{\mathbb{F}^\ast_{#1}} -\newcommand{\ECtoOSP}{\mathsf{EC2OSP}} -\newcommand{\ECtoOSPXL}{\mathsf{EC2OSP\mhyphen{}XL}} -\newcommand{\ECtoOSPXS}{\mathsf{EC2OSP\mhyphen{}XS}} -\newcommand{\ItoOSP}[1]{\mathsf{I2OSP}_{#1}} -\newcommand{\ItoBSP}[1]{\mathsf{I2BSP}_{#1}} -\newcommand{\FEtoIP}{\mathsf{FE2IP}} -\newcommand{\BNImpl}{\mathtt{ALT\_BN128}} -\newcommand{\vpubOld}{\mathsf{v_{pub}^{old}}} -\newcommand{\vpubNew}{\mathsf{v_{pub}^{new}}} -\newcommand{\nOld}[1]{\NoteTuple{#1}^\mathsf{old}} -\newcommand{\nNew}[1]{\NoteTuple{#1}^\mathsf{new}} -\newcommand{\vOld}[1]{\mathsf{v}_{#1}^\mathsf{old}} -\newcommand{\vNew}[1]{\mathsf{v}_{#1}^\mathsf{new}} -\newcommand{\RandomSeed}{\mathsf{randomSeed}} -\newcommand{\rt}{\mathsf{rt}} -\newcommand{\treepath}[1]{\mathsf{path}_{#1}} -\newcommand{\Receive}{\mathsf{Receive}} -\newcommand{\EnforceMerklePath}[1]{\mathsf{enforceMerklePath}_{~\!\!#1}} - - -\newcommand{\consensusrule}[1]{\needspace{3ex}\subparagraph{Consensus rule:}{#1}} -\newenvironment{consensusrules}{\introlist\subparagraph{Consensus rules:}\begin{itemize}}{\end{itemize}} -\newcommand{\securityrequirement}[1]{\needspace{3ex}\subparagraph{Security requirement:}{#1}} -\newenvironment{securityrequirements}{\introlist\subparagraph{Security requirements:}\begin{itemize}}{\end{itemize}} -\newcommand{\pnote}[1]{\subparagraph{Note:}{#1}} -\newenvironment{pnotes}{\introlist\subparagraph{Notes:}\begin{itemize}}{\end{itemize}} - -\newcommand{\affiliation}{\hairspace$^\dagger$\;} -\newcommand{\affiliationDuke}{\hairspace$^\ddagger$\;} - -\begin{document} - -\title{\doctitle \\ -\Large \docversion} -\author{ -\Large \leadauthor, \Large \coauthora -} -\date{\today} -\maketitle - -\renewcommand{\abstractname}{} -\vspace{-8ex} -\begin{abstract} -\normalsize \noindent \textbf{Abstract.} - - -Bitcoin Hush (\BTCH) is a new research and development cryptocoin which has -many unique features compared to existing options. It avoids all transaction -history and simply imports Unspent Transaction Output (UTXO) values for -four different blockchains onto a fifth "host chain", Komodo. We use the Komodo Asset Chain feature to build -a coin with delayed-Proof-of-Work, which enjoys the full security of Bitcoin -level security via notarization. - -Additionally, the need for the latest two way replay protection (2WRP) algorithms are -completely avoided, since no transaction hashes are leaked -onto the new chain. This also completely avoids the problem that many Bitcoin -forks have where they inherit a very large existing chain and must sync gigabytes -of data. - -We hope these techniques are utilized in all future Bitcoin and related forks -to avoid large inefficiencies as well as potential replay attacks. - -The recently released \HushList protocol is compatible with \BTCH, \KMD and -all \KMD asset chains, which all contain \zkSNARK technology. -Additionaly, \HushList is known to be compatible with -\HUSH, \ZEC, \ZCL, \ZEN, \ZER and the upcoming \BTCP. - - -\vspace{1.5ex} -\noindent This specification defines how the \BTCH cryptocoin works and how -how it builds on the foundation of \Komodo, \Zcash and \Bitcoin . - -\vspace{2.5ex} -\noindent \textbf{Keywords:}~ \StrSubstitute[0]{\keywords}{,}{, }. -\end{abstract} - -\vspace{-10ex} -\phantomsection -\addcontentsline{toc}{section}{\Large\nstrut{Contents}} - -\renewcommand{\contentsname}{} -% http://tex.stackexchange.com/a/182744/78411 -\renewcommand{\baselinestretch}{0.85}\normalsize -\tableofcontents -\renewcommand{\baselinestretch}{1.0}\normalsize -\newpage - - -\nsection{Introduction} - -\HushList is a protocol for anonymous mailing lists using the encrypted memo -field of the zcash protocol. - -Technical terms for concepts that play an important role in \Hushlist are -written in \term{slanted text}. \emph{Italics} are used for emphasis and -for references between sections of the document. - -The key words \MUST, \MUSTNOT, \SHOULD, and \SHOULDNOT in this -document are to be interpreted as described in \cite{RFC-2119} when they -appear in \ALLCAPS. These words may also appear in this document in -lower case as plain English words, absent their normative meanings. - -\vspace{2ex} -\introlist -This specification is structured as follows: - -\begin{itemize} - \item Notation | definitions of notation used throughout the document; - \item Concepts | the principal abstractions needed to understand the protocol; - \item Abstract Protocol | a high-level description of the protocol in terms - of ideal cryptographic components; - \item Concrete Protocol | how the functions and encodings of the abstract - protocol are instantiated; - \item Implications -\end{itemize} - -\nsubsection{High-level Overview} - -The following overview is intended to give a concise summary of the ideas behind -the protocol, for an audience already familiar with \blockchain-based -cryptocurrencies such as \Bitcoin or \Zcash. - -Value in \Hush is either \transparent or \shielded. Transfers of \transparent -value work essentially as in \Bitcoin and have the same privacy properties. -\xShielded value is carried by \notes, which specify an amount and a \payingKey. -The \payingKey is part of a \paymentAddress, which is a destination to which -\notes can be sent. As in \Bitcoin, this is associated with a private key that -can be used to spend \notes sent to the address; in \Hush this is called a -\spendingKey. - -\introlist -A \transaction can contain \transparent inputs, outputs, and scripts, which all -work as in \Bitcoin \cite{Bitcoin-Protocol}. It also contains a sequence of zero or -more \joinSplitDescriptions. Each of these describes a \joinSplitTransfer -which takes in a \transparent value and up to two input \notes, and produces a -\transparent value and up to two output \notes. - -\nsubsection{Types Of Transactions} - -All Zcash forks have what we will classify into FOUR categories of transactions. - -Let $ t \rightarrow t $ be called a \transparent transaction, which is identical to a \Bitcoin transaction, consisting entirely of transparent inputs and outputs. \HushList protocol implementations \MUSTNOT create \transparent transactions, they do not protect metadata in any way and lack memo fields. These transactions can be done with traditional wallet software and does not have any part in \HushList protocol. - -Let $ t \rightarrow z $ be called \shielding transactions, which takes transparent -value stored in UTXOs and transforms them to \xShielded value stored inside of \notes -which are protected by \zkSNARKs. - -Let $ z \rightarrow z $ be called \xShielded transactions, which take \xShielded value -from one \xShielded address to another, and is fully protected by \zkSNARKs. \HushList implementations \MUST support these transactions, and additionally \SHOULD educate users that they are the most private type of transaction, which minimized metadata leakage. - -Let $ z \rightarrow t $ be called \deshielding transactions, which take \xShielded value -stored in \notes in $z$ and transfer them to \UTXOs stored in $t$. \HushList \MUSTNOT create \deshielding transactions, as they leak metadata and can potentially link a previously \xShielded address $z$ to a transparent address $t$. \HushList implementation \SHOULD attempt to prevent, at all costs, accidentally sending to a $t$ address via the \zsendmany RPC command. - -An easy way to summarize the support transactions of \Hushlist is to say: All receivers must by \shielded addresses, senders can be either \transparent or \shielded addresses. - -Each \HushList \MUST have a default blockchain and network that it is attached to, and the default -chain \SHOULD be HUSH. The default network \MUST be assumed to be "mainnet" if not specified, similar to how the *master* branch is assumed in many Git commands if not specified. The user \MUST be able to set their GLOBAL default chain (not implemented yet) as well as a default chain for each list. - -Each list also has a tadd+zaddr dedicated to that list, so the user has dedicated addresses to send psuedo/anon messages, as well as default fee and amount. The default amount is -$ 0.0 $ and the default fee is currently $ 0.0001 $ but these numbers are subject to change. - -\HushList supports file attachments and embedding arbitrary binary data, it is not limited to ASCII. \HushList does not impose file size limits and network fees and CPU/RAM costs provide natural incentives for spammers to find cheaper and easier-to-access dumping grounds. - -\nsection{Design of \HushList} - -The design of \HushList is inspired by Git. The reference implementation is a command-line -program which is a very thin wrapper around an API, which is implemented as a various Perl modules. \HushList uses many of the same subcommands as Git which have intuitive meanings, -which provide "easy-onramps" to learn how to use the CLI. - -This document specifies a protocol and the authors provide a reference implementation of this protocol in cross-platform Perl which can be easily installed on millions of computers around the world via CPAN and other methods. - -\HushList should work across any platform that supports Perl and the coin being used. In this case, cryptocoins are much less portable than Perl, so Perl will not be the limiting factor. - -The reference implemenation is written in a maintainable and testable way such that it -can easily evolve as the Protocol evolves. - -It is hoped that in the future there will be many implementations of \HushList, running on -various blockchains and using various software stacks. The design of \HushList is compatible with Simple Payment Verification (SPV) light wallets and a future version of \HushList will learn to speak to an ElectrumX backend server, which natively supports Hush as of the upcoming 1.2.1 release. - -\nsection{Reference Implementation} - -The reference implementation is developed as Free Software under the GNU Public License Version 3 on Github at the following URL: - - https://github.com/leto/hushlist - -This code is still in active development, consider it EXPERIMENTAL and ONLY FOR DEVELOPERS at this point pending a security review. This is the bleeding edge, folks. - -The current reference implementation can send and receive memos, including files on disk or simple strings of text, as long as they are up to 512 bytes. - -Multipart \HushList memos (file attachments) and public HushLists are still in development. - -\nsection{Account Funding} - -On first run, \HushList creates a new shielded zaddress $z_F$ to fund transparent addresses for pseudonymous sending via the \zsendmany RPC method. - -It may be funded by the user from any taddr or zaddr with no loss of privacy. - -For each pseudonym the user sends from (may be globally used or per-list), a -taddr $t_L$ is created and a de-shielding transaction is done from $ z_F \rightarrow t_L $ which -will allow the user to send memos to the given \HushList on behalf of the $t_L$ pseudonym. -Since \HushList memos have, by default, an amount of $ 0.0 $, all the costs associated with using \HushList are network costs. Users may additionally add a non-zero amount to a \HushList memo. - -For each \HushList the user wants to be part of, \HushList will create a brand new zaddress $ z_L $ -(it \MUSTNOT reuse an existing address) and fund that address via a shielded $z \rightarrow z$ transaction between $z_F \rightarrow z_L$. - -If there are no taddr or zaddr funds in the entire wallet, \HushList \SHOULD present the user a taddr + zaddr which can be used to "top up" the current \HushList wallet from another wallet/exchange/etc. - -\nsection{\HushList Contacts} - -\HushList maintains a database of contacts which use the address as the unique ID and additional metadata. Since \HushList supports multiple blockchains, it \MUST have a contact database -for each chain. Each chain \MUST have it's own contact namespace, so you can have Bob on Hush and Bob and Zcash and they will not conflict. - -\HushList internally associates lists to Contacts, not the address of a contact. This allows the user to update the address of a contact in one place and things work correctly the next time the address of that contact is looked up. Lists contain Contacts and Contacts have addresses. - -A \HushList contact may only have ONE address, either taddr or zaddr, but not both. - -To have a taddr and zaddr for a person, you can simply create two contacts, such -as tBob and zBob. In terms of the metadata that is revealed when communicating with -tBob or zBob, they are quite different, and it is healthy for metadata minimization -to consider them as two different contacts. - -If one has the addresses for a set of contacts on multiple chains that are supported, -say ZEC, HUSH and KMD, then a user may send a memo to members across multiple blockchains -to ensure delivery and subvert censorship of a single chain. - -\nsection{\HushList Creation} - -\nsubsection{Private \HushLists} - -A private \HushList is simply a list of contacts stored locally and costs nothing. The -\Zcash protocol itself has a max of 54 recipients in a \zsendmany RPC currently, so \HushList implementations -should not allow lists with more than 54 recipients at this time. - -\nsubsection{Multi-Chain Private \HushLists} - -A user may choose to send a \HushList memo via multiple coins as long as there is a valid -address for each Hush Contact on for each coin. For example, if you have addresses for three of your friends on each of the \HUSH, \KMD and \ZEC chains, then you may choose to redundantly send a memo on all of the chains. This provides a backup of the data on the other chains should one of them be blocked (such as dropping any packets for certain peer-to-peer ports), filtered or temporarily inaccessible. - -Additionally a user may choose to send day-to-day memos on a inexpensive chain such as \HUSH -which has lower network difficulty and for things that need to have \Bitcoin-level security, an archive copy to \KMD can be sent. \KMD uses the delayed-Proof-Of-Work \cite{dPOW} algorithm ensuring that once the information is engraved on the Bitcoin blockchain, it would be required both blockchains in question to be compromised to prevent accessing the data. - -\nsubsection{Public \HushLists} - -A public \HushList means publishing the PRIVATE KEY of a taddr (or potentially a zaddr) -such that this address is no longer owned by a single individual. By intentially -publishing the PRIVATE KEY in a public place, the owner has put all FUNDS and more importantly, the metadata of all transactions to that address, in the public domain. - -By default, \HushList \MUST refuse to publicize the PRIVATE KEY of an address that has non-zero balance. \HushList implementations \SHOULD protect users from accidental monetary loss in every way possible. Even so, a user could accidentally send funds to an address that has been publicized and this very real confusion is still looking for good answers. - -Very recent developments in \Zcash might allow the potential to use "viewing keys" in the fture, but as this feature has not been fully merged to master at this time and lacks a RPC interface, \HushList chooses to use PRIVATE KEYS which are core \Zcash protocol that is well-supported in all forks. If "viewing keys" are one day to be used, that feature will need to be merged into multiple \Zcash forks, which does not seem likely in the near-term. - -Since creating a private \HushList requires making a transaction on the network to store data in the memo-field, it has a cost. This cost will be the fee of the transaction, most likely around 0.0001 but each chain is different and fees obviously change as blockchains get more active. - -\nsection{List Subscription} - -When the private key for a list is imported into HushList, either from the -blockchain, URI or manual entry, the private key is added to the user's wallet, -along with a user entered or approved name and description for the list (if -provided in on-chain or uri encoded metadata). HushList creates a unique -taddr + zaddr for each list so that the user may choose to send each message -to the list psuedonymously or anonymously or a mixture of both. There is no -loss of privacy to send memos to the same \HushList with a psuedonym tAlice -and an anon handle zBob if the user so chooses. - -Subscribing to a \HushList is completely free, it is simply the act of importing -data to your local wallet. - -To faciliate applications being able to uniquely identify public \HushLists we -introduce a new URL scheme where there username is the currency symbole of the -cryptocoin and the password field is the network, i.e. - - hushlist://COIN:NETWORK@K - -COIN can be the currency symbol of a compatible cryptocoin such as -HUSH (Hush) , KMD (Komodo) , ZEC (Zcash), ZCL (Zcash Classic), ZEN (ZenCash) and potentially BTCP (Bitcoin Private). - -NETWORK is will often be "mainnet" but this schema allows -for the very real use case of developers iterating through various testnets and -supports "sidenets" for those that want to isolate data from mainnet. - -K is the base58-formatted PRIVATE KEY as returned by the \textbf{dumpprivkey} RPC method of the associated coin. - -When COIN and NETWORK are omitted, they default to HUSH and "mainnet" respectively, so - - hushlist://K - -is equivalent to - - hushlist://HUSH:mainnet@K - - -\nsection{Sending To A List} - -One may send to a \HushList from a taddr (pen name, psuedonym) or zaddr -(anonymous shielded address) which is implemented in the client via -the \zsendmany RPC method. Up to 54 recepients may be in a single shielded -transaction. v1 of HushList only supports HushLists of this size, but v2 -may implement larger HushLists by breaking large recipient lists into multiple sends. - -One may send a string of text via the *send* subcommand or send the contents of a file via the *send-file* subcommand. If one sends a string of text, there is no metadata related to that at all, locally. It only exists encrypted in a memo field on the chain. If one uses the *send-file* command, it may be prudent to securely delete the file from the filesystem after it is sent, depending on the needs of the user. - -Each HushList has a dedicated default chain that it is attached to. When looking up -\HushList contacts for a given list, their address on that chain will be retreived. - -A unique feature of \HushList is that speech=money, so you may always attach a -non-zero amount of \HUSH, \ZEC, \KMD/etc to each memo to a \HushList. Currently you must -send each member of a \HushList the same amount in one memo, but you may send different amounts in different memos. - -\nsection{Receiving Messages} - -At any time later, after the transaction has entered the blockchain, memos -sent to a given address can be downloaded and viewed by those parties who -have valid private keys or viewing keys. - -Clients can poll the local full node periodically at a user specifiable -default interval OR, by default, the same as the average block time for the chain in question. -For the \Hush chain, this is 2.5 minutes. - -If for any reason a \HushList user wants to PROVE with cryptographic certaintity that -they knew certain information at a certain time, all they would need to do is publish -the PRIVATE KEY of an address which made the transaction that contains the information. - -This is the so-called "investigative journalist" or "whistle-blower" use case. An -individual can send themselves \HushList memos "just in case" they need to prove -something in the future. This can be considered "data as insurance". - -\nsection{Costs} - -Sending \HushList memos requires making a financial transaction and by default, -\HushList sends the recipient a transaction for 0.0 \HUSH (or \ZEC etc) with -the default network fee (currently 0.0001 for \ZEC+\HUSH). The fee amount \MUST -be configurable by the user. In the reference implementation of \HushList it -be changed via the HUSHLIST\_FEE environment variable. Additionally, every \HushList -has it's own configurable fee declared in the configuration file for that list. The -user may set a higher fee on some lists to ensure faster delivery while using lower -fees on other lists which are not as time sensitive. - -\nsection{Examples} - -The first \HushList memo was a $ t \rightarrow z $ transaction which also included -a non-zero amount of 0.055555 HUSH. It is viewable on the Hush block explorer here: - -https://explorer.myhush.org/tx/30a38c7ba0929efb7cd54d3b724d9eb1d9cb03f35381a94d889bc4cffb0593bf - -One may note that the zaddr associated with this transaction does not appear anywhere in the explorer, because -shielded addresses never show up directly in the public blockchain. Network transaction -analysis is not possible on zaddrs. The explorer only -shows that a JoinSplit occured and that change was given to a taddr. - -Nevertheless, the follow text is forever embedded in the 512 byte memo field of the above -transaction: - -\begin{quote} - A beginning is the time for taking the most delicate care that the balances are correct. - - -- "Manual of Muad'Dib" by the Princess Irulan -\end{quote} - -\begin{quote} - Once men turned their thinking over to machines in the hope that this would set them free. But that only permitted other men with machines to enslave them. - - -- Reverend Mother Gaius Helen Mohiam -\end{quote} - -\begin{quote} - Polish comes from the cities; wisdom from the desert. - - -- Arrakeen villager saying -\end{quote} - -\begin{quote} - Be prepared to appreciate what you meet. - - -- Fremen proverb -\end{quote} - -Note that the transaction -does leak the metadata of the amount, since it was a de-shielding transaction, from $ t \rightarrow z $. All \HushList memos have amount=0.0 by default so this is not normally a concern. - -\nsection{Metadata Analysis} - -The biggest concern for metadata leakage in \HushList is in de-shielding $t \rightarrow z$ transactions which leak amount metadata. - -The only time \HushList does a de-shielding transaction is when the local wallet has 0 shielded value and it must transfer value from a taddr OR when the user chooses to send from a psuedonymous taddr to a \HushList. - -The first case we call a "shielded top-up" and happens rarely but we would not want to always have the same default amount to "top-up" because that amount can be searched for on the public chain. For this reason, we add some noise to the exact amount of our topups. For instance, if the user wanted to move up to 1 HUSH, we would generate a random number between 0.9 and 1.0 and then subtract it from the top-up amount. Then all \HushList users wouldhave slightly different top-up amount instead of a few easily searchable amounts. - -In the second case, normal transactions will have amount=0 which will stand out and -network transaction analysis is possible. If these psuedonyms choose to actually send non-zero amounts, network analsysis can be made harder since most \HushList messages use amount=0. - -\nsection{User Stories} - -This section contains various "User Stories" of how potential users can use the various -features of the \HushList protocol to meet their needs. - -\nsubsection{"Pen Name" user story - Amanda} - -Let Amanda have a transparent address $ t_A $ and let there be a PUBLIC \Hushlist with shielded address $ z_L $. - -Amanda sends \HushList memos from $t_A$ to a PUBLIC \HushList with a de-shielding transaction, ie. - -$ t_A \rightarrow z_L $. - - Any person who is subscribed to this public \HushList will be able to see Amandas memos, -yet Amandas identity is "psuedonymous", i.e. everybody knows that every message from $ t_A$ is the same person, but her identity remains unknown. If at any time in the future, Amanda would like to *cryptographically prove* that she is the identity behind $t_A$, all she must do is publish the PRIVATE KEY of $t_A$. If any transparent value resides in $t_A$, it can simply be moved to another address before publication. - -Of course Amanda is free to never reveal her identity and remain a psuedonym indefinitely. - -Amanda needs to be concerned about her IP address being tied to $ t_A $ by a passive network attacker who records the Internet and is encouraged to use a proxy, Tor or other means depending on risk and operational security needs. - -"Oppressed Minority" user story - Francesca and Nicolau - -Francesca and Nicalau live in a place where their local religion/government/organization is oppressed by a larger religion/government/organication that controls everything around them, yet they still want to safely communicate. - -\nsubsection{"Security Researcher" user story - Gordon} - -Dana wants to communicate 0-day exploits about nation-state infrastructure to the people that run this critical infrastructure, without anybody else listening in on this very sensitive information. - -\nsubsection{"Whisteblower" user story - Martha} - -Martha has data about something that must be transported from internal-only systems, to external places, preferably many, while knowing that the data is not tampered with or even viewed until the appropriate time. - -\nsubsection{"Censored Journalist" user story - Billy} - -This is an extension of the "Pen Name" User Story. Let's say that for some reason a journalist Billy is already known publicly, but is censored from all media locally in various places. Billy can use HushList to publish his writing (and also source data, encrypted or not) to multiple blockchains to make it permanently mirrored across thousands of servers and very hard to censor. - -\nsection{Special Thanks} - -A special thanks to Daira Hopwood for an inspring Zcash Protocol document and for making -the \LaTeX infrastructure open source, which was used to make this document. HushList is -built on the shoulders of giants and to all the people that have made the Bitcoin and Zcash ecosystems what they are, thank you. - -Additionally, a special thanks to the Komodo Platform\cite{Komodo}, which has embraced Hush as one of the first cryptocoins to be added to their BarterDEX \cite{BarterDEX} atomic swap platform and continues to support the Hush Community in various ways. - -\nsection{References} - -\begingroup -\hfuzz=2pt -\renewcommand{\section}[2]{} -\renewcommand{\emph}[1]{\textit{#1}} -\printbibliography -\endgroup - -\end{document} diff --git a/whitepaper/btch/protocol.toc b/whitepaper/btch/protocol.toc deleted file mode 100644 index f13fc66..0000000 --- a/whitepaper/btch/protocol.toc +++ /dev/null @@ -1,51 +0,0 @@ -\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax -\defcounter {refsection}{0}\relax -\contentsline {section}{\relax \fontsize {14.4}{18}\selectfont Contents\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{1}{section*.1} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {1}Introduction\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{3}{section.1} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {1.1}High-level Overview\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{3}{subsection.1.1} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {1.2}Types Of Transactions\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{3}{subsection.1.2} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {2}Design of \textbf {HushList}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{4}{section.2} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {3}Reference Implementation\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{4}{section.3} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {4}Account Funding\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{section.4} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {5}\textbf {HushList}\xspace Contacts\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{section.5} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {6}\textbf {HushList}\xspace Creation\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{section.6} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {6.1}Private \textbf {HushLists}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{subsection.6.1} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {6.2}Multi-Chain Private \textbf {HushLists}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{5}{subsection.6.2} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {6.3}Public \textbf {HushLists}\xspace \rule [-.2\baselineskip ]{0pt}{\baselineskip }}{6}{subsection.6.3} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {7}List Subscription\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{6}{section.7} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {8}Sending To A List\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.8} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {9}Receiving Messages\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.9} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {10}Costs\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.10} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {11}Examples\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{7}{section.11} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {12}Metadata Analysis\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{8}{section.12} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {13}User Stories\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{8}{section.13} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {13.1}"Pen Name" user story - Amanda\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{8}{subsection.13.1} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {13.2}"Security Researcher" user story - Gordon\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{subsection.13.2} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {13.3}"Whisteblower" user story - Martha\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{subsection.13.3} -\defcounter {refsection}{0}\relax -\contentsline {subsection}{\numberline {13.4}"Censored Journalist" user story - Billy\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{subsection.13.4} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {14}Special Thanks\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{section.14} -\defcounter {refsection}{0}\relax -\contentsline {section}{\numberline {15}References\rule [-.2\baselineskip ]{0pt}{\baselineskip }}{9}{section.15} diff --git a/whitepaper/btch/protocol.ver b/whitepaper/btch/protocol.ver deleted file mode 100644 index 42fdb3c..0000000 --- a/whitepaper/btch/protocol.ver +++ /dev/null @@ -1 +0,0 @@ -\renewcommand{\docversion}{Version } \ No newline at end of file