Identity Management
Identity management is one of the mechanisms that set BobaBoard apart from other
social networks. In particular, rather than surfacing user data in its APIs,
BobaBoard surfaces identity data.
Benefits
Section titled “Benefits”Decoupling Identity from the underlying User allows for the following
benefits:
Identities can be managed as independent entities.
Section titled “Identities can be managed as independent entities.”By default, there is no world-visible connection between Identities belonging
to the same user account. These connections can, however, be revealed to other
users through the Identity Reveal System.
Fine-grained data access
Section titled “Fine-grained data access”A user can maintain multiple, separate Identities on a single account. Each of
these Identities can be used across different Realms, Boards or Threads.
Users can independently decide which Realm, Board(?) or User has access to
each Identity’s activity and data. Users can also choose to selectively reveal
which identities belong to the same User.
User identities can be optional
Section titled “User identities can be optional”A user can choose not to reveal any identity data on Realms and Boards
that support Anonymity.
Identities can be shared across different users
Section titled “Identities can be shared across different users”While this feature isn’t currently designed (or planned), the separation of
identities theoretically allows the same Identity to be associated with
separate accounts.
Creating Identities
Section titled “Creating Identities”This feature still in the design phase! More information will be available in the future.
Managing Identities
Section titled “Managing Identities”Anonymous Boards/Realms
Section titled “Anonymous Boards/Realms”When a Realm or a Board supports anonymity, BobaBoard randomly selects an
Identity to associate with the user’s activity. You can read more about
anonymous identity selection in the BobaDex page.
Non-Anonymous Boards/Realms
Section titled “Non-Anonymous Boards/Realms”This feature still in the design phase! More information will be available in the future.
Open Questions
Section titled “Open Questions”- How does the user decide which identity to join the board/realm with? When do
they make the decision?
- How does this work in Realms that allow both personal and multiple identities?
 
 - Can a user join a Realm with multiple identities? Are there pitfalls in
allowing them to do so?
- WARNING: Not allowing this possibility creates a danger of identity
connection.
Example
Alice asks Bob to join their Realm with a specific identity. Bob has already joined the Realm with a different one, and is unable to do accept Alice’s request. Alice can now infer that one of the identities already in the Realm belongs to Bob.
 
 - WARNING: Not allowing this possibility creates a danger of identity
connection.
 
Revealing Identities
Section titled “Revealing Identities”While the codebase already accounts for this system, the exact mechanics governing identity reveal are not currently defined.
In the current setup, personal identity is revealed to users with a friends
relationship in the database. No mechanism to create a friendship is available
in the API.
Identity Data Management
Section titled “Identity Data Management”This feature still in the design phase! More information will be available in the future.
Open Questions
Section titled “Open Questions”- How do we decide which subset of the identity data is available to who?
 - How do we allow users to not repeat the same information over and over for which identity?