Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Olm Olm
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 6
    • Issues 6
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 4
    • Merge requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • matrix-orgmatrix-org
  • OlmOlm
  • Merge requests
  • !64

Simplify the ratchet

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Richard van der Hoff requested to merge rav/simpler_megolm into master Nov 30, 2022
  • Overview 0
  • Commits 2
  • Pipelines 3
  • Changes 1

A proposal to replace the megolm ratchet with something much, much simpler.

The existing mechanism for ratcheting the key is baroque and effectively unused. It only offers performance benefits (i.e. being able to advance to any index in at most 1020 steps) once you advance the ratchet more than 257 steps - and we never advance it more than 100, due to the desire to preserve backward secrecy.

The document would probably be clearer if we rearranged it to combine the "Megolm V2 ratchet algorithm" and "Advancing the ratchet" sections, but for now I've left them separate to make the differences to the previous document clearer.

Edited Nov 30, 2022 by Richard van der Hoff
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: rav/simpler_megolm