二要素認証のコードが覚えやすいような気がする件

きっかけ

最近テレワーク続きなこともあって二要素認証を使う機会が多いんだが、 あの数字の羅列が結構覚えやすい数字のことが多い気がしてちょっと考えてみた。

前提

  • 数値は完全な乱数だと仮定する
  • 「覚えやすい = 同じ数字が2回以上現れる」だと仮定する
    • 4〜6桁くらいのコードで同じ数字が複数の桁に現れると、リズムが良くなって覚えやすい気がする
    • 他にも「345 nnn」みたいな3桁以上連続の数え上げが現れるとかも覚えやすいけど、ここではちょっと外す
  • 6桁のコードで考えてみる
    • 自分がよく使うから

確率

6桁のコードの中に1回現れた数字が全く現れない確率は

 \dfrac{10}{10} \times \dfrac{9}{10} \times \dfrac{8}{10} \times \dfrac{7}{10} \times \dfrac{6}{10} \times \dfrac{5}{10} = \dfrac{151200}{1000000} = 15.12\%

「6桁のコードの中に同じ数字が2回以上現れる」のは↑の確率の余事象だから

 100\% - 15.12\% = 84.88\%

なるほど、8割以上の確率で同じ数値が現れるんだとすると、 「覚えやすい数値ばっかりだな」と感じるのも無理ないってことか。

余談

高校数学の成績とかめっちゃ悪かった人なので、 間違いとかはこっそり指摘してあげてください(爆沈)