Upgrade to libsignal 0.23.1

This commit is contained in:
Alex Hart 2023-05-03 11:11:47 -03:00
parent 03a4809866
commit e0c06615fb
6 changed files with 15 additions and 60 deletions

View file

@ -7,7 +7,6 @@ import org.signal.libsignal.zkgroup.groups.GroupPublicParams;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCommitment;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredentialPresentation;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredentialRequest;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredentialResponse;
import org.signal.libsignal.zkgroup.profiles.ServerZkProfileOperations;
import org.whispersystems.signalservice.test.LibSignalLibraryUtil;
@ -34,16 +33,4 @@ public final class TestZkGroupServer {
public ServerPublicParams getServerPublicParams() {
return serverPublicParams;
}
public ProfileKeyCredentialResponse getProfileKeyCredentialResponse(ProfileKeyCredentialRequest request, UUID uuid, ProfileKeyCommitment commitment) throws VerificationFailedException {
return serverZkProfileOperations.issueProfileKeyCredential(request, uuid, commitment);
}
public void assertProfileKeyCredentialPresentation(GroupPublicParams publicParams, ProfileKeyCredentialPresentation profileKeyCredentialPresentation) {
try {
serverZkProfileOperations.verifyProfileKeyCredentialPresentation(publicParams, profileKeyCredentialPresentation);
} catch (VerificationFailedException e) {
throw new AssertionError(e);
}
}
}

View file

