matrix-spec-proposals icon indicating copy to clipboard operation
matrix-spec-proposals copied to clipboard

MSC1597: Better spec for matrix identifiers

Open richvdh opened this issue 7 years ago • 9 comments

Rendered: https://github.com/matrix-org/matrix-doc/blob/rav/proposals/id_grammar/proposals/1597-id-grammar.md

A proposal to clarify a bunch of rules about what is and is not allowed in various identifiers.

This is intended to fix matrix-org/matrix-spec#174, matrix-org/matrix-spec#175, matrix-org/matrix-spec#278 and matrix-org/matrix-spec#290.

richvdh avatar Aug 29 '18 14:08 richvdh

~~please take comments to matrix-org/matrix-spec-proposals#1598.~~

richvdh avatar Aug 29 '18 14:08 richvdh

For links: room aliases are at matrix-org/matrix-spec-proposals#1608

richvdh avatar Aug 29 '18 22:08 richvdh

since the state of this MSC was causing confusion, I have turned this issue into a PR so that it matches the modern system.

I also don't think it has had what would qualify for an FCP nowadays, since it hasn't been implemented; I've updated the labels accordingly.

richvdh avatar Aug 19 '20 14:08 richvdh

note that a lot of discussion on this proposal took place on matrix-org/matrix-spec-proposals#1598.

richvdh avatar Aug 19 '20 14:08 richvdh

Fixes https://github.com/matrix-org/matrix-spec/issues/503

richvdh avatar Oct 12 '22 17:10 richvdh

Thoughts on also moving megolm session_id values to being url-safe base64? Same reasoning as excluding the slash from user ids.

bradtgmurray avatar Jun 06 '23 19:06 bradtgmurray

Thoughts on also moving megolm session_id values to being url-safe base64? Same reasoning as excluding the slash from user ids.

The reason for user ids is that user IDs appear in the path of REST endpoints, but I don't think the same is true of megolm session IDs?

Megolm session IDs are base64-encoded ed25519 public keys. Base64-encoded ed25519 keys are used a lot in the protocol, and normally don't use url-safe encoding.

richvdh avatar Jun 07 '23 12:06 richvdh

Thoughts on also moving megolm session_id values to being url-safe base64? Same reasoning as excluding the slash from user ids.

The reason for user ids is that user IDs appear in the path of REST endpoints, but I don't think the same is true of megolm session IDs?

Megolm session IDs are base64-encoded ed25519 public keys. Base64-encoded ed25519 keys are used a lot in the protocol, and normally don't use url-safe encoding.

They appear in the room_key backup related URLs unfortunately: https://spec.matrix.org/latest/client-server-api/#get_matrixclientv3room_keyskeysroomidsessionid

bradtgmurray avatar Jun 07 '23 19:06 bradtgmurray

Thoughts on also moving megolm session_id values to being url-safe base64? Same reasoning as excluding the slash from user ids.

The reason for user ids is that user IDs appear in the path of REST endpoints, but I don't think the same is true of megolm session IDs? Megolm session IDs are base64-encoded ed25519 public keys. Base64-encoded ed25519 keys are used a lot in the protocol, and normally don't use url-safe encoding.

They appear in the room_key backup related URLs unfortunately: https://spec.matrix.org/latest/client-server-api/#get_matrixclientv3room_keyskeysroomidsessionid

Oh hrm, right.

We've got some other changes planned for megolm (cf https://github.com/matrix-org/matrix-spec/issues/1557) so this might be a thing to consider at the same time.

richvdh avatar Jun 07 '23 21:06 richvdh