問題タブ [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.
java - Javaでsha256を使用して文字列をハッシュする方法は?
sha256
Javaで文字列をハッシュするにはどうすればよいですか?
php - sha1(md5('password')) パスワードを破ることは可能ですか?
これが問題です: sha1(md5('password')) パスワードを破ることは可能ですか?
または、 sha1 の md5 または md5 の sha1 がどのように優れているのでしょうか?
ありがとう!
hash - MD5 は 128 ビットですが、なぜ 32 文字なのですか?
md5 に関するいくつかのドキュメントを読んだところ、128 ビットと書かれていましたが、なぜ 32 文字なのですか? 文字を計算できません。
- 1バイトは8ビット
- 1文字が1バイトの場合
- 128ビットは128/8 = 16バイトですよね?
編集:
SHA-1 は 160 ビットを生成するので、何文字になりますか?
hash - 反復回数が少ない「遅い」ハッシュ関数と、反復回数が多い「速い」ハッシュ関数を使用していますか?
より少ない反復でより遅いハッシュ関数を使用することと、より多くの反復で高速なものを使用することの利点はありますか? パスワードを保護しようとしていると仮定します..
hash - 暗号化ハッシュを逆にすることができないのはなぜですか?
数学関数を逆にすることができるように、なぜアルゴリズムを逆にすることができないのですか?可逆的でないアルゴリズムを作成するにはどうすればよいですか?
そして、レインボーテーブルを使用する場合、塩を使用してそれを割ることが不可能になるのはなぜですか?総当たり攻撃でレインボーテーブルを作成して生成する場合、可能な各プレーンテキスト値を(長さまで)発明します。これにより、可能なパスワードごとのソルトと可能なソルトごとにソルトが含まれることになります(ソルトとパスワード/テキストは1つのテキストとしてまとめるだけです)。
c# - SHA1 ハッシュ アルゴリズムの問題
プログラムにユーザーのパスワードを保存しようとしていますが、プレーン テキストで保存したくありません。したがって、私はそれをハッシュして代わりに保存しています。ユーザーがプログラムの開始時にパスワードを入力する必要がある場合 (不正なユーザーから保護するため)、入力されたパスワードをハッシュし、2 つのハッシュを比較しています。
ただし、次のコードは、入力されたほぼすべてのパスワードに対して同じハッシュを生成しています。次のコードを修正する方法を誰かに教えてもらえますか、またはより良いハッシュ関数を教えてもらえますか?
ご協力ありがとうございます。
cryptography - 暗号化(MD5)を複数回行うとセキュリティが向上しますか?
セキュリティを向上させるために MD5 でユーザーのパスワードを複数回暗号化する人を見ました。これが機能するかどうかはわかりませんが、見栄えがよくありません。それで、それは理にかなっていますか?
cryptography - 基本的な高性能データの信頼性
(私はネイティブ スピーカーではないため、用語が正しくない可能性があります。申し訳ありません。)
私は、個人使用のために AVR マイクロコントローラー間で無線を介してデータを送信しています。送信されたデータが、許可されたクライアントの 1 つから発信されたものであることをクライアントに証明してもらいたいと考えています。これは、否認防止を必要とせず、共有鍵を事前に定義できることを意味します。さまざまなアプローチについて調査を行った結果、自分の要件に最も適したアプローチを選択するには、何らかの支援が必要であることがわかりました。
最大限のセキュリティは必要ないことをご理解ください。潜在的なスクリプトキディの隣人が数時間以内に侵入するのを防ぎたいだけです. 今日の時点で、平均的な消費者向け機器を使い始めるのに数週間かかる場合でも、私は問題ありません。
私が送信しているメッセージはサイズがかなり小さく (数バイトのペイロードのみで 30 バイト以下)、頻度は 30 メッセージ/分以下です。
使用例の 1 つは、無線でメッセージを処理ユニットに送信する動作検出器です。処理ユニットは、別のメッセージを無線でライト スイッチに送信します。輸送に集中しないでください。この質問は、データの信頼性のみに関するものです。
フラッシュと RAM が非常に限られている 20 MHz AVR マイクロコントローラーでクライアント/サーバー ソフトウェア (C) を実行しています。そのため、高いデータ レートを提供しながら、コード サイズと RAM の使用率が小さいソリューションを探しています。
20 バイトのデータからハッシュを作成する MD5 実装 (C) でいくつかのパフォーマンス テストを行ったところ、遅すぎる可能性があることがわかりました。MD5 の実装だけでは要件を解決できないことを理解しています。ハッシュのパフォーマンスを評価するためだけにテストを行いました。
コメントありがとう
scala - k 個のペアワイズ独立ハッシュ関数の生成
Scala でCount-Min Sketchアルゴリズムを実装しようとしているので、k 個のペアごとに独立したハッシュ関数を生成する必要があります。
これは私がこれまでにプログラムしたことのあるものよりも低レベルであり、アルゴリズム クラス以外のハッシュ関数についてはあまり知りません。
MD5 や MurmurHash などのハッシュ関数を使用する必要がありますか? f(x) = ax + b (mod p)
p が素数で、a と b がランダムな整数である という形式の k 個のハッシュ関数を生成するだけですか? (つまり、誰もがアルゴリズム 101 で学習するユニバーサル ハッシング ファミリー)
私は生の速度よりも単純さを求めています (たとえば、実装が簡単な場合は、5 倍遅いものを使用します)。
c# - ObjectDisposedException MD5 ComputeHash を使用する場合
ObjectDisposedException: 安全なハンドルが閉じられています。
これは私のコードです:
文字列を取得し、既知のキーをアタッチし、この文字列とキーの MD5 ハッシュを計算し、計算されたハッシュを返すことができるインターフェイスと実装クラスを作成しようとしています。
ありがとう