トルコの身分番号と検査数字
トルコ国民は全員が11桁のT.C. Kimlik Numarasıを持っています。末尾2桁は先頭9桁から計算する検査数字です。番号を発行するNVİはこのことを明らかにしていますが、計算式は公開していません。このガイドでは、広く使われている公開の計算式、それで見つかる誤り、式から導かれる性質、番号からはわからないことを説明します。
どんな番号か
T.C. Kimlik Numarası(トルコ共和国身分番号)は、トルコ人口・国籍総局(NVİ)が発行します。NVİによると、2000年に番号のプールが作られ、住民登録の記録(郡、巻、家族番号、個人番号)の順に国民へ割り当てられました。番号は一度だけ与えられ、変更できません。身分証明書に記載され、行政サービス、銀行、多くの民間の書式で使われます。
NVİは構成を数文で説明しています。番号は11桁で、末尾2桁は検証用の数字であり、先頭9桁からアルゴリズムで計算されます。さらに、このアルゴリズムはある番号がNVİの発行しうる番号かどうかだけを示すもので、ほかの公的機関が番号を確認できるよう共有している、と付け加えています。計算式そのものはNVİのサイトにはありません。
広く使われている公開の計算式
公開されていて、検証ツールやライブラリの多くが採用している計算式は2段階です。左から各桁をd1〜d11とします。
- 10桁目:奇数番目の桁(d1 + d3 + d5 + d7 + d9)の和に7を掛け、偶数番目の桁(d2 + d4 + d6 + d8)の和を引きます。結果の一の位(10で割った余り、正の値)がd10です。
- 11桁目:d10を含む先頭10桁を足します。和の一の位がd11です。
また、1桁目が0になることはありません。
計算例:先頭9桁が123456789なら、奇数番目の和は1 + 3 + 5 + 7 + 9 = 25、偶数番目の和は2 + 4 + 6 + 8 = 20です。25 × 7 − 20 = 155なのでd10 = 5です。先頭10桁の和は45 + 5 = 50なのでd11 = 0です。番号全体は 12345678950 になります。説明用の例で、実在する人の番号ではありません。
NVİが計算式を公開していないため、LeedyBoxの検証ツールはページ上で公開の計算式を使っていると明記し、レビュー資料でも公式文書で確認できていない式として扱っています。
末尾が必ず偶数になる理由
2つの段階は見落としやすい形でつながっています。先頭9桁のうち奇数番目の和をO、偶数番目の和をEとすると、d10 ≡ 7O − E、d11 ≡ O + E + d10 ≡ O + E + 7O − E = 8Oです(いずれも10を法とする)。どんな整数も8倍すると一の位は0、2、4、6、8のどれかなので、この式では11桁目が必ず偶数になります。1、3、5、7、9で終わる番号はすぐに除外できます。
検査数字で見つかる誤り
- 1桁だけの誤りは必ず見つかります。奇数番目の桁が変わると7Oが変化量の7倍だけ、偶数番目の桁が変わるとEが変わるため、どちらでもd10が合わなくなります。d10やd11を書き間違えれば、その桁のチェックで見つかります。
- 桁の入れ替えは見つからないことがあります。隣り合う奇数番目と偶数番目の桁を入れ替えると、7O − Eは2つの数字の差の8倍だけ変わります。差が5ならこれは10の倍数です。たとえば先頭2桁が入れ替わっていても、16000000018と61000000018はどちらも通ります。
- チェックでは番号の実在はわかりません。0で始まらない11桁の数のおよそ100個に1個は検査数字が合います。発行されたことのない番号が何百万もあるということです。
番号からわからないこと
番号に出生地や性別、年齢が含まれているという俗説があります。NVİはその逆を明言しています。番号には本人が誰か、性別、年齢、宗教、出生地などの意味のある情報は含まれておらず、ある人の番号から親族の身元情報を得ることもできません。誰でも計算できる規則があるのは検査数字の部分だけです。
ソフトウェアで扱うとき
- 番号は11文字の文字列として保存します。算術的な意味はなく、数値の項目はシステムによって桁を補ったり書式を変えたりすることがあります。
- 入力時にチェックして入力ミスを見つけ、本人確認が必要なら連携している公式サービスに任せます。チェックを通ることは本人確認ではありません。
- 実在の番号は個人情報として扱い、URL、ログ、エラー報告、アクセス解析に含めないでください。
- テストデータにはチェックを通る生成番号を使います。検証ツールがブラウザ内で作りますが、実在の人の番号と偶然一致することがあるため、誰かの身元として使わないでください。
よくある質問
公開の計算式は公式のものですか?
NVİは末尾2桁を先頭9桁から計算し、アルゴリズムを公的機関と共有していることは認めていますが、計算式は公開していません。ここで説明した式は広く使われている公開の計算式で、LeedyBoxはその旨を表示しています。
T.C. Kimlik番号は0で始まることがありますか?
いいえ。知られている規則では1桁目は0にならないため、0で始まる11桁の番号は検査数字が合っていても不可とされます。
末尾は本当に必ず偶数ですか?
この式ではそうです。11桁目は奇数番目の桁の和の8倍を10で割った余りなので、必ず偶数です。
誰の番号かわかりますか?
いいえ。チェックは数字だけを使い、NVİによれば番号に個人情報は含まれず、検証ツールはどこにも番号を問い合わせません。
出典
出典:Nüfus ve Vatandaşlık İşleri Genel Müdürlüğü: T.C. Kimlik No İşlemleri・確認日: