X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/85025d2e25a9993162d5c859858e7ecb6149fea6..d520023fc76a522650b7561f2a4fc7a95fb5a04d:/src/main/java/org/asamk/signal/manager/KeyUtils.java diff --git a/src/main/java/org/asamk/signal/manager/KeyUtils.java b/src/main/java/org/asamk/signal/manager/KeyUtils.java index 6ffc3f36..fff8179c 100644 --- a/src/main/java/org/asamk/signal/manager/KeyUtils.java +++ b/src/main/java/org/asamk/signal/manager/KeyUtils.java @@ -1,6 +1,8 @@ package org.asamk.signal.manager; import org.asamk.signal.util.RandomUtils; +import org.signal.zkgroup.InvalidInputException; +import org.signal.zkgroup.profiles.ProfileKey; import org.whispersystems.util.Base64; class KeyUtils { @@ -12,8 +14,12 @@ class KeyUtils { return getSecret(52); } - static byte[] createProfileKey() { - return getSecretBytes(32); + static ProfileKey createProfileKey() { + try { + return new ProfileKey(getSecretBytes(32)); + } catch (InvalidInputException e) { + throw new AssertionError("Profile key is guaranteed to be 32 bytes here"); + } } static String createPassword() { @@ -24,6 +30,14 @@ class KeyUtils { return getSecretBytes(16); } + static byte[] createUnrestrictedUnidentifiedAccess() { + return getSecretBytes(16); + } + + static byte[] createStickerUploadKey() { + return getSecretBytes(32); + } + private static String getSecret(int size) { byte[] secret = getSecretBytes(size); return Base64.encodeBytes(secret);