syntax = "proto3"; package umbra.encryption; message Plaintext { bytes payload=1; } message Ecies { bytes encrypted_bytes=1; bytes ephemeral_pubkey = 2; bytes tag = 3; } // TODO: This also encompasses plaintexts, is there a better name? // Alternatives: ??? message EncryptedBytes { oneof encryption { Plaintext plaintext = 1; Ecies ecies = 2; } }