/ components / protocomm / proto / session.proto
session.proto
 1  syntax = "proto3";
 2  
 3  import "sec0.proto";
 4  import "sec1.proto";
 5  
 6  /* Allowed values for the type of security
 7   * being used in a protocomm session */
 8  enum SecSchemeVersion {
 9      SecScheme0 = 0; /*!< Unsecured - plaintext communication */
10      SecScheme1 = 1; /*!< Security scheme 1 - Curve25519 + AES-256-CTR*/
11  }
12  
13  /* Data structure exchanged when establishing
14   * secure session between Host and Client */
15  message SessionData {
16      SecSchemeVersion sec_ver = 2;   /*!< Type of security */
17      oneof proto {
18          Sec0Payload sec0 = 10;      /*!< Payload data in case of security 0 */
19          Sec1Payload sec1 = 11;      /*!< Payload data in case of security 1 */
20      }
21  }