問題タブ [whirlpool]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java Wurlpool ハッシュ
私はJavaで何かをハッシュする必要があることに気づきました.ハッシュを理解していないので、私はここにいます.
簡単な方法がないことはすでにわかっています。
だから私の質問: Javaでワールプールハッシュはどのように行われますか?
編集:GNU Whirlpoolを提案されましたが、動作させることができません
出力は次のとおり
<?R??XF
????n?g?Tl??H?po??????? m?
5?F ??
y?QhTM?|?I???
です。それとも、その仕組みを理解していませんでしたか?
解決:メソッドが未加工のバイト データdigest
を出力しているようです。Apache 共通コーデックライブラリのメソッドを使用して HEX 形式に変換しました。
php - PHP セキュリティ - ハッシュ化されたパスワードが壊れている場合のユーザー アカウントのチェック
現在、私はPHPをいじっているだけですが、拡張したいアイデアに出くわし、あなたの意見でそれがどれほど安全であるか、実用に耐えられるように改善するにはどうすればよいかを知る必要があります.
これは、パスワードをデータベースに保存する方法です。
プレーンテキストパスワード -> ハッシュパスワード (私はワールプールを使用しますが、実際にはどの方法でも機能します) -> ハッシュされたパスワードをシャッフル/スクランブルします (str_shuffle() 関数を使用)。
ユーザーのパスワードをこのようにデータベースに保存することで、データベースが侵害された場合に、攻撃者がデータベース内の壊れたパスワード ハッシュを元に戻せないようにします。(ある意味で、ハッシュであるランダムなテキストをどのように逆にすることができるのでしょうか?-同じ文字を共有するハッシュのリストを比較することで、可能性のリストを作成できると確信しています。)
ログインフォームに入力したユーザーのパスワードが正しいかどうかを確認する方法 (データベース内の壊れたハッシュと比較して) は、両方の文字列/パスワードで個々の文字 + 数字 (af & 0-9) を数えて、一致する場合は、正しくログインしていると思います。
繰り返しになりますが、これがあなたの意見でどの程度安全であるか、また実用に耐えられるようにするにはどうすれば改善できるかを知りたいです。(可能であれば。)また、「可逆」ハッシュを回避するために最善を尽くしたいと思います。(つまり、パスワードが一致することを保証する独自の方法を作成するというアイデアです。攻撃者がデータベース内のパスワードを元に戻すことが不可能になることを完全に保証するために、最善の推測の仮定に近づけたいと考えています。
& はい、これがばかげていることはわかっています。セキュリティ上の欠陥を修正するのではなく、さらに多くの欠陥を引き起こす可能性が高いからです。しかし、これは私がふざけているだけであり、おそらくそれを実用的にしたいと考えています。
他の情報:
1) パスワードは一意のソルトで保存されます (1 つのアカウントが同じソルトを共有するわけではありません)。
2) パスワード ソルトは常に変更されます (ユーザー アカウントでログインが成功するたびに、データベース内のユーザー ソルトが変更されます。データベース内のハッシュを変更するためにこれを行い、パスワードの衝突の頻度を減らします (願わくば) ) & また、不要なユーザーが同じ間違ったパスワードを何度も使用してログインするのを防ぐためです (パスワードを見つけた場合、これを達成する唯一の方法は、ログイン システムが脆弱であるブルートフォースまたは「推測」することです)。
パスワードの衝突とは、「hello」と「blue」という単語がまったく同じ文字数を共有している可能性がわずかにあることを意味します (説明したように、個々の文字と数字を数えて比較し、正しいパスワードであると想定します) .)
3) また、ハッシュ化されたパスワードの最初の 3 文字/数字を str_shuffle の影響を受けないようにして、パスワードが正しいことを確認するのにも役立つかもしれません。(2 つのチェックを作成することにより、1) 両方の文字列が同じ FIRST 3 CHARS/Numbers & 2 を共有しているかどうかをチェックし、2) 次に、各文字列の文字数を比較します。(パスワードの衝突が頻繁に発生しないことを願っています)。
4) 明らかに、他のセキュリティ対策が追加されます (つまり、最大ログイン試行数、captcha など。自動化されたブルートフォース攻撃から保護し、ハッカーが可能なパスワードまたは実際のパスワードを見つけるのを困難にします)。
私はこれの PoC を成功させました。パスワード衝突の可能性を確認するために、辞書攻撃/ブルート フォース攻撃に対して PoC をまだテストしていませんが、それは魅力のように機能します。& それらの頻度。
「役に立たない」情報をたくさん述べた場合は、無視してください。私はこれを合理的に説明するために最善を尽くしています。
php - ユーザーがワールプール ハッシュと一致するパスワードを入力したかどうかを確認する方法は?
最近、パスワードの暗号化について調べ始めました。私の現在のコードは次のようになります:
ユーザーが正しいパスワードを入力したかどうかを確認するにはどうすればよいですか? ソルト、ハッシュ、および暗号化メソッドのパラメーターを取り、ブール値を返す何らかの組み込み関数があると思います。
また、塩を生成する最も安全な方法は何ですか? 私が持っている現在のソルトは静的で、すべてのユーザーで同じです。私は何かをする必要があります
そのようにした場合、タイムスタンプをユーザーごとにデータベースに保存する必要はありません。それはセキュリティ上の欠陥ではありませんか?
私は道に迷っています....パスワードをハッシュして確認する最良の方法を提案してください。スクリプトを見るといいでしょう:)この質問も重複する可能性があります。
php - これはやり過ぎですか?ワールプールパスワード暗号化のための動的ソルト暗号化
ワールプールでのパスワード暗号化に関しては、少し過剰なソルトを生成した可能性があると思います。
これは、salt 生成コードが段階的に行うことです。
長さ 10 の疑似乱数文字列が生成されます. 可能な値は次のとおりです:
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
-2 から 123 までの真の乱数は、大気ノイズによって生成されます
- この疑似ランダム文字列と完全に乱数は、UNIX タイムスタンプと一緒にシャッフルされます。
- このプレソルトは、md5 で暗号化されます。
それは単に塩の生成です。私はまた、ワールプールで暗号化されたすべてのものを持っています
コードにセキュリティ上の欠陥はありますか? 結合前または結合後に値を md5 ハッシュする必要がありますか?
ここにチェックする私のコードがあります...
また、塩はどのくらいの長さですか?個人的には、他のタイプの文字をハッシュすることはそれほど重要ではないと思います。単純に、1人のブルートフォースがソルト全体を強制することはないと思います。それで全部です!前もって感謝します。また、より優れた、またはより効率的な方法があれば役立ちます。
php - 私の暗号化に関連するクエリ
だから私はログインシステムを持っていて、それを安全にするためにいくつかのセキュリティ対策を講じました. まず、パスワードをソルトします。
次に、ワールプール アルゴリズムを使用してハッシュします。
これは、返されてデータベースに保存されるパスワードの例です。
ここで私の質問: ハッカーが上記の長い文字列を復元できた場合、実際のパスワードを返すために、何らかの方法でそれを逆/復号化できるでしょうか。皆さんの考え/知っていることを教えてください。それは不可能ですか?
これは、人々が私に他のことを提案するためのスレッドではありません。回答は 1 つの質問に厳密に関連したものにしてください。
java - 渦/渦効果を作成するには?
センサーである円体に渦効果を作ろうとしています。私はこれを探していましたが、私が探しているすべての例は C++ または Objective C にあり、それらをうまく翻訳していないようです。
オブジェクトが衝突すると、beginContact(..) が呼び出され、bodyToUpdate.applyForce(...); を呼び出すことができるようにフラグが設定されます。
渦にするためにすべてのフレームに適用する力の量を計算する方法は?
編集:
オブジェクトが渦の中心に向かってまっすぐ進むようになりましたが、「スピン」はありません
encryption - 類似ハッシュの検索
非常によく似たハッシュを作成する 2 つの異なるプレーン テキスト ワードを見つけようとしています。
私はハッシュ方法「ワールプール」を使用していますが、md5またはより簡単なものを使用できれば、ケースまたはワールプールで質問に答える必要はありません。
私が探している類似点は、同じ数の文字が含まれていることです(どれだけ混乱していてもかまいません)
つまり、平文の 'test' ハッシュ 1: abbb5 には 1 つの a 、3 つの b があり、1 つの 5 つの平文の 'blahblah' ハッシュ 2: b5bab は同じでなければなりませんが、順序は関係ありません。
それらがどのように作成されたかを読んで、それを分解して元に戻すことができると確信していますが、私が話していることが起こるかどうか疑問に思っています.
私が説明しているものと一致するものが見つからなかったので疑問に思っています(同様の一致が再現されるまで、ランダムな単語/文字を投げて実行するPoCを作成しました)が、もう一度、私の方法でそれを行うには永遠に時間がかかりますだった。ハッシュ/暗号化の本当の知識を持っている人が私を助けてくれるかどうか疑問に思っていました.