Когда появляются "левые" номера - это уже повод задуматся, и кого-нибудь забанить .
По поводу похожести:
Если при добавлении каждого нового пин-а проверять все имеющиеся в базе на "похожесть" получается примерно N*M операций (N-сколько было, М-сколько добавили)
Можно сначала добавить в базу много новых кодов, а потом среди них искать похожее.
Думаю, это можно реализовать зо (N+M)*log(N+M) операций