1

わかりましたので、これが私たちがパスワードを行う方法です。

注 ソルトの基準を変更しました。

<?


$PASSWORD = $_GET["password"];


$ranNUM = rand(965824, 957873488423748423486483);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);



for ($i = 1; $i <= $_GET['num']; $i++) {
$PASSWORD =  md5($PASSWORD);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', FALSE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  md5($PASSWORD);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', FALSE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  md5($PASSWORD);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', FALSE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);
$PASSWORD =  hash('sha512', $PASSWORD.$ranNUM.'MONKEY MONEY sad happy 7ab27t8g2hjq8tt 2g y8t 82 t2g edb t7e2gqjcb  t8egsjc byut87qebcjn 87ctyeqcb t78ye jscyt8ique bcg781eghjs btgq78 cbqjg78pqdgj d t87dqgjh bxauy fpqdgs,q vayupf d', TRUE);

print $PASSWORD;
print "<br>";

}

//print $PASSWORD;
?>  

私たちがしていることは、パスワードと一緒に 7 という数字を送信し、暗号化を 7 回実行することです。

そのユーザーの乱数 (別の DB に保存されます) とともに、同じサーバーではありません

次に、パスワードがどうあるべきかがわかります。

これは何だと思いますか?

たとえば、123 を 2 回実行すると、

íaªyå`ˆsœA²„†N¸jø¦žÃïªd*hÂ?‘\e½s­&žÉ:Ñl6DïƒÀ`ß,¢‹HÎÌ(üBìð6

これをさらに安全にするために、それぞれにランダムな段落を含めることができます。

どこかに保存する必要がありますが、google や bing などのサイトをスキャンして、そこからランダムな文を取得できれば素晴らしいでしょう。

あなたの考えを教えてください。

4

1 に答える 1

2

それはやり過ぎであり、理論的には正しいかどうかはわかりません。

(塩漬けの)パスワードを総当たり攻撃に苦しめる1つの適切な方法は、RSAのPBKDF2です。

これがPBKDF2PHPの実装です。

また、 Blowcrypt(同様の意図ですが、blowfishアルゴリズムを使用)とScrypt(攻撃者がパスワードをブルートフォースするためにどれだけのメモリを浪費したいかを知ることができる厄介な小さな仲間)にも興味があるかもしれません。

于 2012-07-04T02:25:29.727 に答える