Skip to content

Commit

Permalink
Update eth-secpm.md
Browse files Browse the repository at this point in the history
Added flow diagrams
  • Loading branch information
ramsesfv authored Apr 29, 2024
1 parent 69f2853 commit 35ceb46
Showing 1 changed file with 22 additions and 1 deletion.
23 changes: 22 additions & 1 deletion vac/70/eth-secpm.md
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,11 @@ These identifiers MUST be computed according to Section 5.2 of [RFC9420](https:/
Each member of a group presents a credential that provides one or more identities for the member and associates them with the member's signing key.
The identities and signing key are verified by the Authentication Service in use for a group.

Credentials MUST follow the specifications of section 5.3 of [RFC9420](https://datatracker.ietf.org/doc/rfc9420/).
Credentials MUST follow the specifications of section 5.3 of [RFC9420](https://datatracker.ietf.org/doc/rfc9420/).

Below follows the flow diagram for the generation of credentials.
Users MUST generate key pairs by themselves.
![credentials](https://github.com/vacp2p/rfc-index/assets/74050285/04011f8f-db01-4ae1-a720-1865d4c4d143)

### Message framing
Handshake and application messages use a common framing structure providing encryption to ensure confidentiality within the group, and signing to authenticate the sender.
Expand Down Expand Up @@ -499,6 +503,11 @@ ProposalType proposal_types<V>;
CredentialType credential_types<V>;
}
```
The flow diagram shows the procedure to fetch key material from other users:
![fetching](https://github.com/vacp2p/rfc-index/assets/74050285/a74a648c-ae18-4b38-9df4-b347949997d9)

Below follows the flow diagram for the creation of a group:
![group_creation](https://github.com/vacp2p/rfc-index/assets/74050285/ce8bc861-f3be-4e93-80c9-b0f07c758c71)

### Group evolution
Group membership can change, and existing members can change their keys in order to achieve post-compromise security.
Expand Down Expand Up @@ -543,6 +552,18 @@ The validation MUST be done according to one of the procedures described in Sect
When creating or processing a Commit, a client applies a list of proposals to the ratchet tree and `GroupContext`.
The client MUST apply the proposals in the list in the order described in Section 12.3 of [RFC9420](https://datatracker.ietf.org/doc/rfc9420/).

Below follows the flow diagram for the addition of a member to a group:
![group_addition](https://github.com/vacp2p/rfc-index/assets/74050285/b6ac69b1-5c0a-49de-b8f5-67d85711bfe3)

The diagram below shows the procedure to remove a group member:
<br>
![group_removal](https://github.com/vacp2p/rfc-index/assets/74050285/f7bb8761-e971-4b04-abc6-f42027965503)

The flow diagram below shows an update procedure:
<br>
![update](https://github.com/vacp2p/rfc-index/assets/74050285/6a37eda4-d9cb-4e02-946a-821481cb3397)


### Commit messages
Commit messages initiate new group epochs.
It informs group members to update their representation of the state of the group by applying the proposals and advancing the key schedule.
Expand Down

0 comments on commit 35ceb46

Please sign in to comment.