Skip to content

Commit

Permalink
Editors meeting #19 notes
Browse files Browse the repository at this point in the history
  • Loading branch information
crptmppt committed Apr 8, 2021
1 parent 6d8cb76 commit c2f1c17
Show file tree
Hide file tree
Showing 3 changed files with 169 additions and 2 deletions.
2 changes: 1 addition & 1 deletion BiweeklyMeetings/03-16-2021.md
Expand Up @@ -79,7 +79,7 @@ PR -> ‘Draft’: Needs format + approval.
**R** - right, this is a lot easier to consider implementing on something that has been agreed on as a standard...
**D** - It sounds like we want to wait at least a little bit to see where things go... What would we be waiting for and who would be writing the extension from here?
**S** - I can have Nico add the missing parts for 65 within two weeks.
**F** - This might be for a separate group - the CIP platform is not intent on saying which is better. Looking too far freezes us.
**F** - This might be for a separate group - the CIP platform is not intent on saying which is better. Looking too far freezes us.
**S** - I agree. And propose a/b options.
**D** - Happy to wait a reasonable ammont of time. Yes we don't want to block, but we could see if there is a consensus resolution that might make things easier. If we don't have to have competing CIPs, better. This isn't so urgent, no wallet yet implement it, if we can spend a little bit more time that everyone can agree on is worth it.
**R** - Let me know if there are unanswered technical questions and I will jump into it.
Expand Down
167 changes: 167 additions & 0 deletions BiweeklyMeetings/03-30-2021.md
@@ -0,0 +1,167 @@
**Table of Contents:**

