diff options
author | Nicolas Werner <nicolas.werner@hotmail.de> | 2021-12-15 18:25:10 +0100 |
---|---|---|
committer | Nicolas Werner <nicolas.werner@hotmail.de> | 2021-12-15 18:26:14 +0100 |
commit | 6d69248109519e17dc773ade9024cdbb877562f9 (patch) | |
tree | 9bbaea6f3865e8c112340009d5875b364556ac37 | |
parent | 57d1dffdbd453af572d1460495edd81427bc2b04 (diff) |
Strip space chars from recovery passphrase
-rw-r--r-- | src/ChatPage.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp index 8bccf728..7c6dde96 100644 --- a/src/ChatPage.cpp +++ b/src/ChatPage.cpp @@ -1103,7 +1103,13 @@ ChatPage::decryptDownloadedSecrets(mtx::secret_storage::AesHmacSha2KeyDescriptio if (text.isEmpty()) return; - auto decryptionKey = mtx::crypto::key_from_recoverykey(text.toStdString(), keyDesc); + // strip space chars from a recovery key. It can't contain those, but some clients insert them + // to make them easier to read. + QString stripped = text; + stripped.remove(' '); + stripped.remove('\n'); + stripped.remove('\t'); + auto decryptionKey = mtx::crypto::key_from_recoverykey(stripped.toStdString(), keyDesc); if (!decryptionKey && keyDesc.passphrase) { try { |