問題タブ [cryptographic-hash-function]

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.

0 投票する
16 に答える
406902 参照

java - Javaでsha256を使用して文字列をハッシュする方法は?

sha256Javaで文字列をハッシュするにはどうすればよいですか?

0 投票する
6 に答える
2019 参照

php - sha1(md5('password')) パスワードを破ることは可能ですか?

これが問題です: sha1(md5('password')) パスワードを破ることは可能ですか?

または、 sha1 の md5 または md5 の sha1 がどのように優れているのでしょうか?

ありがとう!

0 投票する
9 に答える
128896 参照

hash - MD5 は 128 ビットですが、なぜ 32 文字なのですか?

md5 に関するいくつかのドキュメントを読んだところ、128 ビットと書かれていましたが、なぜ 32 文字なのですか? 文字を計算できません。

  • 1バイトは8ビット
  • 1文字が1バイトの場合
  • 128ビットは128/8 = 16バイトですよね?

編集:

SHA-1 は 160 ビットを生成するので、何文字になりますか?

0 投票する
2 に答える
1360 参照

hash - 反復回数が少ない「遅い」ハッシュ関数と、反復回数が多い「速い」ハッシュ関数を使用していますか?

より少ない反復でより遅いハッシュ関数を使用することと、より多くの反復で高速なものを使用することの利点はありますか? パスワードを保護しようとしていると仮定します..

0 投票する
5 に答える
18977 参照

hash - 暗号化ハッシュを逆にすることができないのはなぜですか?

数学関数を逆にすることができるように、なぜアルゴリズムを逆にすることができないのですか?可逆的でないアルゴリズムを作成するにはどうすればよいですか?

そして、レインボーテーブルを使用する場合、塩を使用してそれを割ることが不可能になるのはなぜですか?総当たり攻撃でレインボーテーブルを作成して生成する場合、可能な各プレーンテキスト値を(長さまで)発明します。これにより、可能なパスワードごとのソルトと可能なソルトごとにソルトが含まれることになります(ソルトとパスワード/テキストは1つのテキストとしてまとめるだけです)。

0 投票する
2 に答える
1746 参照

c# - SHA1 ハッシュ アルゴリズムの問​​題

プログラムにユーザーのパスワードを保存しようとしていますが、プレーン テキストで保存したくありません。したがって、私はそれをハッシュして代わりに保存しています。ユーザーがプログラムの開始時にパスワードを入力する必要がある場合 (不正なユーザーから保護するため)、入力されたパスワードをハッシュし、2 つのハッシュを比較しています。

ただし、次のコードは、入力されたほぼすべてのパスワードに対して同じハッシュを生成しています。次のコードを修正する方法を誰かに教えてもらえますか、またはより良いハッシュ関数を教えてもらえますか?

ご協力ありがとうございます。

0 投票する
4 に答える
4671 参照

cryptography - 暗号化(MD5)を複数回行うとセキュリティが向上しますか?

セキュリティを向上させるために MD5 でユーザーのパスワードを複数回暗号化する人を見ました。これが機能するかどうかはわかりませんが、見栄えがよくありません。それで、それは理にかなっていますか?

0 投票する
2 に答える
220 参照

cryptography - 基本的な高性能データの信頼性

(私はネイティブ スピーカーではないため、用語が正しくない可能性があります。申し訳ありません。)

私は、個人使用のために AVR マイクロコントローラー間で無線を介してデータを送信しています。送信されたデータが、許可されたクライアントの 1 つから発信されたものであることをクライアントに証明してもらいたいと考えています。これは、否認防止を必要とせず、共有鍵を事前に定義できることを意味します。さまざまなアプローチについて調査を行った結果、自分の要件に最も適したアプローチを選択するには、何らかの支援が必要であることがわかりました。

最大限のセキュリティは必要ないことをご理解ください。潜在的なスクリプトキディの隣人が数時間以内に侵入するのを防ぎたいだけです. 今日の時点で、平均的な消費者向け機器を使い始めるのに数週間かかる場合でも、私は問題ありません。

私が送信しているメッセージはサイズがかなり小さく (数バイトのペイロードのみで 30 バイト以下)、頻度は 30 メッセージ/分以下です。

使用例の 1 つは、無線でメッセージを処理ユニットに送信する動作検出器です。処理ユニットは、別のメッセージを無線でライト スイッチに送信します。輸送に集中しないでください。この質問は、データの信頼性のみに関するものです。

フラッシュと RAM が非常に限られている 20 MHz AVR マイクロコントローラーでクライアント/サーバー ソフトウェア (C) を実行しています。そのため、高いデータ レートを提供しながら、コード サイズと RAM の使用率が小さいソリューションを探しています。

20 バイトのデータからハッシュを作成する MD5 実装 (C) でいくつかのパフォーマンス テストを行ったところ、遅すぎる可能性があることがわかりました。MD5 の実装だけでは要件を解決できないことを理解しています。ハッシュのパフォーマンスを評価するためだけにテストを行いました。

コメントありがとう

0 投票する
2 に答える
2817 参照

scala - k 個のペアワイズ独立ハッシュ関数の生成

Scala でCount-Min Sketchアルゴリズムを実装しようとしているので、k 個のペアごとに独立したハッシュ関数を生成する必要があります。

これは私がこれまでにプログラムしたことのあるものよりも低レベルであり、アルゴリズム クラス以外のハッシュ関数についてはあまり知りません。

MD5 や MurmurHash などのハッシュ関数を使用する必要がありますか? f(x) = ax + b (mod p)p が素数で、a と b がランダムな整数である という形式の k 個のハッシュ関数を生成するだけですか? (つまり、誰もがアルゴリズム 101 で学習するユニバーサル ハッシング ファミリー)

私は生の速度よりも単純さを求めています (たとえば、実装が簡単な場合は、5 倍遅いものを使用します)。

0 投票する
2 に答える
1838 参照

c# - ObjectDisposedException MD5 ComputeHash を使用する場合

ObjectDisposedException: 安全なハンドルが閉じられています。

これは私のコードです:

文字列を取得し、既知のキーをアタッチし、この文字列とキーの MD5 ハッシュを計算し、計算されたハッシュを返すことができるインターフェイスと実装クラスを作成しようとしています。

ありがとう