Comments (8)
Let's plan that (unless things change), what we ship in the Zcash 1.0 product will be the Zcash-protocol-v2.1.
Which will be the thing that we implement after we learn from implementing and reviewing Zcash-protocol-v2.0.
Which is the thing that Daira is currently writing a spec of.
from zips.
Ok, so we'll have an N.K version scheme to signal N's are new features and K are "security / bug / implementation feasibility" refinements only.
Edit: I asked a question, but Zooko's probably swamped, so I changed my question to an assertion. ;-)
from zips.
Eh, I guess. I don't want to think that hard about it or to commit to a specific policy. I just want to call that thing 2.1. Being consistent about it or documenting our intent isn't that important to me.
from zips.
The version with the Faerie Gold fix identifies itself as Zerocash Protocol version 2.0-draft-1. The draft number will increment on each feature addition/bugfix. Does that work for everyone?
from zips.
That works.
I'm a bit concerned on the scope of the draft. I would like to clean up the current circuit significantly (and compare it to what we have written) before we fix Faerie Gold (and everything else), so that we know we're doing everything right and not missing anything. Is the draft mixing "clarifications of the existing protocol" with "changes to the existing protocol"?
from zips.
The encryption changes and the Faerie Gold fix are in their own pull requests (although the latter branch includes the former). Also, those branches mark all of the changes they make in a different colour. I intend to maintain this separation and "backport" any structural/terminology/completeness improvements I make onto the master branch. (That will take some work but I think it's worth doing.)
from zips.
The coloring alone satisfies my question.
from zips.
The spec is now explicitly versioned.
from zips.
Related Issues (20)
- "Section 4.16. Note Commitments and Nullifiers" does not specify commitments HOT 1
- [protocol spec] [ZIP 212] "ยง 4.7.2: Sending Notes (Sapling)" has `esk` and `rcm` constants backwards HOT 5
- [protocol spec] 5.6.3.1 Sapling Payment Addresses does not require that DiversifyHash^Sapling(d) โ โฅ
- Make a note in 4.2.2 that the use of DerivePublic is correctly typed
- [protocol spec] [ZIP 216] Sapling pk_d should not allow the zero point
- [protocol spec] Document in 4.9 the security requirement that the note commitment tree must (at least for Sapling) be positionally binding
- [protocol spec] Document security consequences (none for Zcash) of a distinguisher on FF1 HOT 2
- [ZIP 209 update] Introduce transparent consistency check
- [protocol spec] Missing specification for mempool lock time check HOT 1
- [protocol spec] [ZIP 216] Document that it is possible to apply ZIP 216 retroactively
- ZIP 401 uses serialized size to calculate cost but the zcashd implementation uses RecursiveDynamicUsage HOT 2
- [ZIP 332] Wallet Recovery from zcashd HD Seeds HOT 2
- Descriptions of signature fields should reference the section that specifies their validation
- Section 5.6 of the protocol spec should say that UIVKs and UFVKs are encoded using Bech32m
- ZIP 317: clarify that tx_{in,out}_total_size do not include the sizes of tx_{in,out}_count
- [ZIP 230] Transaction V6 HOT 1
- Standardize a protocol for creating shielded transactions offline HOT 3
- Specify light wallet protocol changes as an update to ZIP 307 HOT 1
- ZIP 317: explicitly take into account dependent transactions in the block template construction algorithm
- [protocol spec] Minor nit in notes on Orchard Key Components section
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zips.