From e67ba0cd05e9021386253bace2be136f3cec0a11 Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Fri, 20 Mar 2020 16:49:53 -0400 Subject: [PATCH] add note indicating similarity between key backup format and key exports also copy description of forwarding_curve25519_key_chain from key exports, since it's a better description --- specification/modules/end_to_end_encryption.rst | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/specification/modules/end_to_end_encryption.rst b/specification/modules/end_to_end_encryption.rst index 636909243..a1ce68f68 100644 --- a/specification/modules/end_to_end_encryption.rst +++ b/specification/modules/end_to_end_encryption.rst @@ -861,12 +861,14 @@ The ``session_data`` field in the backups is constructed as follows: algorithm string Required. The end-to-end message encryption algorithm that the key is for. Must be ``m.megolm.v1.aes-sha2``. + forwarding_curve25519_key_chain [string] Required. Chain of Curve25519 keys + through which this session was + forwarded, via + `m.forwarded_room_key`_ events. sender_key string Required. Unpadded base64-encoded device curve25519 key. sender_claimed_keys {string: Required. Object containing the string} identity key for the sending device. - forwarding_curve25519_key_chain [string] Required. Zero or more curve25519 keys - for devices who forwarded the session key. session_key string Required. Unpadded base64-encoded session key in `session-sharing format `_. @@ -961,6 +963,9 @@ described as follows: session_key string Required. The key for the session. =============================== =========== ==================================== +This is similar to the format before encryption used for the session keys in +`Server-side key backups`_ but adds the ``room_id`` and ``session_id`` fields. + Example: .. code:: json