elixir-stellar-client
elixir-stellar-client copied to clipboard
SEP-10: muxed account and memo support
SEP-10 Muxed Account & Memo Support
SEP-10 now supports authenticating users of shared, pooled, or omnibus Stellar accounts.
These users are either represented using a muxed account (an M... address) or a Stellar account (G...) accompanied by an ID memo.
Changes
buildChallengeTx() or the equivalent function
- Allow muxed accounts as client account parameter values
- Add a optional
memoparameter that accepts a 64-bit integer representation and attach it to the challenge transaction returned- If your language does not support optional parameters, this may be a breaking change
- Disallow muxed client accounts and memos to be passed in the same call; they are mutually exclusive parameters
readChallengeTx() or the equivalent function
- Allow muxed accounts as source accounts of the first operation within challenge transactions
- Add a 64-bit integer representation
memoto the return value if present in the challenge transaction- Depending on the data type of the return value, this may be a breaking change
- Disallow muxed client accounts and memos to be present in the challenge transaction; they are mutually exclusive
Implementations
The JS and Python SDKs have implemented this functionality, please use them as references:
https://github.com/stellar/stellar-protocol/issues/1056