Турецкий идентификационный номер и его контрольные цифры
У каждого гражданина Турции есть 11-значный T.C. Kimlik Numarası. Две последние цифры — контрольные, они рассчитываются по первым девяти. Выдающее номер ведомство NVİ это подтверждает, но формулу не публикует. В руководстве разобраны общеизвестная формула, ошибки, которые она находит, свойство, вытекающее из неё, и то, чего номер не говорит.
Что это за номер
T.C. Kimlik Numarası (идентификационный номер Турецкой Республики) выдаёт NVİ — Главное управление по делам населения и гражданства. По данным NVİ, в 2000 году был создан пул номеров, которые присвоили гражданам в порядке записей в реестре актов гражданского состояния (район, том, номер семьи и номер лица). Номер присваивается один раз и не меняется. Он указан в удостоверении личности и используется в госуслугах, банках и многих частных формах.
NVİ описывает структуру в нескольких фразах: номер состоит из 11 цифр, две последние — проверочное число, оно рассчитывается по первым девяти цифрам с помощью алгоритма. Ведомство добавляет, что алгоритм лишь показывает, может ли номер быть выданным им, и что алгоритм передаётся другим государственным учреждениям для проверки номеров. Самой формулы на сайте NVİ нет.
Общеизвестная формула
Формула, которая распространена публично и реализована в большинстве проверочных инструментов и библиотек, состоит из двух шагов. Пронумеруйте цифры слева от d1 до d11.
- 10-я цифра: сложите цифры на нечётных позициях (d1 + d3 + d5 + d7 + d9) и умножьте на 7, затем вычтите сумму цифр на чётных позициях (d2 + d4 + d6 + d8). Последняя цифра результата (по модулю 10, как положительное число) — это d10.
- 11-я цифра: сложите первые десять цифр, включая d10. Последняя цифра суммы — это d11.
Кроме того, первая цифра никогда не равна 0.
Пример: для первых девяти цифр 123456789 нечётные позиции дают 1 + 3 + 5 + 7 + 9 = 25, чётные — 2 + 4 + 6 + 8 = 20. 25 × 7 − 20 = 155, значит, d10 = 5. Первые десять цифр в сумме дают 45 + 5 = 50, значит, d11 = 0. Полный номер — 12345678950; это пример, а не номер реального человека.
Поскольку NVİ формулу не публикует, проверка LeedyBox прямо указывает на странице, что использует общеизвестную формулу, а в рабочих заметках формула отмечена как не подтверждённая официальным текстом.
Почему последняя цифра всегда чётная
Два шага связаны так, что это легко упустить. Обозначим через O сумму цифр на нечётных позициях, а через E — на чётных среди первых девяти. Тогда d10 ≡ 7O − E и d11 ≡ O + E + d10 ≡ O + E + 7O − E = 8O (всё по модулю 10). Восемь раз любое целое число оканчивается на 0, 2, 4, 6 или 8, поэтому по этой формуле 11-я цифра всегда чётная. Номер, оканчивающийся на 1, 3, 5, 7 или 9, можно отбросить сразу.
Какие ошибки находят контрольные цифры
- Одна неверная цифра обнаруживается всегда. Изменение цифры на нечётной позиции меняет 7O на семикратную разницу, изменение цифры на чётной позиции меняет E; в обоих случаях d10 перестаёт сходиться. Неверные d10 или d11 не проходят собственную проверку.
- Некоторые перестановки не обнаруживаются. Перестановка соседних цифр на нечётной и чётной позициях меняет 7O − E на восьмикратную разность этих цифр, а при разности 5 это кратно 10. Например, проходят и 16000000018, и 61000000018, хотя первые две цифры переставлены.
- Проверка ничего не говорит о существовании номера. Примерно у одного из ста 11-значных чисел, не начинающихся с 0, контрольные цифры сходятся — это миллионы никогда не выдававшихся номеров.
Чего номер не сообщает
Распространено мнение, что в цифрах зашифрованы место рождения, пол или возраст. NVİ утверждает обратное: в номере нет значимых сведений о том, кто этот человек, о его поле, возрасте, вероисповедании или месте рождения, а по номеру одного человека нельзя получить данные его родственника. Лишь контрольные цифры подчиняются правилу, которое может рассчитать каждый.
Номер в программах
- Храните номер как строку из 11 символов: арифметического смысла у него нет, а некоторые системы дополняют или переформатируют числовые поля.
- Проверяйте номер при вводе, чтобы ловить опечатки, а для подтверждения личности опирайтесь на официальный сервис, с которым интегрирована ваша система. Пройденная проверка — не проверка личности.
- Обращайтесь с реальными номерами как с персональными данными: не помещайте их в URL, журналы, отчёты об ошибках и аналитику.
- Для тестовых данных используйте созданные номера, проходящие проверку. Инструмент создаёт их в браузере; они могут совпасть с номером реального человека, поэтому никогда не используйте их как чью-то личность.
Частые вопросы
Общеизвестная формула — официальная?
NVİ подтверждает, что две последние цифры рассчитываются по первым девяти и что алгоритм передаётся государственным учреждениям, но формулу не публикует. Здесь описана общеизвестная формула, и LeedyBox так её и обозначает.
Может ли T.C. Kimlik Numarası начинаться с 0?
Нет. По известным правилам первая цифра никогда не равна 0, поэтому 11-значный номер, начинающийся с 0, отклоняется, даже если контрольные цифры сходятся.
Последняя цифра действительно всегда чётная?
По формуле да: 11-я цифра равна восьмикратной сумме цифр на нечётных позициях по модулю 10, а это всегда чётное число.
Можно ли узнать, чей это номер?
Нет. Проверка использует только цифры, по данным NVİ номер не содержит персональных сведений, а инструмент нигде не ищет номера.
Источники
Источник: Nüfus ve Vatandaşlık İşleri Genel Müdürlüğü: T.C. Kimlik No İşlemleri · Дата проверки: