2017-03-21 61 views
0

Tomcatサーバーを起動すると、ログが表示されます。「[SHA1PRNG]を使用したセッションID生成用のSecureRandomインスタンスの作成」[SHA1PRNG]を使用したセッションIDの生成は安全ではありませんか?

ここに質問があります! 私が知っているように、SHA1は安全ではありません。もしそうなら、[SHA1PRNG]を使ったセッションIDの生成は問題ですか?

セキュリティ上の問題がある場合は、代替アイデア(普遍的な)は何ですか?

+0

実際には、SHA1PRNGが安全であるかどうかは、TomcatのセッションIDがかなり長いことを考慮して、十分に安全であることを意味します。 – EJP

答えて

1

ポイントは次のとおりです。SHA1が実際に壊れている、例https://security.googleblog.com/2017/02/announcing-first-sha1-collision.html

を参照しかし:これは、「のみ」の衝突のためであり、それらは処理の数百のCPU時間を要しました。

2つの点が関連しています: - 衝突の計算には出発点が必要です。セッションIDがないと漏れても何も役立たないからです。 - セッションが数時間

にのみ有効である私は、少なくとも短期間のセッションIDのために、セキュリティ上のリスクとして

+0

ここで、セッションIDが短時間だけ維持されることをお勧めします。ありがとうございました! –

0

短い答えを、それを考えていない:SHA1-PRNGはSHA1であっても破壊されません壊れた。

長い答え:衝突耐性、前の画像の抵抗、および第二の事前イメージ抵抗:

暗号学的ハッシュ関数は、最も一般的に引用されたものがあること、多くの異なる特性を有することが要求されます。しかし、たとえランダムなオラクルのように見えるような、意味を持たなくても、私たちが望む他の特性があります。ハッシュ関数をあらゆる種類のクレイジーな方法で使うことができるように、これらのプロパティを要求します。人々は、ハッシュ関数がセキュリティを取得していると考えることができます。

実際には、異なる構造は、基礎をなすハッシュ関数の異なるプロパティに依存します。 Sha1は、特に、予備像抵抗に依存し、衝突抵抗または第2の予備像抵抗には依存しない。

sha1で衝突が検出されていることはわかっています(これは長年にわたり知られていましたが、最初の衝突例は最近公開されたばかりです)。しかし、誰もsha1の他の所望の特性が満足されないという証拠を提供していない。

したがって、sha1が使用されている場合、衝突抵抗を必要とするコンストラクトは破損しますが、このプロパティを必要としないコンストラクトは依然として問題ありません。 Sha1-prngはセキュリティのために衝突耐性を必要としません。 HMAC-sha1もそうではありません(私は多くの人がそのことについても不思議に思います)。

+0

うわー!!、あなたの答えは私を助けてくれました!ありがとうございました!!! –

関連する問題