Skip to content

Reapply "srp: add HomeKit-compatible padding for u and M1/M2"#285

Merged
tarcieri merged 3 commits into
masterfrom
srp/reapply-272
Apr 2, 2026
Merged

Reapply "srp: add HomeKit-compatible padding for u and M1/M2"#285
tarcieri merged 3 commits into
masterfrom
srp/reapply-272

Conversation

@tarcieri
Copy link
Copy Markdown
Member

This reverts commit 22d096a (#283)

This was originally added in #272 then reverted due to bugs which weren't caught in CI at the time, but are now captured by proptests

This reverts commit 22d096a (#283)

This was originally added in #272 then reverted due to bugs which
weren't caught in CI at the time, but are now captured by proptests
@tarcieri
Copy link
Copy Markdown
Member Author

cc @r4v3n6101

@r4v3n6101
Copy link
Copy Markdown
Contributor

The failure comes from switching u to the RFC-defined calculation, u = H(PAD(A) || PAD(B)). Previously, the code comment already described that formula, but the implementation was actually computing u = H(A || B) without padding.
What should I do? The tests, as it seems to me, aren't fully correct.

@tarcieri
Copy link
Copy Markdown
Member Author

If you think the tests need to change, can you also update them? The biggest blocker here is the test failure.

@tarcieri tarcieri changed the title [WIP] Reapply "srp: add HomeKit-compatible padding for u and M1/M2" Reapply "srp: add HomeKit-compatible padding for u and M1/M2" Apr 2, 2026
@tarcieri tarcieri marked this pull request as ready for review April 2, 2026 15:33
@tarcieri tarcieri merged commit 5b3bd1f into master Apr 2, 2026
8 checks passed
@tarcieri tarcieri deleted the srp/reapply-272 branch April 2, 2026 15:40
mnvr added a commit to ente-io/ente that referenced this pull request Apr 24, 2026
…es (#10195)

Ref:
- The run where I noticed this -
https://github.com/ente-io/ente/actions/runs/24838660254/job/72706010895?pr=10185
- The upstream fix - RustCrypto/PAKEs#285

Since the upstream fix is unreleased, and also is part of a rc build
that switches from digest 0.10 to 0.11, the diff in this branch is
bigger than warranted. Even now, we'll have both digest's is the build
until we bump the argon2 dep tree (there is an update available, but it
is an rc, so for now I've let that argon2 bit keep using the old digest
0.10)

---

Some unrelated formatting changes since I ran cargo fmt on the various
crates that depend on ente-core as I went around building them.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants