You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			86 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Protocol Buffer
		
	
			
		
		
	
	
			86 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Protocol Buffer
		
	
| package textsecure;
 | |
| 
 | |
| option java_package = "org.whispersystems.libaxolotl.state";
 | |
| option java_outer_classname = "StorageProtos";
 | |
| 
 | |
| message SessionStructure {
 | |
|     message Chain {
 | |
|         optional bytes senderEphemeral = 1;
 | |
|         optional bytes senderEphemeralPrivate = 2;
 | |
| 
 | |
|         message ChainKey {
 | |
|             optional uint32 index = 1;
 | |
|             optional bytes  key   = 2;
 | |
|         }
 | |
| 
 | |
|         optional ChainKey chainKey = 3;
 | |
| 
 | |
|         message MessageKey {
 | |
|             optional uint32 index     = 1;
 | |
|             optional bytes  cipherKey = 2;
 | |
|             optional bytes  macKey    = 3;
 | |
|         }
 | |
| 
 | |
|         repeated MessageKey messageKeys = 4;
 | |
|     }
 | |
| 
 | |
|     message PendingKeyExchange {
 | |
|         optional uint32 sequence                 = 1;
 | |
|         optional bytes  localBaseKey             = 2;
 | |
|         optional bytes  localBaseKeyPrivate      = 3;
 | |
|         optional bytes  localEphemeralKey        = 4;
 | |
|         optional bytes  localEphemeralKeyPrivate = 5;
 | |
|         optional bytes  localIdentityKey         = 7;
 | |
|         optional bytes  localIdentityKeyPrivate  = 8;
 | |
|     }
 | |
| 
 | |
|     message PendingPreKey {
 | |
|         optional uint32 preKeyId       = 1;
 | |
|         optional int32  signedPreKeyId = 3;
 | |
|         optional bytes  baseKey        = 2;
 | |
|     }
 | |
| 
 | |
|     optional uint32 sessionVersion      = 1;
 | |
|     optional bytes localIdentityPublic  = 2;
 | |
|     optional bytes remoteIdentityPublic = 3;
 | |
| 
 | |
|     optional bytes rootKey              = 4;
 | |
|     optional uint32 previousCounter     = 5;
 | |
| 
 | |
|     optional Chain senderChain          = 6;
 | |
|     repeated Chain receiverChains       = 7;
 | |
| 
 | |
|     optional PendingKeyExchange pendingKeyExchange = 8;
 | |
|     optional PendingPreKey      pendingPreKey      = 9;
 | |
| 
 | |
|     optional uint32 remoteRegistrationId = 10;
 | |
|     optional uint32 localRegistrationId  = 11;
 | |
| 
 | |
|     optional bool needsRefresh = 12;
 | |
|     optional bytes aliceBaseKey = 13;
 | |
|     optional bytes verification = 14;
 | |
| }
 | |
| 
 | |
| message RecordStructure {
 | |
|     optional SessionStructure currentSession   = 1;
 | |
|     repeated SessionStructure previousSessions = 2;
 | |
| }
 | |
| 
 | |
| message PreKeyRecordStructure {
 | |
|     optional uint32 id        = 1;
 | |
|     optional bytes  publicKey = 2;
 | |
|     optional bytes  privateKey = 3;
 | |
| }
 | |
| 
 | |
| message SignedPreKeyRecordStructure {
 | |
|     optional uint32  id         = 1;
 | |
|     optional bytes   publicKey  = 2;
 | |
|     optional bytes   privateKey = 3;
 | |
|     optional bytes   signature  = 4;
 | |
|     optional fixed64 timestamp  = 5;
 | |
| }
 | |
| 
 | |
| message IdentityKeyPairStructure {
 | |
|     optional bytes publicKey  = 1;
 | |
|     optional bytes privateKey = 2;
 | |
| } |