4 ms·
> Homograph attacks are still a problem without unicode. Sure, but with ASCII there are just two or three sets of homographs ("l1I|", "O0" mostly), whereas wit
by p-e-w 4y ago
> Homograph attacks are still a problem without unicode.
Sure, but with ASCII there are just two or three sets of homographs ("l1I|", "O0" mostly), whereas with Unicode there are potentially thousands of confusable characters, and more are constantly being added.
> As far as input devices have you used an IME hands on before? Non-latin characters aren't really any more "additional tools or configuration" than when during install you select "English" as your language.
This ignores the millions and millions of devices still in use (and not going anywhere) that don't have "input methods" or anything like it.
Try setting up an IME on a computer running DOS (which is still everywhere in many public offices), on an industrial machine with a basic keyboard, on an aircraft avionics system, etc.
Basic English Latin is the common denominator. That won't change until all those "long tail" devices are gone.
- zamadatix 4y agoThere are indeed more characters but the entire class of additions can be boiled down to "check for characters from mixed scripts in the same token" not "compare n^2/2 characters for similarities" at which point you're back to the original homograph/homoglyph problem. Regarding the millions of pre-unicode devices the exact same can be said about public machines running DOS, industrial machines with basic keyboards, aircraft avionics systems, etc of non-English countries too. After all the rest of the world didn't just use latin text or avoid computers until Unicode finally appeared and was supported. Many did, many didn't - the systems and encodings being so painful is what resulted in Unicode. The whole point of using Unicode for base things like programming languages, domains, etc is so everyone from all languages (including English) can take advantage of the 10s of billions of devices that do support unicode instead of being limited to the long tail of a millions of devices until every last one is turned off. The support of these use legacy use cases was designed into Unicode and is why ASCII maps to the first 8 bytes, Unicode is just smart enough to not require everyone do that for every device because some 30 year old machine in a warehouse needs it.