Secure Messaging

Unis make it easy to communicate across companies, regions, and clouds. However, sometimes it's appropriate to restrict information to a subset of participants. For example, you might have a uni in which you communicate with two or more vendors, but you want to keep the details of pricing and contracts segregated so they can't see each other's data.

Vendia's secure messaging feature is one of the easiest ways to accomplish this. Unlike updates that change the world state, secure messages are ledgered but have no other effect on the database. In addition, they contain a list of recipients - similar to sending an email - and anyone not explicitly listed as a receipient (or the sender themselves) sees only a <REDACTED> notice instead of the actual message body. However, the hash of the message is preserved, so that even participants who are not allowed to see the message can still determine that the block containing a secure message is legitimate and tamper-free.

Sending Secure Messages

To send a secure message, use the built-in SecureMessage type, e.g.:

add_SecureMessage(input{Participants: [recipient1, recipient2, ...], Message: "<message_body>"})

Definitions of Fields:

  • Participants - A list of message recipients. Participant names should match the ones provided in the registry.
  • Message - A string representing the body of the message.

The sender and each recipient will receive a ledgered transaction containing the secure message, and can access it using GraphQL queries. All other participants will see a redaction message in place of the message body, but will still receive the block and tranaction ids, timestamps, and hashes, enabling them to individually ensure tamper-proof validation even when they are not privy to the message content.

Other Feature Documentation

Using File Storage

Next Steps

Developing and Using Unis

Defining Your Data Model

Integrating a Vendia chain with other Cloud, Web, and Mobile Services

Learning More

Terms and Definitions