2023年03月26日くいなちゃん


パスワードは本当に定期的に変えたほうが良いのかを検証しました。
「パスワードは3ヶ月ごとに変えてください。」「過去5回以内に使用したパスワードを再設定しないでください。」などとよく言われますが、どのくらい効果があるのか気になったため検証しました。

1パスワードを定期的に変える安全性

1.1全部試行するケース



実際に試行して確かめてみましょう。
単純化のため、パスワードは「0000」から「9999」の4桁の数字をランダムに設定することにします。 これに対し、パスワードを破ろうとするハッカー(クラッカー)は、「0000」から始めて「9999」までを順番に打ち込んでいきます。 「9999」まで打ち込んでも破れなかったときは、再度「0000」に戻ってやり直します。
さて、このときパスワードを変更しなければ、ハッカーは10,000回以内の試行で必ずパスワードを破ることができます。 つまり平均をとると約5,000回の試行で破られると言えます。 では、パスワードを定期的に変更すると、破られるまでの平均回数がこの約5,000回よりも高くなるでしょうか。 もしも高くなれば、パスワードを定期的に変更したほうがセキュリティが向上することを意味します。
それぞれ1,000,000回ずつシミュレートした結果、表1-1のようになりました。
表1-1: パスワードが破られるまでの平均回数
パスワードを変更する頻度 破られるまでの平均回数
変更しない 4999.96回
5000回に1回変更 7486.71回
4000回に1回変更 8003.51回
3000回に1回変更 8503.57回
2000回に1回変更 8997.70回
1000回に1回変更 9510.94回
毎回変更 9994.50回
パスワードを変える頻度を高めるほどハッカーに破られるまでの回数が上がっていますので、パスワードはなるべく高頻度で変えることで、セキュリティが向上することが確認できました。

1.2全部試行しないケース



今の例ではハッカーはパスワードを破れるまで試行を続けましたが、途中でやめるケースでも確認してみましょう。 今度はハッカーは「0000」から「5999」までを順番に打ち込み、それで破ることができなければハッカーは諦めるとします。 このときにハッカーがパスワードを破る確率を求めてみます。
1,000,000回ずつシミュレートした結果、表1-2のようになりました。
表1-2: パスワードが破られる確率
パスワードを変更する頻度 破られる確率
変更しない 60.05%
5000回に1回変更 55.04%
4000回に1回変更 52.02%
3000回に1回変更 51.03%
2000回に1回変更 48.77%
1000回に1回変更 46.83%
毎回変更 45.11%
やはり頻繁に変更したほうが、セキュリティが向上することが確認できました。

1.3過去のパスワードを使わない安全性



次に、過去のパスワードはなるべく使い回さないほうが良いかどうかを検証します。
先ほどの検証で、高頻度でパスワードを変えたほうが良いことが判りましたので、今度は毎回パスワードを変えることにします。 ただし、いくつかのパスワードを順番に使い回して設定することにします。 例えば、パスワードが2個の場合は交互に設定し、3個の場合は「A、B、C、A、B、C、…」のように順番に設定します。
ハッカーは、「0000」から「9999」までを順番に打ち込み、それで破れなければ諦めます。 さて、ハッカーがパスワードを破る確率はどうでしょうか。
1,000,000回ずつシミュレートした結果、表1-3のようになりました。
表1-3: いくつかのパスワードを使い回して設定する
パスワードを使い回す個数 破られる確率
1個 100.00%
2個 74.92%
3個 70.36%
4個 68.30%
5個 67.20%
6個 66.48%
7個 66.02%
8個 65.68%
9個 65.35%
10個 65.14%
パスワードはなるべく多くの種類を使ったほうが破られる確率が下がることが判りました。 つまり過去に使ったパスワードはなるべく再設定しないほうが良さそうです。

2結論

単純化したモデルでは、頻繁に異なるパスワードで更新したほうがセキュリティが向上することが、実験によって確認できました。 ただちょっと面倒なのは事実なので、実際に頻繁に変えるかどうかは別問題になりますね。
1679823939jaf