メニュー

身元番号 国別の長さと文字種の違い

身元番号の桁数と文字種は国ごとに大きく異なります。純数字の国、英数字混在の国、生年月日を含む国、途中で体系が変わった国を例に、入力欄の作り方を考えます。

公開日

  • 公的番号
  • 国別

身元番号の国別の長さは、数桁から十数桁まで幅があり、数字だけの国もあれば英字を混ぜる国もあります。世界共通の一つの書式があると考えて入力欄を設計すると、どこかの国で必ず破綻します。この記事では、国による違いの傾向と、違いを受け止める入力欄の考え方を確認します。

桁数と文字種はどのくらい違うのか?

違いは二つの軸で捉えると整理しやすくなります。桁数の軸と、使える文字の軸です。

  • 数字だけを使い、桁数も固定の国。発行の規則が単純で、入力欄も作りやすい部類です。
  • 数字だけだが、桁数が複数ある国。発行の時期や種類によって長さが変わります。
  • 英字を混ぜる国。頭文字だけを英字にする国もあれば、途中にも英字が入る国もあります。
  • 生年月日を番号に組み込む国。番号の一部がそのまま生年月日になっています。
  • その他の記号を使う国。区切りやチェック用の文字が付く場合があります。

同じ国でも、制度の見直しによって書式が変わることがあります。古い番号を持つ人と新しい番号を持つ人が同時に存在する期間があるため、現行の書式だけを正しいとする作りは危険です。

生年月日が番号に入っている国はどう扱うのか

北ヨーロッパなどには、番号の一部が生年月日そのものになっている体系があります。この場合、番号から年齢を計算できてしまうため、取り扱いには注意が必要です。番号を保存するだけで、生年月日という別の個人情報を間接的に保存したことになります。

また、生年月日が入っているからといって、それを年齢の判定に使ってよいわけではありません。番号の書式が変わった時期や、桁の繰り上がりの都合で、単純な読み取りが成り立たない場合があります。年齢は必ず生年月日の項目から計算してください。判定の考え方は年齢確認テストの作り方で扱っています。

チェックディジットがあれば本物だと分かるのか?

分かりません。末尾の一桁または二桁を、重み付きの合計を割った余りなどから計算する仕組みは多くの体系で使われています。これは書き間違いや隣り合う数字の入れ替わりを見つけるための仕組みです。

計算が合うことは、番号が形式上整っていることを示すだけです。発行機関の台帳に登録されているかどうかは別の話であり、提示された番号が実在の人物のものかどうかは、この計算では分かりません。チェックディジットの照合を「本人確認ができた」と表示する作りは避けてください。

桁数を固定した入力欄のどこが問題か

固定の桁数を前提にした入力欄は、次のような場面で利用者を弾きます。

  • 桁数が制度の変更で増減したとき。
  • 古い書式の番号を持つ人が入力したとき。
  • 区切り記号や空白を混ぜて入力したとき。
  • 英字を小文字で入力したとき。

入力欄を分けて桁ごとに区切る作りは、見た目は親切ですが、想定外の書式を受け取れなくなります。まず自由な文字列として受け取り、保存の前に空白と区切り記号を取り除き、大文字小文字をそろえる、という順序が扱いやすくなります。

ツールで複数の国を比べる

当サイトの身元生成ツールでは、国と地域を切り替えるだけで、その国の形式に沿った身元情報を生成できます。同じ画面で国を変えて見比べれば、桁数や文字種の違いが具体的に分かります。入力欄の確認に使う値も、その場で用意できます。

生成される身元情報はテスト専用の合成データであり、実在の人物になりすます目的には使えません。

扱う国の数が多い場合は、国と地域の一覧から書式をたどると作業が進めやすくなります。生成した値を資料に載せる前に知っておきたい考え方は合成データと匿名化の違いを参照してください。

開発者向け: 国ごとの規則をどこに置くか

番号の検証を国ごとに切り替えるとき、規則をどこに置くかで保守のしやすさが変わります。入力の直後に弾くのか、保存の直前にまとめて確認するのか、方針を一つに決めてください。複数の層で別々の規則を持つと、片方だけ直したときに食い違いが生まれます。

桁数を定数として書き込むのは避け、国ごとの規則の集まりとして持たせます。規則が見つからない国については、確認をしない「未知の形式」の分岐を必ず用意してください。規則がないことを理由に入力を拒否すると、対応していない国の利用者が全員はじかれます。

小文字で入力された英字は、比較の前に大文字へそろえます。そろえずに等価比較をすると、見た目が同じ値が別物として扱われます。逆に、保存する値は入力のまま残しておき、表示のときに整える方法もあります。どちらを選ぶにせよ、比較と保存で扱いを分けることが要点です。

次のステップ

まず、手元の入力欄に桁数の上限が書き込まれていないかを確認してください。書き込まれている場合は、国ごとの規則に置き換えます。次に、規則のない国を入力したときにどう振る舞うかを実際に試します。拒否ではなく通過するのが望ましい挙動です。身元生成ツールでいくつかの国を切り替えて、値の形を見比べておくと判断が早くなります。

続けて読む

オンライン身元・テストデータ生成ツールの関連記事