Comment puis-je représenter un UUID dans un protobuf message?

Je veux joindre un UUID à un champ dans ma protobuf message de l'Utilisateur exemple.

message User {
  //field containing id as UUID type
  required string email;
  optional string name;
}

Je sais que protobuf les messages ne sont pas encore en charge l'UUID type. J'ai lu que la meilleure approche est d'avoir un UUID type de message.

Donc je suppose que mon message souhaitez importer mes UUID message proto définition et l'utiliser comme un type de champ comme suit:

import "myproject/UUID.proto";

message User {
  required UUID id;
  required string email;
  optional string name;
}

Ma question est, comment les UUID message ressemble, et comment vais-je encoder/décoder? Je vise Java/Scala et C# compatibilité.