- [Summary](#summary)
- [Editors Meeting Flow](#editors-meeting-flow)
- [March 30 2021 notes](#march-30-2021-notes)
* [Triage](#triage)
+ [PR71 - Update to CIP-0015](#Update-to-CIP-0015)
* [Last Check](#last-check)
N/A
* [Review](#review)
+ [PR57 - "Key Serialisation Formats"](#Key-Serialisation-Formats)
+ [PR69 - "Multi-signatures HD Wallets"](#Multi-signatures-HD-Wallets)
+ [PR75 - Update to CIP-0015](#Update-to-CIP-0015-1)
* [Discussions](#discussions)
* [Close](#close)
- [Extra](#extra)
* [Current CIPs in the CIP repository and their status](#current-cips-in-the-cip-repository-and-their-status)
* [CIP creation process as a Sequence Diagram](#cip-creation-process-as-a-sequence-diagram)
* [Understanding CIPs further](#understanding-cips-further)

## Summary

Rough writeup of 3/30/21 Editors meeting notes taken during that day's CIP meeting, to increase transparency and dialogue with the community regarding proposed changes, implementations and considerations.
<sub>_Notes might contain errors or miss pieces - call out issues as needed_
</sub>
Editors meetings are [public](https://www.crowdcast.io/cips-biweekly), [recorded](https://www.crowdcast.io/cips-biweekly) and [summarized](https://github.com/cardano-foundation/CIPs/tree/master/BiweeklyMeetings): do join and participate for discussions/PRs of significances to you.


## Editors Meeting Flow

- [x] **Triage/Review**: Some CIPs might fall out of grace or not get updated, a CIP that hasn’t seen activity for 3 months should be checked on, and appropriate action taken. Ex: did any of the recent changes obsolete current CIPs? Consider ‘Active’ -> ‘Obsolete’ transitions..
- [x] **Last Check**: Review of the PRIOR meetings Decisions - if no objection, apply change (effectively a two week lag from decision to action, as a grace period)
- [x] **New CIPs Review**: CIPs up for review should be looked over collectively, with discussion where needed. (on top of the asynchronous reviews)
PR -> ‘Draft’: Needs format + approval.
‘Draft’ -> ‘Proposed’: Needs a PLAN towards Active + implementation.
‘Proposed’ -> ‘Active’: Objective criteria as laid out observed, and consensus agreeing.
- [x] **Current Discussions**: What the current CIPs discussions are on social media / forums / Discord.
- [x] **Close**: Recap of actions taken and decisions. List the CIPs that are due for review. Distribution of the minutes via mailing list.

## March 30 2021 notes

**Attending Editors**: Matthias, Sebastien, Duncan, Frederic


### Triage

#### Update to CIP-0015
- ([PR71](https://github.com/cardano-foundation/CIPs/pull/71) - Update to CIP-0015)
**Matthias** - Sebastien added Test vectors in there. I feel that the whole Catalyst framework is moving faster than the CIP itself. We have quite a few PRs about this CIP-0015.
**Duncan** - Happy with it, Sam is no doubt correct.
**Sebastien** - The test vectors work, but they only work for Fund3 - and there's a separate PR, there's two basically for Catalyst. One is for the test vectors and the other is for adjusting the Catalyst specifications for Fund4: Fund4 adds a new key and also changes the signing scheme: you no longer sign the full metadata payload but rather now signing the hash of the payload. And so this PR, which is adding test-vectors, will need to be updated, because the vectors have changed. The other PR (?? which adjusts the specs, is still innacurate I believe.
=> Moved out and adding comment in the PR to touch/Update


### Last Check

N/A (PR61, see below)


### Review

#### Key Serialisation Formats
([PR57](https://github.com/cardano-foundation/CIPs/pull/57) - potential CIP-0016)
**Frederic** - This is looking at the various keys using accross Cardano.
**Matthias** - Inigo, a specialist cryptographer, has been reviewing this PR. The whole CIP is itself pretty straightforward, just putting down something that already exists and have a sanity check on it. And the feedback was positive. We knew it was designed by the previous cryptographer, and so now we have the ok from the new Cryptographer.
**Duncan** - So Inigo looked at PR57?
**M** - Yes. We had a chat and he wondered on the best way for feedback(if any) and I flagged that Github PR comment was the best way. He left a Review, although not part of the org. Review was OK. One note about Endianness - and the question was about specifically wording it out... But since it's generalized in most places as big-endian, it would be fine to leave as-is.
**D** - Really? It sounds as though it might be better form to simply note it as "Like in most other places, this is big Endian"
**F** - Moving the status to "Last-Check" (to be merged in two weeks).
=> Moved to Last Check (to be merged in two weeks)


#### Multi-signatures HD Wallets
([PR69](https://github.com/cardano-foundation/CIPs/pull/69) - potential CIP-1854)
**M** - This is putting down what we've been designing for the multi-sig wallets. This adds new derivation paths to the 4th level of the HD tree like we did for the staking key, but this one dedicated to multi-sig keys. This also describes how multisig wallets should work, discover addresses and communicate with each others using addresses and keys generated from this subtree. There is an implementation on the Cardano Wallet as we speak that is already here. It hasn't been added to the PR yet but might be added later to link and show how this work.
**D** - Does Emrugo have any peripheral plans for multisig generally?
**S** - We had some concern about no multisig coordination server. There are a lot of projects where it might be useful.
**M** - The server will happen, but is separate from this CIP. We've left out any sharing of the multisig, or the partial Tx here. But later, we'll expand with the coordination server, expected to be a partial publish-subscribe broker (you subscribe to specific channels, send your partial Tx in, and every listener gets it and can reply to the channel). This would be done ideally behind the scene by wallet software. This CIP is really how to manage the wallet keys in the context of shared wallets (called "shared" over multisig because can also be used in many context, for example Catalyst). The idea is to define a particular template for wallet: monetary scripts with placeholders as keys for each cosigners and every instance of that template instanciates all keys at a particular index. The same index is used for all cosigners, and if the same cosigner appears multiple time in the template, we also use the same keys index for a particular instance. All the keys are derived from the exact same part to the tree of all the different cosigners' wallets - which makes it easy for the wallet to keep track of what index to use for the next address, and discover their funds / to verify the addresses belonging to their cosigners.
**D** - It makes sense to break it down with the out of scope items (intermediate Txs etc).
**M** - We have a few drafts on that already
**D** - Let'sdiscuss further as this touches Alonzo
**M** - This CIP in the end is pretty straigthforward: All cosigners have the same index, so it makes it easy toverify. When you see a particular address you just have to discover your own key within it, and you know that all your cosigners have used the same key, and since you have your cosigners public keys and your index, you can
derive their child keys. All is derived from the structure itself, but we're also going about it sequentially. We're tracking with a Gap, so standard practice. It's an extension of CIP-1852. The second extension of it.
**D** - Examples were using purpose as '1852', shouldn't they be using 1854?
**M** - No, the role is changing but the purpose is the same.
**D** - How is the script template setup?
**M** - We use the exact same as a script but instead of a keyhash we use a cosignerID. The template is just a script with cosignerIDs and when instanciated you replace all cosignerIDs with proper keyhashes. So it has the same representation internally and also externally in interfaces we typically use json. We have a way to represent as json and the same approach for template for the template with cosigners for keyhash. The mapping of the cosigners is defined on the side.
**D** -
**M** - The only constraint is that you cannot change the template. Using a different one would be using a different account on your wallet. To be able to recover, you need to know your key, the template and your cosigners public key.
**D** - How complicated this all is
**M** - For the setup phase, when you don't have your cosigners public key... CosignerID is just 'cosigner#1' for example. In a way because there is a one ot one mapping it's the cosigners public key. We diddn't want to include the sharing of the key through the server and because the MCS isn't going to be secured anyhow. For now at this stage the better way is to talk to your cosigner directly effectively, through side channels you are secure over. Later on we might think of a protocol, but the implication is that the wallet needs to be created in a two-step-way. 1) Create the shared wallet (get your credentials from that) 2) share your credentials with the cosigners and collect theirs, finish the installation of the wallet.
**M** - This was reviewed by the Vaccuum Labs team by the way, who are also doing the HW Wallet impl. At this stage we know this work is 'ok': we've been able to do our own multisig test locally...
=> Moved to Last Check (to be merged in two weeks)


#### Update to CIP-0015
([PR75](https://github.com/cardano-foundation/CIPs/pull/75) - Update to CIP-0015: "Catalyst Registration Transaction")
**S** - Let's move this one to two weeks, still significant conversation here.
=> Send to 'Review' for next week



### Discussions

#### Update to CIP-0013
([PR61](https://github.com/cardano-foundation/CIPs/pull/61) - Update to CIP-0013: "Cardano URI Scheme")
**S** - I spoke with Nico about this and we're not going to make a proposal in the foreseable future that deviates. This one is approved as-is. Considering this as "Last Check' as this was discussed multiple times.
=> Merging NOW.

#### "Cardano Addresses"
[PR78](https://github.com/cardano-foundation/CIPs/pull/78) - "Cardano Addresses"
**M** - New PR for a "Cardano Addresses" CIP was submitted recently - it's not final yet but I want to put it on the radar - it specifies things that already exist but I've been getting a lot of questions so this is a good place to collect information. In the Shelley specs the Byron parts are mostly opaque... This is not pressing, but good to document.
**D** - Sensible to include.
=> Moved to 'Review' for next week



### Close

=> Merge **NOW**: [PR61 - Update to CIP-0013: "Cardano URI Scheme"](https://github.com/cardano-foundation/CIPs/pull/61) - Update to CIP-0013
=> Last Check: [PR57 - "Key Serialization Formats"](https://github.com/cardano-foundation/CIPs/pull/57) (tentative ‘CIP-0016’)
=> Last Check: [PR69 - "Multi-signatures HD Wallets"](https://github.com/cardano-foundation/CIPs/pull/69) (tentative 'CIP-1854')
=> Review/Triage next meeting: [PR71 - Update to CIP-0015: "Catalyst Registration Transaction"](https://github.com/cardano-foundation/CIPs/pull/71)- Update to CIP-0015
=> Review next meeting: [PR78 - "Cardano Addresses"](https://github.com/cardano-foundation/CIPs/pull/71) (tentative ‘CIP-xxxx’)
=> Review next meeting: [PR75 - Update to CIP-0015: "Catalyst Registration Transaction"](https://github.com/cardano-foundation/CIPs/pull/75) - Update to CIP-0015

---
## Extra

### Current CIPs in the CIP repository and their status

|# |Title | Status |
| ----------------- |:----------------|:-------------------- |
| 1 | [CIP Process](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0001) | Active |
| 2 | [Coin Selection Algorithms](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0002) | Draft |
| 3 | [Wallet key generation](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0003) | Draft |
| 4 | [Wallet Checksum](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0004) | Draft |
| 5 | [Common Bech32 Prefixes](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0005) | Draft |
| 6 | [Stake Pool Extended Metadata](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0006) | Draft |
| 7 | [Curve Pledge Benefit](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0007) | Draft |
| 8 | [Message Signing](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0008) | Draft |
| 9 | [Initial Parameters](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0009) | Draft |
| 10 | [Transaction Metadata Label Registry](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0010) | Draft |
| 11 | [Staking key chain for HD wallets](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0011) | Draft |
| 12 | [On-chain SPO-to-delegates communication](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0012) | Draft |
| 13 | [Cardano URI Scheme](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0013) | Draft |
| 14 | [User-facing Asset Fingerprint](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0014) | Draft |
| 15 | [Catalyst Registration Transaction](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0015) | Draft |
| 1852 | [HD Wallets for Cardano](https://github.com/cardano-foundation/CIPs/tree/master/CIP-1852) | Draft |
| 1853 | [HD Stake Pool Cold Keys](https://github.com/cardano-foundation/CIPs/tree/master/CIP-1853) | Draft |

:bulb: - For more details about Statuses, refer to [CIP1](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0001).


### CIP creation process as a Sequence Diagram

_"Alice has a Cardano idea she'd like to build more formally":_
![Mary interacting with community and editors for a Cardano Proposal](./sequence_diagram.png?raw=true "sequence_diagram.png")

### Understanding CIPs further

[![Cardano Improvement Proposals](https://img.youtube.com/vi/q7U10EfqXJw/0.jpg)](https://www.youtube.com/watch?v=q7U10EfqXJw)
[![The Cardano Effect Ep.94](https://img.youtube.com/vi/dnw7k7VKVyo/0.jpg)](https://www.youtube.com/watch?v=dnw7k7VKVyo)




2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -3,7 +3,7 @@
Cardano Improvement Proposals (CIPs) describe standards, processes; or provide general guidelines or information to the Cardano Community. It is a formal, technical communication process that exists off-chain.
The current process is described in details in [CIP1 - "CIP Process"](https://github.com/cardano-foundation/CIPs/blob/master/CIP-0001/CIP-0001.md).

### Current CIPs (as of 03/08/21)
### Current CIPs (as of 04/07/21)

|# |Title | Status |
| ----------------- |:----------------|:-------------------- |
Expand Down

0 comments on commit c2f1c17

Please sign in to comment.