I'm trying to understand the specific differences between token account creation methods, and the differing implementation details between apps. Specifically, why a token account in a transaction would be marked as on-curve.
Some apps will use createAccount
and then initializeAccount3
, and other times createIdempotent
is used. The first case will sometimes include an extra signer on the transaction for the token account, which is a related point of confusion.
What are the differences between these implementations? Why is it that some apps using createAccount
and then initializeAccount3
will include an extra signer with an on-curve address?