RatchetClientProtocol
@objc(VSRRatchetClientProtocol)
public protocol RatchetClientProtocol
                Client used to communicate with ratchet service
- 
                  
                  
Uploads public keys
Long-term public key signature should be verified. Upload priority: identity card id > long-term public key > one-time public key. Which means long-term public key can’t be uploaded if identity card id is absent in the cloud and one-time public key can’t be uploaded if long-term public key is absent in the cloud.
Throws
Depends on implementationDeclaration
Swift
@objc func uploadPublicKeys(identityCardId: String?, longTermPublicKey: SignedPublicKey?, oneTimePublicKeys: [Data]) throwsParameters
identityCardIdIdentity cardId that should be available on Card service.
longTermPublicKeylong-term public key + its signature created using identity private key. Should be curve25519 in PKCS#8
oneTimePublicKeysone-time public keys (up to 150 keys in the cloud). Should be curve25519 in PKCS#8
 - 
                  
                  
Checks list of keys ids and returns subset of that list with already used keys ids
Note
keyId == SHA512(raw 32-byte publicKey)[0..<8]
Throws
Depends on implementation
Declaration
Swift
@objc func validatePublicKeys(longTermKeyId: Data?, oneTimeKeysIds: [Data]) throws -> ValidatePublicKeysResponseParameters
longTermKeyIdlong-term public key id to validate
oneTimeKeysIdslist of one-time public keys ids to validate
Return Value
Object with used keys ids
 - 
                  
                  
Returns public keys set for given identity.
Throws
Depends on implementationDeclaration
Swift
@objc func getPublicKeySet(forRecipientIdentity identity: String) throws -> PublicKeySetParameters
identityUser’s identity
Return Value
Set of public keys
 - 
                  
                  
Returns public keys sets for given identities.
Throws
Depends on implementationDeclaration
Swift
@objc func getMultiplePublicKeysSets(forRecipientsIdentities identities: [String]) throws -> [IdentityPublicKeySet]Parameters
identitiesUsers’ identities
Return Value
Sets of public keys
 - 
                  
                  
Deletes keys entity
Throws
Depends on implementationDeclaration
Swift
@objc func deleteKeysEntity() throws 
        RatchetClientProtocol Protocol Reference