1syntax = "proto3";
2
3option go_package = "github.com/hashicorp/vault/sdk/physical";
4
5package physical;
6
7message EncryptedBlobInfo {
8    bytes ciphertext = 1;
9    bytes iv  = 2;
10    bytes hmac = 3;
11    bool wrapped = 4;
12    SealKeyInfo key_info = 5;
13
14    // Key is the Key value for the entry that corresponds to
15    // physical.Entry.Key's value
16    string key = 6;
17}
18
19// SealKeyInfo contains information regarding the seal used to encrypt the entry.
20message SealKeyInfo {
21    // Mechanism is the method used by the seal to encrypt and sign the
22    // data as defined by the seal.
23    uint64 Mechanism = 1;
24    uint64 HMACMechanism = 2;
25
26    // This is an opaque ID used by the seal to identify the specific
27    // key to use as defined by the seal.  This could be a version, key
28    // label, or something else.
29    string KeyID = 3;
30    string HMACKeyID = 4;
31
32    // These value are used when generating our own data encryption keys
33    // and encrypting them using the autoseal
34    bytes WrappedKey = 5;
35
36    // Mechanism specific flags
37    uint64 Flags = 6;
38}
39