Algorithm generating a cryptographic key for MUTE collaborative session


stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
30Mar 1, 2019Jul 13, 2018Minified + gzip package size for @coast-team/mute-crypto in KB



This library implements the conference key distribution system designed by Burmester and Desmedt[1].


To secure the communications in the peer-to-peer collaborative editor Mute it is fundamental to implement an end-to-end encryption system. The main characteristic of this kind of system is that the secret key (used to encrypt the communications) must only be known to the communicating parties (i.e. no server/intermediary must have access to the keys). It is also essential that the secret keys must not be communicated through the network but rather negotiated. This goal is achieved by a protocol that allow the parties to compute the same key without ever send it through the network (even by out-of-band channel). One of these is the Diffie-Hellman Key exchange protocol. Mute-Crypto implements an n-party Diffie-Hellman key exchange generalization of this protocol.

Technical aspects

  • The cryptographic primitives are provided by Mute-Crypto-Helper.
  • There is a rekeying each time a member join or leave the session.

[1]: A Secure and Efficient Conference Key Distribution System

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.