Ответ 1
Сначала проверьте свой контекст:
Если контекст - это кредитные карты, лицензии на водительские права, номера государственных лицензий (а не SSN), думают, что Лунь или Мод 10. Если какая-либо другая отрасль, имеет ли эта отрасль стандарт дефакто? Если нет, то разработчик системы использует цифры также игрока в отрасли, имеющей фактический стандарт?
Никто не любит изобретать велосипед, если им это не нужно.
Если это не поможет:
Не предполагайте, что все цифры в проверенных вами ключах используются для получения контрольной цифры. Для расчета контрольной цифры (или любой другой комбинации) используются только 4 или 8 цифр. Также возможно наличие некоторого внешнего номера PREFIX, который используется с другими цифрами для получения контрольной цифры. Итак... выровняйте все свои номера с одинаковой контрольной цифрой и посмотрите, что такое сходство. Можете ли вы добавить к ним номер, а затем всегда достигать контрольной цифры? Можете ли вы проверить только первые несколько цифр? Последние несколько цифр? каждая другая цифра?
Удачи.