Security & Data

Overview#

Estraad is a 3D social collaboration platform where users meet inside a virtual room and can collaborate and communicate with each other.

Data is used for managing access (accounts and authentication), synchronizing real-time experiences, communication, as well as sharing content to allow for collaboration.

Stored Data#

Estraad stores minimal amount of data in our servers. All database data and backups are encrypted at rest. All our infrastructure runs on AWS services located in region “eu-west-1” Europe - Ireland.

All the rooms on Estraad runs on the shared environment available at meet.estraad.com, and all rooms are connected to the same backend. We also have the option to run the application on a separate isolated infrastructure with different pricing model.

Accounts#

Accounts are used to sign a user in. We do not store any passwords but send a login link by email instead. The only account information in our databases are hashed email addresses and account creation date.

Because the email addresses are hashed, administrators cannot see the email addresses, but they can be searched if you know the address.

Rooms#

Users may share content with others inside a room. The following content may be uploaded to a room if the room permissions allow it:

  • Images

  • Video

  • Audio

  • 3D Objects

Files that are uploaded to a room are encrypted and the encryption key is shared with everyone in the room. This means the file cannot be viewed by others outside the room unless they have the encryption key.

The user may “Lock” the content inside the room. When an object is locked, the encryption key is stored in the database with the file, and is shared with users entering the room allowing them to view the file. When a user leaves the room, any non-locked items will be considered “Abandoned”, will prevent access to it and is deleted within 72 hours.

All data is encrypted in transit via TLS.

Data transmission inside Rooms#

To achieve a live shared immersive experience in 3D space, the following components need to be synchronized across all users inside a room.

FieldTypeContext3D Environment2D Menus
avatarSrc3D Model ReferenceOthers need to know what you look likeShow modelNot used
hairSrc3D Model ReferenceShow modelNot used
accessorySrc3D Model ReferenceShow modelNot used
bodyAccessorySrc3D Model ReferenceShow modelNot used
handRaisedBoolean(true/false)Let others know you have a questionIcon above avatarIcon beside name in userlist
mutedBoolean(true/false)Let others know your microphone is muted/unmutedStop avatar mouth animationIcon beside name in userlist
displayNameTextLet others know your nameDisplay name above avatarName in userlist, name in chatlog
companyNameText(Optional)Let others know your companyDisplay company above avatarNot used
identityNameTextSet by an administrator for identifying special usersDisplay special tag above avatarNot used
isOwnerBoolean (true/false)Not currently in useNot usedNot used

Avatars#

  • Position
  • Rotation
  • Scale
  • Left Hand Rotation and visibility (Only while using a VR headset)
  • Right Hand Rotation and visibility (Only while using a VR headset)

Player Info#

In order to identify other users, we also synchronize the following information

Communication#

For users to communicate, the following data is shared between users using WebRTC:

  • Microphone audio (Requires browser permissions to use your own microphone. Is not transmitted when you mute your microphone.)

  • Webcam Data (Need to click and approve sharing video button)

  • Screenshare data (Need to click and approve sharing screen button)