Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sometimes after migrating to rust crypto, the App requires users to re-verify the device #8445

Closed
BillCarsonFr opened this issue May 18, 2023 · 1 comment
Assignees
Labels
A-RustSdk O-Uncommon Most users are unlikely to come across this or unexpected workflow S-Minor Impairs non-critical functionality or suitable workarounds exist Team: Crypto

Comments

@BillCarsonFr
Copy link
Member

Problem

A session in legacy crypto, which appears verified, is suddenly displaying "verify session" dialogs once migrated to Rust crypto

Explanation

In the legacy crypto the current session is marked as verified (given a valid set of keys, signed as expected):

  • If we have the private part of the MSK and it's matching the published public part
  • Or the master key is marked as trusted, aka local flag (done at the end of a sucessfull verification)
  • Or if the master key is signed by one of our trusted devices

When migrating to rust some of this information is lost. The local trust flag is not migrating, and rust is more conservative and is not considering device signatures.

As a result, sessions that do not have private MSK/USK/SSK (but have either local flag or check valid signature) are migrated over to Rust as untrusted, leading to a "verify your session" dialog, that confuses users.

Proposed Solution

Update the verify dialog text to:
App updated
Secure messaging has been improved with the latest update. Please re-verify your device.

Alternative would be to migrate the local trust flag, but given that some secret are missing a re-verification would be beneficial anyhow.

@BillCarsonFr BillCarsonFr self-assigned this May 18, 2023
@jonnyandrew jonnyandrew added A-RustSdk S-Minor Impairs non-critical functionality or suitable workarounds exist O-Uncommon Most users are unlikely to come across this or unexpected workflow Team: Crypto labels May 19, 2023
@BillCarsonFr
Copy link
Member Author

Fixed by #8462

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-RustSdk O-Uncommon Most users are unlikely to come across this or unexpected workflow S-Minor Impairs non-critical functionality or suitable workarounds exist Team: Crypto
Projects
None yet
Development

No branches or pull requests

2 participants