syntax = "proto3"; package veilid; // 32-byte value in bigendian format message CryptoKey { fixed32 u0 = 1; fixed32 u1 = 2; fixed32 u2 = 3; fixed32 u3 = 4; fixed32 u4 = 5; fixed32 u5 = 6; fixed32 u6 = 7; fixed32 u7 = 8; } // 64-byte value in bigendian format message Signature { fixed32 u0 = 1; fixed32 u1 = 2; fixed32 u2 = 3; fixed32 u3 = 4; fixed32 u4 = 5; fixed32 u5 = 6; fixed32 u6 = 7; fixed32 u7 = 8; fixed32 u8 = 9; fixed32 u9 = 10; fixed32 u10 = 11; fixed32 u11 = 12; fixed32 u12 = 13; fixed32 u13 = 14; fixed32 u14 = 15; fixed32 u15 = 16; } // 24-byte value in bigendian format message Nonce { fixed32 u0 = 1; fixed32 u1 = 2; fixed32 u2 = 3; fixed32 u3 = 4; fixed32 u4 = 5; fixed32 u5 = 6; } // 36-byte typed crypto key message TypedKey { // CryptoKind FourCC in bigendian format fixed32 kind = 1; // Key value CryptoKey value = 2; } // Key pair message KeyPair { // Public key CryptoKey key = 1; // Private key CryptoKey secret = 2; }