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

disallow new registration of .arpa, .local, etc handles #1016

Merged
merged 2 commits into from
May 9, 2023

Conversation

bnewbold
Copy link
Collaborator

@bnewbold bnewbold commented May 9, 2023

This is a "stop the bleeding" PR to halt creation and migration of new handles with .arpa, .local, and a couple other special "infrastructure" and "reserved" TLDs.

Rough plan would be to get this in, then ask existing .arpa tricksters to change handle (or better yet just delete those accounts), and then soon disallow at the protocol level (aka, even referencing such a domain would be invalid).

Also adds test coverage to ensure we don't allow "dotless" top-level handles, like "io". These are controversial and seem to be considered an anti-pattern by many IETF folk. I think they would be super duper cool but also super confusing for users, so we should continue to disallow at the protocol level.

cc: @devinivy @dholms for visibility

@bnewbold bnewbold requested a review from dholms May 9, 2023 22:23
@bnewbold
Copy link
Collaborator Author

bnewbold commented May 9, 2023

I think the test failure is not due to this code, but some package/dependency thing

Copy link
Collaborator

@dholms dholms left a comment

Choose a reason for hiding this comment

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

yup seems reasonable 👍

thx for putting this together

@bnewbold bnewbold merged commit a449d79 into main May 9, 2023
@bnewbold bnewbold deleted the bnewbold/disallow-handle-tlds branch May 9, 2023 23:35
@ericsampson
Copy link

fwiw this comment didn't get updated:

does not validate whether domain or TLD exists, or is a reserved or special TLD (eg, .onion or .local)

@bnewbold
Copy link
Collaborator Author

@ericsampson that is intentional in this PR. What we have changed for now is preventing registration of these domains with our PDS implementation, but not yet banned them from the protocol itself. That will come as a second step.

mloar pushed a commit to mloar/atproto that referenced this pull request Sep 26, 2023
…al#1016)

* handles: test 'dotless' disallowed; move .arpa/.local proto-level test

* handles: disallow infra/reserved handles
mloar pushed a commit to mloar/atproto that referenced this pull request Nov 15, 2023
…al#1016)

* handles: test 'dotless' disallowed; move .arpa/.local proto-level test

* handles: disallow infra/reserved handles
@caramelpony
Copy link

Not to beat a dead PR, but could we get clarification on the specific reasoning behind banning .arpa and dotless domains? While the documentation provides justification for other banned special-use TLDs, it doesn’t seem to address these two explicitly.

From a trust and ownership perspective, this restriction feels counterintuitive. Both .arpa and top level domains require a higher level of administrative control and are typically tied to infrastructure, making them verifiably unique and resistant to abuse. Given that ATProto uses domain-based handles as a trust mechanism, preventing the use of these domains seems like an unnecessary limitation. For instance, network operators might want to establish BSky accounts linked to .arpa subdomains for their IP ranges, providing an authoritative channel for network status updates or operational announcements.

Similarly, top level "dotless" domains, while unconventional, could for example be useful to a corporate entity who owns a brand TLD and wishes to use that as their handle (i.e. protocol-wide @apple for Apple), or if a TLD registry operator wishes to establish proof of ownership over their BSky account.

A protocol-wide ban on both of these prevents edge cases where they can be useful.

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.

4 participants