Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
signalapp
GitHub Repository: signalapp/Signal-iOS
Path: blob/main/SignalServiceKit/Protos/Specifications/Provisioning.proto
1 views
//
// Copyright 2014 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//

// iOS - since we use a modern proto-compiler, we must specify
// the legacy proto format.
syntax = "proto2";

package ProvisioningProtos;

option java_package = "org.whispersystems.signalservice.internal.push";
option java_outer_classname = "ProvisioningProtos";

message ProvisioningUuid {
    // @required
    optional string uuid = 1;
}

message ProvisionEnvelope {
  // @required
  optional bytes publicKey = 1;
  // @required
  optional bytes body = 2; // Encrypted ProvisionMessage
}

message ProvisionMessage {
  // @required
  optional bytes aciIdentityKeyPublic = 1;
  // @required
  optional bytes aciIdentityKeyPrivate = 2;
  // @required
  optional bytes pniIdentityKeyPublic = 11;
  // @required
  optional bytes pniIdentityKeyPrivate = 12;
  optional string aci = 8;
  optional string pni = 10;
  optional string number = 3;
  // @required
  optional string provisioningCode = 4;
  optional string userAgent = 5;
  // @required
  optional bytes profileKey = 6;
  optional bool readReceipts = 7;
  optional uint32 provisioningVersion = 9;
  optional bytes masterKey = 13;
  optional bytes ephemeralBackupKey = 14; // 32 bytes
  optional string accountEntropyPool = 15;
  optional bytes mediaRootBackupKey = 16;
  optional bytes aciBinary = 17; // 16-byte UUID
  optional bytes pniBinary = 18; // 16-byte UUID
  // NEXT ID: 19
}