how to check if a string looks randomized, or human generated and pronouncable?

前端 未结 10 1619
旧巷少年郎
旧巷少年郎 2020-12-13 03:55

For the purpose of identifying [possible] bot-generated usernames.

Suppose you have a username like \"bilbomoothof\" .. it may be nonsense, but it still contains pro

10条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-13 04:21

    Just use CAPTCHA as a part of the registration process.

    You can never distinguish real uesrnames from bot-created usernames, without severely annoying your users.

    You will block users with bizzare, or non-English names, which will irritate them, and the bots will just keep trying until they catch a good username (from dictionary, or other sources - this is a very nice one, by the way!).

    EDIT : Looking for prevention rather than after-the-fact analysis?

    The solution is letting somebody else manage user's identities for you. For instance, you can use a small list of OpenID providers (like SO), or facebook connect, or both. You'll know for sure that the users are real, and that they have been solving at least one CAPTCHA.

    EDIT: Another Idea

    Search the string in Google, and check the number of matches found. Shouldn't be your only tool, but it is a good indicator, too. Randomized strings, of course, should have little or no matches.

提交回复
热议问题