From f2b684aa9ef2f6c73edbd2ad5fa16adbadabeb30 Mon Sep 17 00:00:00 2001
From: Valere <valeref@matrix.org>
Date: Tue, 14 Apr 2020 18:23:20 +0200
Subject: [PATCH] Fix / user and self signing failing

bad copy paste
---
 .../crypto/crosssigning/DefaultCrossSigningService.kt       | 4 ++--
 .../internal/crypto/tasks/InitializeCrossSigningTask.kt     | 6 ++++--
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/crosssigning/DefaultCrossSigningService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/crosssigning/DefaultCrossSigningService.kt
index addf41d3ab..2166e4be3a 100644
--- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/crosssigning/DefaultCrossSigningService.kt
+++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/crosssigning/DefaultCrossSigningService.kt
@@ -159,8 +159,8 @@ internal class DefaultCrossSigningService @Inject constructor(
                     setUserKeysAsTrusted(userId, true)
                     cryptoStore.storePrivateKeysInfo(data.masterKeyPK, data.userKeyPK, data.selfSigningKeyPK)
                     masterPkSigning = OlmPkSigning().apply { initWithSeed(data.masterKeyPK.fromBase64()) }
-                    userPkSigning = OlmPkSigning().apply { initWithSeed(data.masterKeyPK.fromBase64()) }
-                    selfSigningPkSigning = OlmPkSigning().apply { initWithSeed(data.masterKeyPK.fromBase64()) }
+                    userPkSigning = OlmPkSigning().apply { initWithSeed(data.userKeyPK.fromBase64()) }
+                    selfSigningPkSigning = OlmPkSigning().apply { initWithSeed(data.selfSigningKeyPK.fromBase64()) }
 
                     callback?.onSuccess(Unit)
                 }
diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/InitializeCrossSigningTask.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/InitializeCrossSigningTask.kt
index 19cd619d47..9a7d84e235 100644
--- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/InitializeCrossSigningTask.kt
+++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/tasks/InitializeCrossSigningTask.kt
@@ -97,9 +97,11 @@ internal class DefaultInitializeCrossSigningTask @Inject constructor(
             Timber.v("## CrossSigning - sskPublicKey:$sskPublicKey")
 
             // Sign userSigningKey with master
-            val signedSSK = JsonCanonicalizer.getCanonicalJson(Map::class.java, CryptoCrossSigningKey.Builder(userId, KeyUsage.SELF_SIGNING)
+            val signedSSK = CryptoCrossSigningKey.Builder(userId, KeyUsage.SELF_SIGNING)
                     .key(sskPublicKey)
-                    .build().signalableJSONDictionary()).let { masterPkOlm.sign(it) }
+                    .build()
+                    .canonicalSignable()
+                    .let { masterPkOlm.sign(it) }
 
             // I need to upload the keys
             val mskCrossSigningKeyInfo = CryptoCrossSigningKey.Builder(userId, KeyUsage.MASTER)