News:

Want to get involved in developing SMF? Why not lend a hand on our GitHub!

Main Menu

Enhance name duplication detection to account for homoglyphs

Started by shawnb61, December 09, 2018, 06:05:29 PM

Previous topic - Next topic

shawnb61

SMF's existing name duplication checks can be thwarted using homoglyphs.

For example, these two names are distinct & would both be allowed in SMF: "Mіau!" and "Miau!".

More discussion here:
https://www.simplemachines.org/community/index.php?topic=563837.0

Definition & examples of homoglyphs here:
https://en.wikipedia.org/wiki/Homoglyph
A question worth asking is born in experience & driven by necessity. - Fripp

Arantor

The problem is how large the list is. How far down that list do you go?
Holder of controversial views, all of which my own.


shawnb61

Yep.  Still, worthy to have that discussion & consider the enhancement. 

I think with more sites using utf8 (esp. 2.1) this warrants consideration.
A question worth asking is born in experience & driven by necessity. - Fripp

Kindred

Personally, I don't think that this is a large enough issue to waste development time doing it...  seriously, I have seen this sort of issue reported exactly twice in over a decade.
Слaва
Украинi

Please do not PM, IM or Email me with support questions.  You will get better and faster responses in the support boards.  Thank you.

"Loki is not evil, although he is certainly not a force for good. Loki is... complicated."

Sesquipedalian

It might be possible to create a mod to do this relatively reliably and without killing the server, but it won't become a standard feature of SMF any time soon.

Such a mod could use an approach similar to the one I used in 2.1's set_tld_regex() function, by periodically downloading and processing this official file to build an array of substitutions to normalize confusable characters and strings. This array would need to be stored in the database somewhere, and one would want to add a column to the members table that recorded each member's normalized username to use for comparisons.
I promise you nothing.

Sesqu... Sesqui... what?
Sesquipedalian, the best word in the English language.

Advertisement: