マイナンバーにおける法人番号の検査用数字ごとの誤り率を乱数で計算
ここではデジタル・フォレンジック研究会で書いたコラム
「マイナンバーのチェックデジットについて」
で書きそびれた法人番号のチェックデジット問題を検証します。
このプログラムでは以下の手順で誤り率を計算しています。
- 12桁の乱数を発生し、それに検査用数字を計算して加えて法人番号を生成。検査用数字に応じて出現数を1増やす。
- 13桁のうち乱数で決めた桁の数字を書き換え、それでも法人番号として有効(検査用数字が一致)なら、1桁誤り発生数を1増やす。
- 13桁のうち乱数で決めた隣り合う2桁の数字を入れ替え、それでも法人番号として有効(検査用数字が一致)なら、2桁入替誤り発生数を1増やす。
なお、2桁入替誤りが発生したときにはその法人番号を下に列挙しています。赤字の2桁を入れ替えても、法人番号として有効なので確かめてみて下さい。
検査用数字 | 出現数 | 1桁誤り発生数 | 2桁入替誤り発生数 |
0 | | | |
1 | | | |
2 | | | |
3 | | | |
4 | | | |
5 | | | |
6 | | | |
7 | | | |
8 | | | |
9 | | | |
合計 | | | |
2桁入れ替え誤り発生法人番号
Written by Tetsutaro UEHARA.
すなばに戻る