Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add legacy V2 identity key association #97

Closed
wants to merge 7 commits into from

Conversation

richardhuaaa
Copy link
Contributor

@richardhuaaa richardhuaaa commented Sep 15, 2023

Needed to test out v3 in current SDK's without introducing breaking changes. Publishing now to avoid conflict with Daria's ramp-up task.

richardhuaaa added a commit to xmtp/libxmtp that referenced this pull request Sep 26, 2023
…nstallation key (#230)

An association proves that a given XMTP installation key is acting on behalf of a given blockchain account address, typically using a signature of some kind. There can be multiple different types of associations, one of which is an [EIP191 association](https://eips.ethereum.org/EIPS/eip-191). I'm adding [another association type](xmtp/proto#97) shortly.

We haven't settled on consistent terminology until recently. To avoid confusion, this renames:
- Association.addr -> Association.blockchain_address
- Association.account_public_key -> Association.installation_public_key
- Association -> Eip191Association

Also fix some lints/unused imports.

**Note: This PR will break any existing databases used by the CLI. Please re-register any installations after this lands.**
@richardhuaaa richardhuaaa marked this pull request as ready for review September 28, 2023 20:52
@richardhuaaa richardhuaaa requested a review from a team as a code owner September 28, 2023 20:52
// Legacy - all of the information needed to construct the Create Identity
// association text used in XMTP v2
message CreateIdentityAssociationData {
string wallet_address = 1;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is confusing to me, since the Create Identity association text is actually the encoded protobuf of the public key, not the wallet address.

// EIP191Association is used for all EIP 191 compliant wallet signatures
message Eip191Association {
AssociationTextVersion association_text_version = 1;
reserved 1;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we care about reserving fields if we aren't yet worried about interoperability between existing versions. Think we can just throw away all our existing v3 keys and start fresh

Base automatically changed from xmtpv3 to main October 13, 2023 19:08
@neekolas neekolas closed this Dec 15, 2023
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