element-hq / element-ios

A glossy Matrix collaboration client for iOS
https://element.io
Apache License 2.0
1.72k stars 479 forks source link

Crosssigning between iOS and Android - iOS can't scan Android (or iOS) QR Code #7660

Closed lampholder closed 10 months ago

lampholder commented 11 months ago

Steps to reproduce

Originally tested between:

  1. User is logged in with iOS
  2. User logs in with Android
  3. Android starts crosssigning
  4. iOS Scans Android QR code
  5. iOS fails to scan the QR code but shows “Wait for other device” Screen
  6. On iOS: Rust function scanQRCode returns nil

Outcome

What did you expect?

Your phone model

No response

Operating system version

No response

Application version

Element iOS 1.11.0

Homeserver

No response

Will you send logs?

No

lampholder commented 11 months ago

Subsequently tested between two iOS devices also failed.

BillCarsonFr commented 10 months ago

This happens because the base64 encoded data passed to the SDK has padding, and the sdk is to strict and reject the code because of that. Created an issue to be more lax on sdk side, https://github.com/matrix-org/matrix-rust-sdk/issues/2531, and looking at not passing a padded version to SDK