github.com/jlmucb/cloudproxy@v0.0.0-20170830161738-b5aa0b619bc4/go/support_libraries/protected_objects/protected_objects.proto (about)

     1  // To compile: protoc -I=. --go_out=. protector_object.proto
     2  
     3  // Definition of protobufs for protected objects
     4  syntax = "proto2";
     5  
     6  package protected_objects;
     7  
     8  // Epochs must increase monotonically and be > 0
     9  message object_id_message {
    10    required string obj_name                    = 1;
    11    optional int32 obj_epoch                    = 2;
    12  }
    13  
    14  // Standard statuses are: active, retired, inactive, revoked
    15  // Standard types are: file, key, key-aes128-ctr-hmacsha256
    16  // NotBefore and notAfter are string with the standard
    17  //     string format: 2006-01-02 15:04:05.999999999 -0700 MST
    18  message object_message {
    19    required object_id_message obj_id           = 1;
    20    optional string obj_type                    = 2;
    21    optional string obj_status                  = 3;
    22    optional string not_before                  = 4;
    23    optional string not_after                   = 5;
    24    optional bytes obj_val                      = 6;
    25  }
    26  
    27  message node_message {
    28    required object_id_message protected_obj_id = 1;
    29    optional object_id_message protector_obj_id = 2;
    30  }
    31  
    32  message protected_object_message {
    33    required object_id_message protected_obj_id = 1;
    34    optional object_id_message protector_obj_id = 2;
    35    optional bytes blob                         = 3;
    36  }
    37  
    38  message object_store_message {
    39    repeated object_message objects = 1;
    40  }
    41  
    42  message node_store_message {
    43    repeated node_message node_objects = 1;
    44  }
    45  
    46  message protected_object_store_message {
    47    repeated protected_object_message protected_objects = 1;
    48  }
    49