raffy
Joined 11 years ago
Joined 11 years ago
ENSIP-15 Specification: https://docs.ens.domains/ensip/15
ENS Normalization Tool: https://adraffy.github.io/ens-normalize.js/test/resolver.htm...
Browser Tests: https://adraffy.github.io/ens-normalize.js/test/report-nf.ht...
0-dependancy JS Unicode 15.1 NFC/NFD Implementation [10KB] https://github.com/adraffy/ens-normalize.js/blob/main/dist/n...
Unicode Character Browser: https://adraffy.github.io/ens-normalize.js/test/chars.html
Unicode Emoji Browser: https://adraffy.github.io/ens-normalize.js/test/emoji.html
Unicode Confusables: https://adraffy.github.io/ens-normalize.js/test/confused.htm...
tbh, i'm always impressed by no-coiner and armchair bitcoiner comments -- it's like listening to a straight-edge discuss psychedelics -- how can you comment on a space you *clearly* don't understand?
oof, so...is Ether a security?
Is this tweet an exchange? https://twitter.com/hoffmang/status/1515797969802436608
I believe, the ENS registry only contains "eth" as an rogue node (also "[0-9a-f]{40}.addr.reverse" is used for wallet names). Recently, ".art" started offering tokenized names, where you get both DNS and ENS.
This already exists with Ethereum Name Service (ENS) https://ens.domains and Sign-in With Ethereum.
https://adraffy.github.io/ens-normalize.js/test/resolver.htm...
Also:
https://adraffy.github.io/ens-normalize.js/test/emoji.html
https://adraffy.github.io/ens-normalize.js/test/chars.html
https://adraffy.github.io/ens-normalize.js/test/confused.htm...
https://adraffy.github.io/punycode.js/test/demo.html
Here is a video of another failure case:
https://adraffy.github.io/ens-normalize.js/test/resolver.htm...
I understand HN is a shit-on-crypto echo chamber but it's naive to think crypto is just settlement.
Settlement is simply a low-level primitive. With smart contracts, you can build whatever mechanism you want before making something final. Multisig, clawbacks, timed-delays, time-locks, escrow, recovery wallets, etc.
I've been developing a normalization library for Ethereum Name Service: https://adraffy.github.io/ens-normalize.js/test/resolver.htm...
I'm trying to find the best combination of UTS-46, UTS-51, UTS-39, and prior work on IDN resolution w/r/t confusables: https://adraffy.github.io/ens-normalize.js/test/report-confu...
Personally, I found the Unicode spec very messy. Critical information is all over the place. You can see the direct effect of this when you compare various packages across different languages and discover that every library disagrees in multiple places. Even JS String.normalize() isn't consistent in the latest version of most browsers: https://adraffy.github.io/ens-normalize.js/test/report-nf.ht... (fails in Chrome, Safari)
The major difference between ENS and DNS is emoji are front and center. ENS resolves by computing a hash of a name in a canonicalized form. Since resolution must happen decentralized, simply punting to punycode and relying custom logic for Unicode-handling isn't possible. On-chain records are 1:1, so there's no fuzzy matching either. Additionally, ENS is actively registering names, so any improvement to the system must preserve as many names as possible.
At the moment, I'm attempting to improve upon the confusables in the Common/Greek/Latin/Cyrillic scripts, and will combine these new grouping with the mixed-script limitations similar to IDN handling in Chromium.
Interactive Demo: https://adraffy.github.io/ens-normalize.js/test/resolver.htm...
Also this emoji report is pretty cool: https://adraffy.github.io/ens-normalize.js/test/report-emoji...
What's good about it? Half the post is about Bitcoin. A large chunk is about the ENS token distribution.
There's no link to any of the contracts or code. There's no comparison with existing providers and the trade-offs. There's no discussion on how DAOs are still very immature and evolving. There's no acknowledgement of how ENS has behaved since inception.
Flash loan voting? Clueless.