matrix-org/matrix-spec-proposals#3231 has landed and is specified with matrix-org/matrix-spec-proposals#3616, and has landed in unstable-spec (pre-release, post-formalisation) with ruma/ruma#834
It'd be nice if rust-sdk could expose this registration/authentication flow, so that clients like Fractal could implement this flow easily.