FIP: Associate FID to domain #106
Replies: 4 comments 11 replies
-
Beta Was this translation helpful? Give feedback.
-
I'd prefer a solution that uses the DNS TXT record instead of URI to a JSON file. (Could support both). Not everyone that owns a domain has it pointing to a server where they have control of the paths and files but all DNS registrars should support adding custom TXT records. It should be easier for non-technical folks to buy a domain and google how to add the custom TXT record without even needing to point the domain to a web server. |
Beta Was this translation helpful? Give feedback.
-
I'm trying to understand if this will actually solve the problem (or which problem it may solve). Let's take the example given in the FIP. User vitalik, posts a scam link to On the other hand, we may have a user saying that they represent coca-cola. In this case, the association with coca-cola.com does indeed give them credibility. However, I think that in most cases, for large organisations, it is very hard to setup the association as described in the FIP. I think that eventually this association will be expressed by ENS subdomains just like it's expressed by corporate emails, so a more practical solution would be to allow ENS subdomains for usernames: if I use vrypan.coca-cola.eth, then you know I'm associated with the organisation (and they will revoke this association as soon as it's no longer valid). |
Beta Was this translation helpful? Give feedback.
-
I'm very supportive of some form of domain verification. As the proposal describes, it mitigates spam and scams, and will be useful as we open up registration. Given that FIP-4 fnames are ENS names, I think it might be a cleaner overall design to manage these associations at the name level, using ENS. It's definitely a valid concern that normies don't use ENS, but normies who use Onchain NamesENS supports importing DNS domains, using a TXT record as proof of ownership, similar to the verification approach suggested here. The existing FIP-4 spec requires that L1 fnames end in Pros:
Cons:
Offchain NamesOffchain names like
Steps 2 and 3 could be managed by the fname server. To verify domain association for an offchain fname, clients would read the verified DNS domain from the ENS/fname TXT record, resolve the DNS domain and get the linked address from the DNS TXT record, and finally validate the signature against the linked address. Pros:
Cons:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Title: Associate FID with Domains - Implementation FIP
Authors: @eulerlagrange
Note: This proposal is still in the early stages and subject to refinement.
Abstract
This proposal aims to address the issue of potential impersonation and scams within the farcaster community by enabling domains to associate one or more FIDs with themselves. By doing so, users can clearly identify authorized representatives of specific domains. As farcaster continues to grow, the risk of malicious actors increases, and it becomes crucial to find a solution to this problem.
Problem
As of 07/27, the fname
@metamask
is available, leaving room for someone to register it and impersonate Metamask support. While a MM impersonation might be detected quickly, smaller projects might not have the same level of vigilance, making them more susceptible to scams.Existing platforms like Discord, Telegram, and Twitter have not yet provided an effective solution to this problem within their UI. Usually you have to cross reference the identity you’re talking to with a web page or pinned message.
To mitigate this, the proposed FIP seeks to establish a verifiable bidirectional association between FIDs and domains.
Bidirectional association is crucial to ensure that a user's FID cannot be linked to an inappropriate or offensive domain without their consent.
Solution
Domain Side
The suggested solution involves utilizing the
.well-known
path to store a JSON object containing the associated FIDs for a domain.Example JSON document hosted at
https://eulerlagrange.com/.well-known/farcaster-configuration.json
:The JSON object includes the following fields for each associated FID:
fid
: The identifier associated with the representative.assertion
: A statement authorizing the domain to list the FID as a representative.role
: The role of the representative (e.g., customer support, admin).By using this approach, web3 projects can implement a secure method for verifying domain representatives, thus minimizing the risk of scams and impersonation within the community.
User Side (Registration)
A user who wants to be associated with a domain also needs to take some action. It's pretty much the example same flow as setting an ENS as your handle.
After finishing the screenshotted form, the client will make a request to /.well-known/farcaster-configuration to make sure that the domain config is setup correctly. Then a message will be signed and sent to the hubs.
Each hub can also resolve ~/.well-known/farcaster-config to make sure that the domain is registered correctly.
User Side (Client)
The clients can also locally verify the domain association is valid.
A simple mockup of what that would look like in the UI:
Beta Was this translation helpful? Give feedback.
All reactions