Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Opaque Rhizome bundle version number #29

Open
quixotique opened this issue Oct 19, 2012 · 0 comments
Open

Opaque Rhizome bundle version number #29

quixotique opened this issue Oct 19, 2012 · 0 comments

Comments

@quixotique
Copy link
Member

The Rhizome manifest version number is currently implemented as GMT time in milliseconds since the standard Unix epoch. The date field can be made optional for users who do not wish to expose the time at which their anonymous posts were made, but the version field is not optional for Rhizome. Therefore, it must be re-implemented to not reveal anything about the time or place of authorship, or even the number of revisions.

The proposed design is:

  • use a 56-bit unsigned integer for version numbers
  • initialise the version of every new bundle with a random integer in the approximate range 1e4 - 1e6 (32 bits)
  • increment the version on every revision by a random integer in the range 1 - 1e6 (32 bits)
  • use an unsigned comparison between version numbers in Rhizome
  • handle version overrun by simply not allowing the version number to wrap -- the “update bundle” operation fails with an error (which should be extremely rare)

When this is done, the BAR format may have to be updated. See issue #19.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant