Commit Graph

650 Commits

Author SHA1 Message Date
Daira Hopwood 49ab63e322 Correct explanation of commitments in overview to apply to Sapling.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:23:20 +01:00
Daira Hopwood 9cfe4b9243 Move the section on Sprout dummy notes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:23:20 +01:00
Daira Hopwood 69762401ec Caveat the claim about note traceability set in the overview.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:23:20 +01:00
Daira Hopwood fa9bd00e49 Explicitly note that outputs from coinbase transactions include Founders' Reward outputs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:22:06 +01:00
Daira Hopwood 36cfb95cec Sprout only -> Pre-Sapling.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:22:06 +01:00
Daira Hopwood 1a383e60f7 Sapling consensus changes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:22:06 +01:00
Daira Hopwood 6e6704411d Curve25519 -> \KASproutCurve; Ed25519 clarifications.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-20 04:19:28 +01:00
Daira Hopwood 7234e33f21 References for optimal ate pairings.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-19 18:53:52 +01:00
Daira Hopwood 07221bc89c Change citation keys to abbreviate fewer author names; other minor bibliography fixes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-19 18:49:29 +01:00
Daira Hopwood 2bb48c67eb Cosmetics and minor corrections.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-19 18:03:52 +01:00
Daira Hopwood 34181a7701 Refactor signature definitions and add public-to-private key homomorphism abstraction.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-12 22:26:09 +01:00
Daira Hopwood 1fe6f0a0b1 Make the Description columns of tables ragged-right.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-11 07:46:34 +01:00
Daira Hopwood 052188d218 Move some of the LaTeX hacks around to put potentially document-independent stuff first.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-11 07:41:02 +01:00
Daira Hopwood cda5339eba Correct an error in the Montgomery addition formulae (the constraints were correct).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-10 21:48:35 +01:00
Daira Hopwood 2109a721e6 Cosmetics and trivial corrections.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-10 21:46:19 +01:00
Daira Hopwood 9d18ef7fe8 Bibliography cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-07 18:57:50 +01:00
Daira Hopwood b95eaf6889 Makefile improvements to ensure optimized PDFs are only written once.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-05 16:07:36 +01:00
Daira Hopwood a5408376bd Tweaks to pdfsizeopt options.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-05 16:07:36 +01:00
Daira Hopwood cfa437b3e8 Tweaks to HTML generation options and documentation.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-05 16:07:36 +01:00
Daira Hopwood c3fae92bb4 Support for building size-optimized PDFs, and other Makefile and README improvements.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-04-05 16:07:36 +01:00
Daira Hopwood 0ce9a44e66 Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-19 00:03:39 +00:00
Daira Hopwood 40ec72bb46 Add specification of Output statement.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-19 00:01:25 +00:00
Daira Hopwood d029d67779 Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 23:57:09 +00:00
Daira Hopwood fc71b29163 Minor clarifications.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 23:54:36 +00:00
Daira Hopwood bffc16b0ee Updates to transaction format and consensus rules for Overwinter and Sapling.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 22:02:42 +00:00
Daira Hopwood a6245e3f68 Clarify conversions between bit and byte sequences.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:45:27 +00:00
Daira Hopwood 9498de38f9 Updates to Sapling construction, changing how the nullifier is computed and separating it from the randomized spend verifying key (rk).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:43:57 +00:00
Daira Hopwood 9d96abe629 Change MerkleDepth^Sapling from 29 to 32. Fixes #143
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:17 +00:00
Daira Hopwood d63c0f5f0f Clarify bit ordering of SHA-256 and SHA256Compress.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:17 +00:00
Daira Hopwood 5cac8e9b6a The first rule of Fork Club is: We don't talk about "forks".
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:17 +00:00
Daira Hopwood 108fa4daa0 Add DiversifyHash, and change the type of diversifiers to a bit sequence.
Fix the generation of diversified addresses to repeatedly try diversifiers.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:17 +00:00
Daira Hopwood 752156da97 Minor corrections and improvements; add missing notation definitions.
Remove things from Sprout spec that shouldn't be there.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:17 +00:00
Daira Hopwood a8052562e4 Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:16 +00:00
Daira Hopwood b19733320c Replace \nstrut hack (for consistent spacing in table of contents) with a better, less intrusive hack.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:16 +00:00
Daira Hopwood 6995ada467 Makefile improvements to avoid a reload for each run of pdflatex (and occasional hangs due to a partially written PDF), in PDF readers that monitor files.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-18 21:00:16 +00:00
Daira Hopwood 58fe013949 Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 21:46:11 +00:00
Daira Hopwood aeab72d534 Update Change History.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 21:36:55 +00:00
Daira Hopwood 2fa37c1f1f Improve security definitions for signatures.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 21:31:33 +00:00
Daira Hopwood cd930a18be Clean up diversification.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 21:31:18 +00:00
Daira Hopwood de01f6ed18 Various minor improvements and cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 21:29:49 +00:00
Daira Hopwood 877ce30283 Simplify FindGroupHash to use a single-byte index.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 21:22:53 +00:00
Daira Hopwood b44beb7141 Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 17:44:17 +00:00
Daira Hopwood 38b460aa6f Appendix A updates:
* categorize components into larger sections
* fill in the [de]compression and validation algorithm
* more precisely state the assumptions for inputs and outputs
* delete not-all-one component which is no longer needed
* factor out xor into its own component
* specify [un]packing more precisely; separate it from boolean constraints
* optimize checking for non-small order
* notation in variable-base multiplication algorithm.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 17:42:49 +00:00
Daira Hopwood 1b1acc05d7 Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 17:27:43 +00:00
Daira Hopwood 4443e647ec fixup 2018-03-11 17:09:42 +00:00
Daira Hopwood 618e6ebf37 Change Uncommitted^Sapling to be a u-coordinate for which there is no point on the curve.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 17:09:32 +00:00
Daira Hopwood f55ad120ff Minor corrections and improvements.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 14:02:22 +00:00
Daira Hopwood 7cde004f83 Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 14:00:00 +00:00
Daira Hopwood 96cfbe9232 Cosmetics: use 'Of' macros.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 12:49:42 +00:00
Daira Hopwood 03918a759c Don't use cofactor multiplication in derivation of nf.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 12:49:42 +00:00
Daira Hopwood 757cc5b7b4 negligible -> insignificant. refs #92
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 12:49:42 +00:00
Daira Hopwood 87efd20a9c Change PRF^nr to produce computationally uniform output.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 12:49:42 +00:00
Daira Hopwood 82d794060d Change how (ask, rsk) are derived from sk.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-11 12:49:42 +00:00
Daira Hopwood 963987d5cd Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-10 21:06:47 +00:00
Daira Hopwood 678ec1043f Bitbox cosmetics (use \strut to ensure consistent vertical alignment).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-10 21:00:27 +00:00
Daira Hopwood ebd2a5964e Macro refactoring.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-10 20:47:34 +00:00
Daira Hopwood 76f3b1d0fd Add comments at closing braces saying which construct is being closed.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-10 04:11:23 +00:00
Daira Hopwood 2924ff85e1 Add space between bibliography entries.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-10 04:03:29 +00:00
Daira Hopwood cda5cd5c7b Use less distracting colours for hyperlinks.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-10 04:03:08 +00:00
Daira Hopwood f27f528724 Update PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 19cd38b782 Update Change History for 2018.0-beta-12.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood cf0c5a47e6 Update Merkle hashes, add unused layer argument to MerkleHash^Sprout.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 39780602bf WIP on Sapling statements.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood a6b342f22e Additions to Appendix A: packing modulo the field size, and range checks.
Also update some notes.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood b198e08388 Rename "raw" to "homomorphic" Pedersen commitments
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 77ee3b4fc4 Update algorithm for variable-base scalar multiplication to what is
implemented in sapling-crypto.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 34bae57edb Add definition of PRF^nr.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 79c5c67906 Add re-randomizable signature section.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood e6c507c995 Cosmetic bibliography changes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood bb79519d1b Add Overwinter ZIPs and update section on Overwinter/Sapling transitions.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood e21a090af8 Add references [FKMSSS2016] and [CDG1987].
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 63843cf2d3 Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-03-06 23:09:15 +00:00
Daira Hopwood 7c3e4a765e Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 11:50:00 +00:00
Daira Hopwood 2b2238b0b5 Minor improvements.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 11:44:33 +00:00
Daira Hopwood 8d9b9a00b8 Fix range of ivk.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 11:44:01 +00:00
Daira Hopwood 9f67a5d977 Cosmetics and trivial fixes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 11:42:52 +00:00
Daira Hopwood 625d35fce7 Add sections on Spend and Output descriptions.
Swap order of cv and rt in a Spend description for consistency.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 11:41:15 +00:00
Daira Hopwood c16011243b Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 09:45:44 +00:00
Daira Hopwood 977d881064 Work in progress.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-26 09:44:19 +00:00
Daira Hopwood a626f28117 Cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-24 03:15:09 +00:00
Daira Hopwood 59331fca67 SHA fixup 2018-02-24 02:08:14 +00:00
Daira Hopwood bf9bd313a2 Add BLAKE2 section.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-24 02:05:09 +00:00
Daira Hopwood 9ee098adda Add SHA-256 section; clarify the definition of SHA256Compress.
Rename SHA-256 and hash-box macros.
fixes #100

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-24 01:56:32 +00:00
Daira Hopwood e1ac22992d Add fact[s] macros.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-14 08:04:45 +00:00
Daira Hopwood 518c7da42d Add a macro for cross-referencing theorems.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-14 08:02:10 +00:00
Daira Hopwood efd8551ddf Fill in Appendix A description of Pedersen hashes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:21:21 +00:00
Daira Hopwood ce5b24f72f WIP for commitments in Appendix A.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:21:21 +00:00
Daira Hopwood 99ad9689e9 Generalize Pedersen hash spec to make chunks per segment variable.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:21:21 +00:00
Daira Hopwood 0325aa2fd6 Generalize the distinct-x proof to allow negative indices.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:21:21 +00:00
Daira Hopwood 25fd603a7e Notation.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:16:36 +00:00
Daira Hopwood eefd9052d6 Nicer notation for selection of u and v.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:16:36 +00:00
Daira Hopwood 50720eadb6 Change hex integers to mathtt font (to enable length comparison).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:16:36 +00:00
Daira Hopwood d1ead6560d Correct an error in the Pedersen hash specification.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:16:36 +00:00
Daira Hopwood a5759a0c04 PRF^nr must be collision-resistant.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-12 13:16:36 +00:00
Daira Hopwood 002983854a Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-10 11:32:08 +00:00
Daira Hopwood 04aa3a5350 Bibliography cosmetics.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-10 11:30:52 +00:00
Daira Hopwood 28c67daf9a Specify GroupHash and Pedersen hashes.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-10 11:30:37 +00:00
Daira Hopwood a871fc52d3 Specify coinbase constraints. fixes #81
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-08 22:24:14 +00:00
Daira Hopwood ce66c0e31b Lifting the 100000-byte transaction size limit is likely to be delayed to Sapling.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-08 22:23:02 +00:00
Daira Hopwood 258110f4e1 Regenerate PDFs.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2018-02-08 01:25:15 +00:00