summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorNicolas Werner <nicolas.werner@hotmail.de>2021-07-25 12:13:24 +0200
committerNicolas Werner <nicolas.werner@hotmail.de>2021-07-25 12:13:24 +0200
commitf4e670d8d522eafa96bddff39baa1636fa83dc57 (patch)
tree7aa36600ad6e3d3171e4c665b91eb21fa2811435 /src
parentMerge branch 'remove_key_response_option' into 'master' (diff)
downloadnheko-f4e670d8d522eafa96bddff39baa1636fa83dc57.tar.xz
Fix SSSS unlock without a password set
fixes #657
Diffstat (limited to 'src')
-rw-r--r--src/ChatPage.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp

index 615a15b3..a76756ae 100644 --- a/src/ChatPage.cpp +++ b/src/ChatPage.cpp
@@ -1028,8 +1028,15 @@ ChatPage::decryptDownloadedSecrets(mtx::secret_storage::AesHmacSha2KeyDescriptio auto decryptionKey = mtx::crypto::key_from_recoverykey(text.toStdString(), keyDesc); - if (!decryptionKey) - decryptionKey = mtx::crypto::key_from_passphrase(text.toStdString(), keyDesc); + if (!decryptionKey && keyDesc.passphrase) { + try { + decryptionKey = + mtx::crypto::key_from_passphrase(text.toStdString(), keyDesc); + } catch (std::exception &e) { + nhlog::crypto()->error("Failed to derive secret key from passphrase: {}", + e.what()); + } + } if (!decryptionKey) { QMessageBox::information(