ストレッチング

提供: セキュリティ
2013年4月21日 (日) 14:26時点におけるDaemon (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク


読み方

ストレッチング
すとれっちんぐ
stretching
すとれっちんぐ

概要

ストレッチングは、ハッシュ値の計算を何回も(1000 - 10000回程度)を繰り返すことです。総当たり攻撃に対する対策です。ハッシュの回数を増やすことで、計算コストを増やします。

ストレッチングの回数を増やすことは、サーバの負荷を増やします。

GPUで7時間かかるクラッキングは、ストレッチングを1万回すると、7万時間(約8年)程度になります。

弱いパスワードを救えるわけではありません。

1文字長くすることは、100回程度のストレッチングに相当します。 パスワードを長くすれば、ストレッチングの必要性は、薄れていきます。

使い方

プログラミングとしてのイメージは、以下の通りです。 ストレッチングのコーディングは、いろいろあります。

<?php
$hash_type = 'sha256';
$hash = hash ($passwd, $salt);
for ($i = 0; $i < $max_stretching; ++$i) {
	$hash = hash ($hash_type, $hash . $passwd, $salt);
}
?>

関連項目




スポンサーリンク