@@ -380,10 +380,7 @@ with `shareWith` carrying the group's OCM Address. A federation share
380380is otherwise a standard OCM share, carrying every field REQUIRED by
381381[OCM] including the `protocol` object. All new server-to-server
382382messages use the existing `/notifications` endpoint with new
383- ` notificationType` values. A single new field is added to the Share
384- Creation Notification : ` encryption` (optional, present only for
385- encrypted resources), carrying all encryption-related parameters,
386- including the `resourceId`.
383+ ` notificationType` values.
387384
388385# Discovery
389386
@@ -1099,14 +1096,14 @@ a given epoch.
10991096The `resourceId` used in the AEAD associated data MUST be a stable
11001097identifier for the underlying file, consistent across all groups it is
11011098shared with. It identifies the resource, not a particular version of
1102- it. This ensures that the FK unwrapped by members of any group correctly
1103- decrypts the same ciphertext. The `providerId` values in separate share
1104- notifications, for the same resource, MUST differ, per the `providerId`
1105- definition in [OCM], but the `resourceId` in the AEAD associated data
1106- MUST be the same. This means that the `providerId` MUST NOT be reused
1107- as `resourceId`. The sending server is responsible for maintaining this
1108- stable `resourceId` and MUST send it in the `encryption` object of the
1109- share payload ({{share-creation}}).
1099+ it or a specific share. This ensures that the FK unwrapped by members
1100+ of any group correctly decrypts the same ciphertext. The `providerId`
1101+ values in separate share notifications, for the same resource, MUST
1102+ differ, per the `providerId` definition in [OCM], but the `resourceId`
1103+ in the AEAD associated data MUST be the same. This means that the
1104+ ` providerId ` MUST NOT be reused as `resourceId`. The sending server is
1105+ responsible for maintaining this stable `resourceId` and MUST send it
1106+ in the `encryption` object of the share payload ({{share-creation}}).
11101107
11111108# # File Key Wrapping {#file-key-wrapping}
11121109
@@ -1589,20 +1586,21 @@ Each notification MAY include the optional `encryption` field:
15891586 }
15901587 },
15911588 " encryption " : {
1589+ " resourceId " : " 3a02538b-aa54-42f2-8853-a38996e211b1"
15921590 " scheme " : " ocm-mls-1" ,
15931591 " cipher " : " AES-256-GCM" ,
1594- " resourceId " : " 3a02538b-aa54-42f2-8853-a38996e211b1"
15951592 }
15961593}
15971594~~~
15981595
1599- The `encryption` field is OPTIONAL. If absent, the resource is
1600- unencrypted and the share follows the standard OCM flow without
1601- modification. If present, it carries all encryption-related parameters :
1602- ` scheme` identifies the encryption scheme, for which this document
1603- defines `"ocm-mls-1"`; `resourceId` is the stable resource identifier
1604- described in {{resource-id}}; and `cipher` (REQUIRED when `encryption`
1605- is present) names the content AEAD that the resource is encrypted with
1596+ The `encryption` field is OPTIONAL as per [OCM] Share Creation
1597+ Notification specification. If absent, the resource is unencrypted.
1598+ If present, it MUST carry the encryption-related parameters according
1599+ to the [OCM] specification, where :
1600+ - ` resourceId` is the stable resource identifier described in
1601+ {{resource-id}}
1602+ - ` scheme` is to be set to `"ocm-mls-1"`
1603+ - ` cipher` names the content AEAD that the resource is encrypted with
16061604({{file-key-wrapping}}), one of the AEAD algorithms defined for HPKE
16071605([RFC9180] Section 7.3) : ` "AES-128-GCM"` , `"AES-256-GCM"`, or
16081606` "CHACHA20-POLY1305"` . The field signals that the FK is distributed via
@@ -1611,7 +1609,7 @@ epoch information is carried in the share notification. Member Servers
16111609always hold the current wrapped FK for each `(resourceId, groupId)` pair
16121610and use their current Group Key to unwrap it at access time.
16131611
1614- The Group Owner Server is not involved in the delivery of OCM share
1612+ The Group Owner Server is not involved in the delivery of OCM Share
16151613notifications. All other OCM notifications relating to a share, such as
16161614share updates and share deletions, are likewise sent directly from the
16171615sending server to each Member Server, referencing the share by its
0 commit comments