diff --git a/java/android/OlmLibSdk/olm-sdk/src/main/java/org/matrix/olm/OlmUtility.java b/java/android/OlmLibSdk/olm-sdk/src/main/java/org/matrix/olm/OlmUtility.java index 2843f0f9069b4a710d278238accbff050c90b5f3..342d8eba3de71f3b2a9a3589891e58685eb7320a 100644 --- a/java/android/OlmLibSdk/olm-sdk/src/main/java/org/matrix/olm/OlmUtility.java +++ b/java/android/OlmLibSdk/olm-sdk/src/main/java/org/matrix/olm/OlmUtility.java @@ -20,10 +20,14 @@ import android.text.TextUtils; import android.util.Log; import java.io.Serializable; +import java.util.Random; -public class OlmUtility implements Serializable { +public class OlmUtility { private static final String LOG_TAG = "OlmUtility"; + public static final int RANDOM_KEY_SIZE = 32; + public static final int RANDOM_RANGE = 256; + /** raw pointer value returned by JNI. * this value uniquely identifies this utility instance. **/ @@ -128,9 +132,17 @@ public class OlmUtility implements Serializable { private native String sha256Jni(String aMessage); - // TODO missing API: initWithSerializedData - // TODO missing API: serializeDataWithKey - // TODO missing API: initWithCoder - // TODO missing API: encodeWithCoder + public static String getRandomKey() { + String keyRetValue; + Random rand = new Random(); + StringBuilder strBuilder = new StringBuilder(); + + for(int i = 0; i< RANDOM_KEY_SIZE; i++) { + strBuilder.append(rand.nextInt(RANDOM_RANGE)); + } + keyRetValue = strBuilder.toString(); + + return keyRetValue; + } }