ActorsPublic card

Public card

Each actor publishes a card with public information on all its public boxes:

Envelope Public card Public key public box

A card is an unencrypted object holding a record with the following structure:

public key
  empty # public key hash
actor group ?
  store URL *
    status *
      account hash *
        revision
entrusted actors ?
  revision
    store URL *
      account hash *
other public data

The public key section links the actor's public key.

The optional actor group section lists all messaging accounts of all actor group members, including those of the actor itself. The accounts are grouped by store URL (UTF-8 text) and status (UTF-8 text). The following status labels are allowed:

Account hashes are stored as byte sequences. The corresponding public key can be obtained from the indicated store.

Revision is a timestamp (milliseconds since epoch) stored as unsigned big-endian integer, and used to merge the actor's status during actor group discovery.

If the actor group section is missing, the actor is considered active and alone.

The optional entrusted actors section lists the actors entrusted by the group. The store URL points to the store holding the public key(s). That store does not necessarily belong to the entrusted actor. The whole list is most-recent merged on revision.

The card may contain other public data, such as a name, a profile picture, a link to a website, or a product catalogue. All this information is unconditionally public.

The total size of the card object should not exceed 10 KiB. Large pieces of data (such as a picture or catalogue) should be stored in separate objects, and linked from the card.