タグ

algorithmに関するizumik530のブックマーク (3)

  • マイナンバーのチェックデジットを計算する - Qiita

    そもそもマイナンバーってどういう数字なのでしょうか? これは法律を読みます。調べると「行政手続における特定の個人を識別するための番号の利用等に関する法律施行令」の第八条に書いてあります。 十一桁の番号及びその後に付された一桁の検査用数字により構成されるものとする。 つまり11桁+検査用数字1桁で12桁なんですね。さらに条件があって、 住民票コードを変換して得られる マイナンバーから住民票コードを復元できない 変更されて過去に使っていたものも含めてかぶらない ということになっています。 検査用数字とは? いわゆるチェックデジットですが、計算方法が「総務省令第八十五号」(PDF)の第5条に定義があります。まとめると 検査用数字 : $11 - \Bigl( \displaystyle\sum_{n=1}^{11} P_n \times Q_n \Bigr) % 11$ ただし $\Bigl(

    マイナンバーのチェックデジットを計算する - Qiita
  • マイナンバー(個人番号)の12桁の数字の下一ケタがチェックデジットの数字になるようですが、その計算方法を教えて下さい。

    マイナンバー(個人番号)の12桁の数字の下一ケタがチェックデジットの数字になるようですが、その計算方法を教えて下さい。 総務省令第八十五号にある『検査用数字を算出する算式』では以下のように記載されてます。 第五条 令第八条の総務省令で定める算式は、次に掲げる算式とする。 算式 11―(n=1(シグマ)11(Pn×Qn))を11で除した余り) ただし、(n=1(シグマ)11(Pn×Qn))を11で除した余り≦1の場合は、0とする。 算式の符号 Pn 個人番号を構成する検査用数字以外の十一桁の番号の最下位の桁を1桁目としたときのn桁目の数字 Qn 1≦n≦6のとき n+1 7≦n≦11のとき n―5 以上の計算式のようですが数学が苦手な私にはさっぱり理解出来ません。 例えば、12345678901xという個人番号の場合xに入る数字は何になるのでしょうか? 計算過程を解説して頂けると助かります。

    マイナンバー(個人番号)の12桁の数字の下一ケタがチェックデジットの数字になるようですが、その計算方法を教えて下さい。
  • [メモ] 各種チェックデジットの計算方法 - Qiita

    チェックデジットの計算方法 桁数の多い数字を扱う場合、誤り検知用にチェックデジット(検証番号)といわれるものがあります。大抵は末尾についていたりします(末尾以外にある場合もあります)。 いくつか計算方法をメモしておきます。 以下の計算の元になる数値は、チェックデジットを除いたものです。 実運用上は、少しだけ違う変形版のチェックデジットが使われていることがあります。 参考 モジュラス10 ウェイト2・1分割(Luhn formula) 数値の各桁に、下の桁から2・1・2・1・…の順番に係数(ウェイト)を掛けます。 各桁の結果が2桁の場合には、十の位と一の位を分けて足し合わせます(分割)。 それぞれの合計を求めます。 合計を10で割り、余りを求めます(モジュラス)。 この余りを 10 から引いたもの(10 - 余り)がチェックデジットです。ただし余りが0の場合はチェックデジットも「0」になりま

    [メモ] 各種チェックデジットの計算方法 - Qiita
  • 1