5 ms·
Emoji might be weird symbols, still, although I make no estimation how they'll be perceived 100 years from now. Whereas Chinese, Hindi, Japanese, Cyrillic chara
by cmurf 6y ago
Emoji might be weird symbols, still, although I make no estimation how they'll be perceived 100 years from now. Whereas Chinese, Hindi, Japanese, Cyrillic characters are not weird. There should be some reasonable subset of UTF8 supported/supportable for passphrases. The kinds of characters routinely seen printed in newspapers of record around the world.
- toast0 6y agoOnce you venture out of ASCII, you will find that string comparisons are hard. You'll need to get things into the right encoding (as the article states, UTF-16 is alive and well in some places, and there are two forms of that), and you'll probably need to do unicode normalization for some languages, because not every system will do that the same. But, normalization rules change over time, so you'll need to include the normalization used with the password processing code and storage.
- contravariant 6y agoNo I get that forcing alphanumeric is a very arbitrary decision that is far from natural to a large part of the world's population and normally I would advocate for everyone to adopt Unicode. However UTF8 passwords is a recipe for disaster that I want no part of. Passwords should be random byte strings, not a random piece of human language. Now technically alphanumeric isn't quite the same as a random byte-string but it is the one subset of text for which you can be almost certain that it will always be represented by the same bytes (although I suspect someone will point out an exception). Note that not only does Unicode have several different binary representations, but even a sequence of code points has 4 different canonicalizations, that I cannot guarantee will always remain the same.