Skip to content
You are reading Tessera development version documentation and some displayed features may not be available in the stable release. You can switch to stable version using the version box at screen bottom.

Configure multiple private states

To use multi-tenancy, you must enable GoQuorum multiple private states (MPS).

To do this, set enableMultiplePrivateStates in the Tessera configuration file to true.

Enable MPS configuration

"features" : {
    "enableMultiplePrivateStates" : "true"

Resident groups

When MPS is enabled, all keys configured must belong to a resident privacy group, or resident group. Specify residentGroups in the configuration file as shown in the following example.

Resident group configuration

 "residentGroups": [
    "name": "PS1",
    "members": ["publicKey1", "publicKey2"],
    "description": "Private state 1"
    "name": "PS2",
    "members": ["publicKey3", "publicKey4"],
    "description": "Private State 2"

Tessera loads the resident group configuration, performs the following validations during startup (when enableMultiplePrivateStates is set to true), and persists relevant data to its database:

  • All members of resident groups must be locally managed by the node.
  • A member can’t be configured to belong to more than one resident group at any time (all history considered).
  • All keys configured must belong to a resident group and no key can be left out.


Tessera can’t start with enableMultiplePrivateStates set to true AND an invalid resident group configuration.

ConsenSys has acquired Quorum from J.P. Morgan. Please read the FAQ.
Questions or feedback? You can discuss issues and obtain free support on Tessera Slack channel.