@ -13,7 +13,7 @@ dependencyResolutionManagement {
version('exoplayer', '2.18.1')
version('glide', '4.13.2')
version('kotlin', '1.8.10')
version('libsignal-client', '0.22.0')
version('libsignal-client', '0.23.1')
version('mp4parser', '1.9.39')
version('android-gradle-plugin', '7.4.1')

View file

@ -5359,20 +5359,20 @@ https://docs.gradle.org/current/userguide/dependency_verification.html
<sha256 value="0f686ccff0d4842bfcc74d92e8dc780a5f159b9376e37a1189fabbcdac458bef" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.signal" name="libsignal-android" version="0.22.0">
<artifact name="libsignal-android-0.22.0.aar">
<sha256 value="4fbb6f0302b14ba2181f53376dada2972be1a340fffebc0cbd5c85985788c86e" origin="Generated by Gradle"/>
<component group="org.signal" name="libsignal-android" version="0.23.1">
<artifact name="libsignal-android-0.23.1.aar">
<sha256 value="9cd855ac020963c0c35102bac1d4f556c8234cf050f74bf29f3f18cf1686d9b2" origin="Generated by Gradle"/>
</artifact>
<artifact name="libsignal-android-0.22.0.module">
<sha256 value="c94b62310a8fef0ee2184f051f57c83327dfd1ea3395075b15f577edaff8aeee" origin="Generated by Gradle"/>
<artifact name="libsignal-android-0.23.1.module">
<sha256 value="4988a65e21be2b7c5a449743e0bc9856fe15024889e18e0d77ef94e23f38b9b8" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.signal" name="libsignal-client" version="0.22.0">
<artifact name="libsignal-client-0.22.0.jar">
<sha256 value="debd08e9e85deb685bcbebfb520c698369a687303052600684ef3a60b776f95f" origin="Generated by Gradle"/>
<component group="org.signal" name="libsignal-client" version="0.23.1">
<artifact name="libsignal-client-0.23.1.jar">
<sha256 value="e6b603f65812249739e1cb95601ecdb2c0a84b39de4fcf40a29923088c7454aa" origin="Generated by Gradle"/>
</artifact>
<artifact name="libsignal-client-0.22.0.module">
<sha256 value="3e7be0a63de3e974f37ca32c20eba5553586b20c4e7cf25979f719568c9749c9" origin="Generated by Gradle"/>
<artifact name="libsignal-client-0.23.1.module">
<sha256 value="b592f21cf65c69ba21a72c0a91a08fef4470d902ef03bb2ba88b5e5f05f17ee3" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.signal" name="ringrtc-android" version="2.26.3">

View file

@ -1,24 +0,0 @@
package org.whispersystems.signalservice.api.groupsv2;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredential;
import java.util.UUID;
public final class UuidProfileKeyCredential {
private final UUID uuid;
private final ProfileKeyCredential profileKeyCredential;
public UuidProfileKeyCredential(UUID uuid, ProfileKeyCredential profileKeyCredential) {
this.uuid = uuid;
this.profileKeyCredential = profileKeyCredential;
}
public UUID getUuid() {
return uuid;
}
public ProfileKeyCredential getProfileKeyCredential() {
return profileKeyCredential;
}
}

View file

@ -2,16 +2,16 @@ package org.whispersystems.signalservice.api.services;
import org.signal.cdsi.proto.ClientRequest;
import org.signal.cdsi.proto.ClientResponse;
import org.signal.libsignal.cds2.AttestationDataException;
import org.signal.libsignal.attest.AttestationDataException;
import org.signal.libsignal.cds2.Cds2Client;
import org.signal.libsignal.cds2.Cds2CommunicationFailureException;
import org.signal.libsignal.protocol.logging.Log;
import org.signal.libsignal.protocol.util.Pair;
import org.signal.libsignal.sgxsession.SgxCommunicationFailureException;
import org.whispersystems.signalservice.api.push.TrustStore;
import org.whispersystems.signalservice.api.push.exceptions.CdsiInvalidArgumentException;
import org.whispersystems.signalservice.api.push.exceptions.CdsiInvalidTokenException;
import org.whispersystems.signalservice.api.push.exceptions.NonSuccessfulResponseCodeException;
import org.whispersystems.signalservice.api.push.exceptions.CdsiResourceExhaustedException;
import org.whispersystems.signalservice.api.push.exceptions.NonSuccessfulResponseCodeException;
import org.whispersystems.signalservice.api.util.Tls12SocketFactory;
import org.whispersystems.signalservice.api.util.TlsProxySocketFactory;
import org.whispersystems.signalservice.internal.configuration.SignalCdsiUrl;
@ -165,7 +165,7 @@ final class CdsiSocket {
webSocket.close(1000, "OK");
break;
}
} catch (IOException | AttestationDataException | Cds2CommunicationFailureException e) {
} catch (IOException | SgxCommunicationFailureException | AttestationDataException e) {
Log.w(TAG, e);
webSocket.close(1000, "OK");
emitter.tryOnError(e);

View file

@ -25,10 +25,8 @@ import org.signal.libsignal.zkgroup.VerificationFailedException;
import org.signal.libsignal.zkgroup.profiles.ClientZkProfileOperations;
import org.signal.libsignal.zkgroup.profiles.ExpiringProfileKeyCredential;
import org.signal.libsignal.zkgroup.profiles.ProfileKey;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredential;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredentialRequest;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredentialRequestContext;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyCredentialResponse;
import org.signal.libsignal.zkgroup.profiles.ProfileKeyVersion;
import org.signal.libsignal.zkgroup.receipts.ReceiptCredentialPresentation;
import org.signal.libsignal.zkgroup.receipts.ReceiptCredentialRequest;
@ -2145,12 +2143,6 @@ public class PushServiceSocket {
return connections[random.nextInt(connections.length)];
}
public ProfileKeyCredential parseResponse(UUID uuid, ProfileKey profileKey, ProfileKeyCredentialResponse profileKeyCredentialResponse) throws VerificationFailedException {
ProfileKeyCredentialRequestContext profileKeyCredentialRequestContext = clientZkProfileOperations.createProfileKeyCredentialRequestContext(random, uuid, profileKey);
return clientZkProfileOperations.receiveProfileKeyCredential(profileKeyCredentialRequestContext, profileKeyCredentialResponse);
}
/**
* Converts {@link IOException} on body byte reading to {@link PushNetworkException}.
*/