6
5

More than 5 years have passed since last update.

sshの暗号化はRSAでいいのか?

Posted at
ssh-keygen -t rsa

で生成されるkeyはデフォルトで2048bitです(最小が768bit)。
この暗号はどのくらい強力なのか?
ざっくりいって、この暗号はいつまで使えるのか?
という事を調べます。

免責

以下の解析は非常にざっくりしているので参考程度に考えてください。
私は一切の責任を負えません。

RSA Factoring Challenge

RSA Factoring Challenge(Wikipadia)にRSA secuirty (株)の実施した
RSAの暗号解読チャレンジの記録が載っています。このチャレンジは1991から2007まで開催されたそうです。

ここの表から単にkeyの長さ(bit)と解読された年を切り出します:

rsa.dat
330 1991
364 1992
397 1993
426 1994
426 1996
463 1999
496 2004
512 1999
563 2009
576 2003
596 2010
629 2010
640 2005
663 2005
696 2013
704 2012
768 2009

これを元に外挿する事で、2048bitのキーが解読される年代を見積ろうという記事です。
512や768のような特徴的な長さと他のキーで年代がすこしずれる(under estimate)のと、
これらの計算は限界を攻めているので、実際にkeyがあぶなくなるまでにLagがある(over estimate)が打ち消すと思って
特になにも考えす、最小二乗法でfitします(いいわけ)。

set xlabel "Year"
set ylabel "Digits"

a = 15 # 目測で見積り
b = 300 - 15*1990
f(x) = a*x + b
fit f(x) "rsa.dat" u 2:1 via a,b

set term png
set output "rsa.png"

plot "rsa.dat" u 2:1 t "", f(x) t ""
print (2048 - b) / a

rsa.png

この結果2048の長さのkeyのセキュリティが問題になるのは2100年頃となります。
標準偏差で、a = 15.03 +/- 1.9, b = -29550 +/- 3750 となるので、2100 +/- 10くらいです。

なにか技術革新がないと80年は大丈夫ですね。

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5