The ConfidentialFungibleToken header (added in #818) states that sharing key material between wit_ConfidentialTokenSK and wit_ConfidentialTokenEK is permitted and safe, because domain separation keeps the published account identifier from revealing the encryption scalar. That is true for confidentiality, which is all the note claims.
#830 fixes M-03 (#797) by requiring the encryption secret in sweep and clearMemos, so holding the account secret alone cannot freeze an account. That guarantee holds only while the two secrets are independent. A wallet following the permitted-sharing note collapses them, and the prune-then-sweep freeze returns.
Qualify the note: sharing is safe for confidentiality, and it forfeits the two-secret authority split sweep and clearMemos rely on. Wallets wanting the M-03 protection must keep the secrets independent.
Refs: #792, #797, #818, #830
The
ConfidentialFungibleTokenheader (added in #818) states that sharing key material betweenwit_ConfidentialTokenSKandwit_ConfidentialTokenEKis permitted and safe, because domain separation keeps the published account identifier from revealing the encryption scalar. That is true for confidentiality, which is all the note claims.#830 fixes M-03 (#797) by requiring the encryption secret in
sweepandclearMemos, so holding the account secret alone cannot freeze an account. That guarantee holds only while the two secrets are independent. A wallet following the permitted-sharing note collapses them, and the prune-then-sweep freeze returns.Qualify the note: sharing is safe for confidentiality, and it forfeits the two-secret authority split
sweepandclearMemosrely on. Wallets wanting the M-03 protection must keep the secrets independent.Refs: #792, #797, #818, #830