Draft: SNS Core
Overview
Writing names to Bitcoin is permissionless, meaning no service can enforce character validation at the point of inscription. Other naming systems have struggled with complexity and disputes over valid characters. These realities, combined with the fact that SNS began as an experiment, led the early community to opt for a highly permissive character set. It has been fun but also a mess!
Solution: SNS Core
SNS Core defines a stricter subset of valid characters and a limit on length which will improve SNS robustness for applications like wallet resolution.
Core Character Set
Letters (
a-z
)Numbers (
0-9
)Hyphen (
-
)Underscore (
_
)
Upper or lowercase characters are both valid, but will indexed as lowercase.
Core Name Length
Name: Must be ≤ 63 characters
Namespace: Must be ≤ 63 characters
Combined:
name
, plusname space
plus.
can be up to 127 characters
These constraints mirror DNS standards and prevent indexing edge cases.
Note: There is no specification for subdomains in SNS yet.
Indexing SNS Core
SNS core does not make any breaking changes to indexers or invalidate any previously inscribed names. All rules in the SNS spec remain unchanged. SNS Core defines a subset of the existing names.
Only Index SNS Core
Follow the index spec
Add additional validation for Core characters and length restrictions
Recommended for wallets and DNS-like applications
Flag SNS Core
Follow the index spec
Add additional validation for Core characters and length restrictions and add a boolean flag to each name that passes.
Recommended for marketplaces
Last updated