CloudServices/FxChat

From MozillaWiki
< CloudServices
Revision as of 23:27, 8 April 2014 by Natim (talk | contribs) (First implementation draft.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Last updated: 2014/04/08
Draft-template-image.png THIS PAGE IS A WORKING DRAFT Pencil-emoji U270F-gray.png
The page may be difficult to navigate, and some information on its subject might be incomplete and/or evolving rapidly.
If you have any questions or ideas, please add them as a new topic on the discussion page.

Overview

Firefox Chat Service is messaging service that uses the Firefox Account keys to encrypt and sign message between people.

Project Contacts

Principal Point of Contact (EU)

- Tarek Ziade tarek@mozilla.com - Alexis Metaireau alexis@mozilla.com - Rémy Hubscher natim@mozilla.com

Goals

Having people being able to communicate using their phone or browser in a way that respects their privacy.

People can use one of their device to communicate with other people.

Requirements

Firefox Account

  • People needs to log on the service using their Firefox Account.
  • The Firefox Account assertion is used to register the public key on the server.
  • The Firefox Account kB is used to build the public and private key for a user.


Workflow

Registration

  • 1. Alice register her public key on the FxChat server
  • 2. Bob register his public key on the FxChat server

Communication

Alice wants to send a message to Bob

  • 1. Alice get Bob's public key on the FxChat server
  • 2. Alice encrypt her message usign Bob's public key and sign it using her private key
  • 3. Alice send the message to the server.
  • 3.a The server send the message to all Bob's devices
  • 3.b The server check the signature and store the encrypted message on Alice mailbox
  • 4. Alice encrypt her message using her public key to sync her messages upon all her devices.

If Alice change her password, all message are lost because the private key is.