Code Monkey home page Code Monkey logo

Comments (6)

beatgammit avatar beatgammit commented on June 1, 2024

What was wrong with string IDs in v1? They just need to be random, right?

from wamp-proto.

oberstet avatar oberstet commented on June 1, 2024

I have added text to this section https://github.com/tavendo/WAMP/blob/master/spec/basic.md#ids
rgd v1: I believe the processing and wire-level overheads are smaller with the new integer ids.
Also: #56

from wamp-proto.

beatgammit avatar beatgammit commented on June 1, 2024

In that case, I vote for 2^31. On Arduino, the largest storable number is a 16-bit int (for Uno) and 32-bit int (for Due) (source). It's possible to work around this, but I think 31 bits can be sufficiently random. Also, most IDs are short-lived enough and can be scoped well enough that it should be fine.

In a future version, this could be specified in the WELCOME.Details if it needs to be expanded.

from wamp-proto.

oberstet avatar oberstet commented on June 1, 2024

Going to 2^31, yes, I agree for "router scope" and "session scope" IDs from this list: https://github.com/tavendo/WAMP/blob/master/spec/basic.md#ids

The "problem" I am still struggling with are the "global scope" session and publication IDs .. 2^31 could lead to some undesired behavior due to collisions on those IDs.

The publication ID could be much shorter if it included the publisher's session ID though. If so, the publication ID could actually be replaced by publisher session ID + a sequence number incremented by the broker for publications by that session. But that will then expose the publisher's session ID to any subscriber. Mmh.

from wamp-proto.

goeddea avatar goeddea commented on June 1, 2024

Are there any direct security considerations with exposing the publisher's session ID? Since there's no spoofing of session IDs, I can't immediately see any.

There may, however, be privacy considerations, since this allows corelating publishes by publisher on the client side, where before we had full anonymity.

from wamp-proto.

oberstet avatar oberstet commented on June 1, 2024

described now in RC3

from wamp-proto.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.