- From: Stefan Thomas <stefan@ripple.com>
- Date: Mon, 7 Mar 2016 12:57:15 -0800
- To: Interledger Community Group <public-interledger@w3.org>
- Message-ID: <CAFpK0Q2vpCEspCh2WXdy74X_y0AwCC9gJHo7Nc+MEFPEjTSDrg@mail.gmail.com>
Happy to share v2 of our proposal for a crypto-condition spec. I worked closely with Jehan Tremback who provided many of the new ideas in this version, big thanks to him. Thank you also to Tony Arcieri and Manu Sporny who provided feedback and input on v1. https://github.com/interledger/five-bells-condition/blob/feature/binary-merkle-v2/docs/spec.md - Pulled out certain fields from the base64 so that they are human readable (bitmask, max fulfillment length) - Created a canonical binary representation for conditions/fulfillments - in some use cases, crypto-conditions are used inside of binary protocols. We can actually use that same representation for the encoding of subconditions as well, so we need it anyway. - Explicitly defined the types (VARUINT, VARBYTES, VARARRAY) - that was obviously missing. - Simplified binary encoding by removing some of the more overzealous space-saving measures. We think that simplicity is an important design goal, so we're trying to remove some of the points of friction that Jehan ran into while working on his implementation of the spec. - Updated the threshold fulfillment format to consist of two separate arrays for conditions and fulfillments (shorter/easier to parse) - More details on weighted threshold feature - Added message_id feature for multi-message signing support - Added section explaining more about what this spec is and what features it provides - Defined deterministic sorting algorithm for threshold subconditions Direct link to the spec diff: https://github.com/interledger/five-bells-condition/compare/feature/binary-merkle...feature/binary-merkle-v2?name=feature%2Fbinary-merkle-v2&short_path=6e196c9#diff-6e196c98aaadaa54d9ba9bbe92a13320 With the new version, crypto-conditions effectively act as a multi-algorithm, multi-message, multi-level, multi-signature scheme. I'll be on the call on Wednesday to chat about the spec and next steps. This is still far from final, but it's getting closer to a complete, practical spec that we can migrate the reference implementation to.
Received on Monday, 7 March 2016 20:58:05 UTC