element-hq / element-hq/element-web
Cannot verify devices on account with working 4S but no published public cross-signing keys
- Dominant language
- TypeScript
- Stars
- 13.5k
- Forks
- 2.8k
- PR merge metrics
- PR metrics pending
Description
Suppose you have a user account, where SSSS has been set up, and contains the *private* cross-signing keys, but the *public* keys have never been published. See https://github.com/element-hq/element-web/issues/27253.
Now, when you log in on the account:
1. You are prompted for your 4S passphrase: 
2. Enter 4S passphrase.
3. You are prompted a **further two times** for 4S passphrase.
4. It still fails, even after all that:

Console reports:
```
WARN matrix_sdk_crypto::store: No public identity found while importing cross-signing keys, a /keys/query needs to be done
Error bootstrapping cross-signing Error: the signing key is missing from the object that signed the message
at module.exports.__wbindgen_error_new (index.js:9867:1)
at matrix_sdk_crypto_wasm.wasm.wasm_bindgen::JsError::new::ha883f446bf57a3fd (matrix_sdk_crypto_wa…-0881f436:0x17b4bac)
at matrix_sdk_crypto_wasm.wasm.matrix_sdk_crypto_wasm::future::future_to_promise::{{closure}}::h69162113e82d4886 (matrix_sdk_crypto_wa…-0881f436:0x1607641)
at matrix_sdk_crypto_wasm.wasm.>::call_once::h66e7cefc41dc8442 (matrix_sdk_crypto_wa…-0881f436:0x18ad0b4)
at matrix_sdk_crypto_wasm.wasm. as futures_util::fns::FnOnce1>>::call_once::{{closure}}::h94a11c4d36abd7a7 (matrix_sdk_crypto_wa…-0881f436:0x1906219)
at matrix_sdk_crypto_wasm.wasm.core::result::Result::map_err::h61ac269bc4134dbe (matrix_sdk_crypto_wa…-0881f436:0x13dd6bb)
at matrix_sdk_crypto_wasm.wasm. as futures_util::fns::FnOnce1>>::call_once::h14b9005db0a46cbf (matrix_sdk_crypto_wa…-0881f436:0x1967c2a)
at matrix_sdk_crypto_wasm.wasm. as core::future::future::Future>::poll::hd56fd2c68aa16e05 (matrix_sdk_crypto_wa…m-0881f436:0xf54621)
at matrix_sdk_crypto_wasm.wasm. as core::future::future::Future>::poll::h38cc453636d8daec (matrix_sdk_crypto_wa…-0881f436:0x18ae3fb)
at matrix_sdk_crypto_wasm.wasm. as core::future::future::Future>::poll::h05eb7142cd1307b3 (matrix_sdk_crypto_wa…-0881f436:0x18ad953)
at /home/rav/work/matrix-rust-sdk/crates/matrix-sdk-crypto/src/store/mod.rs:1212
(anonymous) @ CreateCrossSigningDialog.tsx:163
```
5. Press "Cancel". EW now launches.
6. Under "Security & Privacy": 
7. Click "Verify this session"
8. You are prompted (yet again) for 4S passphrase.
9. Entering correct password returns you to "Verify this session" dialog. Console reports:
```
Error: the signing key is missing from the object that signed the message
at module.exports.__wbindgen_error_new (index.js:9867:1)
at matrix_sdk_crypto_wasm.wasm.wasm_bindgen::JsError::new::ha883f446bf57a3fd (matrix_sdk_crypto_wasm.wasm-0881f436:0x17b4bac)
at matrix_sdk_crypto_wasm.wasm.matrix_sdk_crypto_wasm::future::future_to_promise::{{closure}}::h69162113e82d4886 (matrix_sdk_crypto_wasm.wasm-0881f436:0x1607641)
at matrix_sdk_crypto_wasm.wasm.>::call_once::h66e7cefc41dc8442 (matrix_sdk_crypto_wasm.wasm-0881f436:0x18ad0b4)
at matrix_sdk_crypto_wasm.wasm. as futures_util::fns::FnOnce1>>::call_once::{{closure}}::h94a11c4d36abd7a7 (matrix_sdk_crypto_wasm.wasm-0881f436:0x1906219)
at matrix_sdk_crypto_wasm.wasm.core::result::Result::map_err::h61ac269bc4134dbe (matrix_sdk_crypto_wasm.wasm-0881f436:0x13dd6bb)
at matrix_sdk_crypto_wasm.wasm. as futures_util::fns::FnOnce1>>::call_once::h14b9005db0a46cbf (matrix_sdk_crypto_wasm.wasm-0881f436:0x1967c2a)
at matrix_sdk_crypto_wasm.wasm. as core::future::future::Future>::poll::hd56fd2c68aa16e05 (matrix_sdk_crypto_wasm.wasm-0881f436:0xf54621)
at matrix_sdk_crypto_wasm.wasm. as core::future::future::Future>::poll::h38cc453636d8daec (matrix_sdk_crypto_wasm.wasm-0881f436:0x18ae3fb)
at matrix_sdk_crypto_wasm.wasm. as core::future::future::Future>::poll::h05eb7142cd1307b3 (matrix_sdk_crypto_wasm.wasm-0881f436:0x18ad953)
```
Contributor guide
Assessment
This issue has not been assessed yet.