lime
Lime is a C++ library implementing Open Whisper System Signal protocol
Public Member Functions | Public Attributes | List of all members
lime::RecipientData Struct Reference

The encrypt function input/output data structure. More...

Inheritance diagram for lime::RecipientData:
lime::RecipientInfos< Curve >

Public Member Functions

 RecipientData (const std::string &deviceId)
 

Public Attributes

const std::string deviceId
 
lime::PeerDeviceStatus peerStatus
 
std::vector< uint8_t > DRmessage
 

Detailed Description

The encrypt function input/output data structure.

give a recipient GRUU and get it back with the header which must be sent to recipient with the cipher text

Constructor & Destructor Documentation

◆ RecipientData()

lime::RecipientData::RecipientData ( const std::string &  deviceId)
inline

recipient data are built giving a recipient id

Parameters
[in]deviceIdthe recipient device Id (its GRUU)

Member Data Documentation

◆ deviceId

const std::string lime::RecipientData::deviceId

input: recipient deviceId (shall be GRUU)

◆ DRmessage

std::vector<uint8_t> lime::RecipientData::DRmessage

output: after encrypt calls back, it will hold the Double Ratchet message targeted to the specified recipient.

◆ peerStatus

lime::PeerDeviceStatus lime::RecipientData::peerStatus

input: if set to fail, this entry will be ignored by the encrypt function
output: after encrypt calls back, it will hold the status of this peer device:

  • unknown: first interaction with this device)
  • untrusted: device is kown but we never confirmed its identity public key
  • trusted: we already confirmed this device identity public key
  • fail: we could not encrypt for this device, probably because it never published its keys on the X3DH server

The documentation for this struct was generated from the following file: