X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/4adb11dada29ac6ca2d12270fd7e617007ff9bf3..c72aeed8bba4d5ca873b36b4edb2b8eda9c24ec7:/src/main/java/org/asamk/signal/manager/util/ProfileUtils.java diff --git a/src/main/java/org/asamk/signal/manager/util/ProfileUtils.java b/src/main/java/org/asamk/signal/manager/util/ProfileUtils.java deleted file mode 100644 index b91e864a..00000000 --- a/src/main/java/org/asamk/signal/manager/util/ProfileUtils.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.asamk.signal.manager.util; - -import org.asamk.signal.manager.storage.profiles.SignalProfile; -import org.signal.zkgroup.profiles.ProfileKey; -import org.whispersystems.signalservice.api.crypto.InvalidCiphertextException; -import org.whispersystems.signalservice.api.crypto.ProfileCipher; -import org.whispersystems.signalservice.api.profiles.SignalServiceProfile; - -import java.util.Base64; - -public class ProfileUtils { - - public static SignalProfile decryptProfile( - final ProfileKey profileKey, final SignalServiceProfile encryptedProfile - ) { - ProfileCipher profileCipher = new ProfileCipher(profileKey); - try { - String name; - try { - name = encryptedProfile.getName() == null - ? null - : new String(profileCipher.decryptName(Base64.getDecoder().decode(encryptedProfile.getName()))); - } catch (IllegalArgumentException e) { - name = null; - } - String unidentifiedAccess; - try { - unidentifiedAccess = encryptedProfile.getUnidentifiedAccess() == null - || !profileCipher.verifyUnidentifiedAccess(Base64.getDecoder() - .decode(encryptedProfile.getUnidentifiedAccess())) - ? null - : encryptedProfile.getUnidentifiedAccess(); - } catch (IllegalArgumentException e) { - unidentifiedAccess = null; - } - return new SignalProfile(encryptedProfile.getIdentityKey(), - name, - unidentifiedAccess, - encryptedProfile.isUnrestrictedUnidentifiedAccess(), - encryptedProfile.getCapabilities()); - } catch (InvalidCiphertextException e) { - return null; - } - } -}