問題タブ [digest]

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 投票する
1 に答える
899 参照

ocaml - 私の SHA256 の OCaml 実装は正常ですか?

私は初心者の OCaml プログラマーであり、非常にトリッキーなアルゴリズムを実装しようとして、自分自身を深いところに投げ込むと思っていました。私は、文体、セキュリティ、またはパフォーマンスに関連するものであっても、大小を問わずすべての批判を受け入れます。

私がすでに認識している批判の 1 つは、アルゴリズムではメッセージ全体がメモリに収まる必要があるということです (一方、SHA256 の参照実装では一度に 1 つのブロックを処理できます)。

再帰関数のいずれかが末尾再帰でないかどうかが特に心配です。

コードをテストしたところ、x86_64 Linux で適切なメッセージ ダイジェストが生成されます。

ご検討いただきありがとうございます。

編集:

何も飛び出さない場合は、ここであまり時間をかけないでください。書き換えではなく、明らかに壊れた動作を探しています。

したがって、別のファイルで定義されているパック関数は次のとおりです。

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

rss - フィードを取得して、そこから毎日のダイジェストを作成できるサービスはありますか?

私はフィード アグリゲーター ( http://planetdb2.com/ ) を実行しており、多作 (1 日に多くの投稿) とあまり多作でない (多くても 1 日 1 つの投稿) フィードの両方を集約する必要があります。

毎日のダイジェスト (その日の投稿の要約) を作成するのが最善の解決策のようです。

Yahoo Pipes を介して Twitter フィード専用の毎日のダイジェストを作成する方法はありますが、汎用でも単純でもありません。

Feedburner は毎日のダイジェストをメールで送信しますが、毎日のダイジェスト フィードは作成しません。

任意のフィードを取り、日刊紙を生成できる既存のサービスはありますか? どうやって使うの?

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

algorithm - 名前と住所のデータから ID を作成します。ハッシュ/ダイジェスト

私の問題:

人の名前と住所をエンコードされた ID として表す方法を探しています。id には英数字のみを使用し、衝突を防止し、できるだけ少ない文字数で表す必要があります。私が最初に考えたのは、単純に MD5 や SHA1 などの暗号化ハッシュ関数を使用することでしたが、これはやり過ぎのように思え (セキュリティは重要ではなく、一方向である必要はありません)、短いID。この問題に適合する既存のアルゴリズムを知っている人はいますか?

つまり、次の関数を実装して、同じ入力に対して一貫して同じ値を返し、衝突の可能性が低く、id が 20 文字未満になるようにする最善の方法は何ですか?

アプリケーションのコンテキスト (興味のある方):

これは、レコード連携アプリに使用されます。入力された名前と住所を指定すると、非常に大きなデータベースを検索して最も一致するものを探し、データベース ID とその他のデータを返します (これを行う方法はここでは重要ではありません)。一致するものがない場合は、検索入力 (エンティティの名前と住所のデータ) からこの疑似/生成/派生 ID を生成する必要があります。すべての検索レコードは、実際の (一致/リンクから得られる実際のデータベース ID) またはこの生成された疑似/生成/派生 ID のいずれかを持つ出力レコードになるはずです。疑似 ID には、実際の ID と区別するために文字 (N など) がプレフィックスとして付けられます。

0 投票する
3 に答える
24114 参照

apache - AuthType Digest を使用して、サブドメイン間でユーザーを一度認証する例は?

少数のプライベート グループがアクセスするドメインがあります。だから私は認証を介してアクセスを制御したい。

ドメインには、それぞれ独自のサブドメインを持つアプリケーションのコレクションがインストールされています。例: domain.com、app1.domain.com、app2.domain.com、app3.domain.com

アプリケーションごとに自分自身を認証する必要がないように、シングル サインオン ソリューションがあればいいのにと思います。また、アプリケーションはさまざまな言語 (PHP、Python、および Perl) で記述されているため、Apache モジュールを介してユーザーを認証することが理想的です。

認証をダイジェストするのは初めてですが、良い解決策のようです。私はhtdigest自分のユーザーを作成するために使用しました。ドメインとサブドメインを構成しました (以下を参照)。

ドメインまたはサブドメインのいずれかにアクセスすると、ユーザー名とパスワードの入力を求められます。正しいユーザー名とパスワードを入力すると、認証されてページが読み込まれます。ただし、別のサブドメインに移動すると、ユーザー名とパスワードを再度入力するよう求められます。同じユーザー名とパスワードを入力すると、機能します。

したがって、パスワード ファイルは問題なく、認証も問題ありませんが、問題は の構成にあるようですAuthDigestDomain

複数のドメインでダイジェスト認証を使用する例を見つけるためにネット全体を検索しましたが、問題を解決する具体的な例が見つかりません。

ここの誰かが助けてくれることを願っています。すべての に同じ認証情報を入れDirectoryますか? DirectoryまたはLocationまたはを使用する必要がありFilesますか? 一緒に何かを逃したことがありますか?

前もって感謝します!

以下は、私の Apache 構成の domain.com の例です。

次に、app1.domain.com の例を示します。

さらに厄介なことに、これは IE6 を使用している場合には機能しますが、Firefox や Chrome では機能しません。クライアントが認証を適切に送信していないのでしょうか、それともサーバーが正しい資格情報を送信していないのでしょうか?

また、 RFC 2617を読み、PHP を使用して認証ヘッダーを作成し、要求/応答チャレンジが正しいことを確認しました。これはまったく役に立ちませんでした!

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

perl - HMAC SHA-1が同じ入力で異なるダイジェストを返すのはなぜですか?

Objective Cを使用して接続ライブラリを作成し、AmazonS3Webサービス用に機能する暗号化された署名を作成しようとしています。

ObjCコードでHMACSHA-1ダイジェストの問題が発生したので、それを脇に置いて、既存の動作中のPerlコードを調べて、ダイジェスト作成のトラブルシューティングを試みます。

s3lsパッケージのコマンドからのHMACSHA-1ダイジェスト出力をテストし、それを引き出して独自のperlスクリプトに入れNet::Amazon::S3たサブルーチンと比較しています。_encode

このスクリプトからの出力例は次のとおりです。

私がテストしているのは、同じ秘密鍵とクリアテキストをパッケージの同じ_encode関数に入力するとNet::Amazon::S3、まったく同じ秘密鍵、クリアテキスト、およびダイジェストバイトが表示されるはずです。

確かに、秘密鍵とクリアテキストで同じバイトを取得します。

しかし、ダイジェスト(そしてもちろんbase64エンコーディング)では何か違うものがあります。例:

秘密鍵とクリアテキストが両方のスクリプトへの同じ入力であることを確認しました。エンコーディングサブルーチンは、両方のスクリプトで実質的に同じです(サブルーチンに渡された未使用の引数を除いて、カスタムバージョンから削除します)。

_encode入力バイトとサブルーチンが同じである場合、両方の場合でHMAC SHA-1ダイジェストが異なる方法で計算される原因は何ですか?

( RFC 2201のテストケースに対して2つのスクリプトも検証しました。)

0 投票する
3 に答える
23221 参照

c# - C# で HttpWebRequest を介してダイジェスト認証を実装する

ダイジェスト http 認証を使用するスクレイピング Web サイトをスクリーニングする方法を知っている人はいますか? 私は次のようなコードを使用します:

サイトのメインページにはアクセスできますが、(同じ認証情報で別のリクエストを使用して) 他のページに移動しようとすると、「HTTP/1.1 400 Bad Request」エラーが発生します。

Fiddler を使用して、C# アプリケーションのリクエストと Mozilla Firefox のリクエストを比較しました。

私がアクセスしようとしている 2 つの URL は 次のとおり です。

私の C# アプリの 2 つの要求 () は次のとおりです。

そして、それが Firefox がサーバーに送信するものです。

したがって、私のアプリでは「ノンス」フィールドに異なる値がありますが、Firefox ではこのフィールドは同じです。一方、Firefoxがこのフィールドをインクリメントしている間、「nc」フィールドには同じ値があります。

また、アプリが Fiddler のサイト ページにアクセスしようとすると、常に "HTTP/1.1 401 Authorization Required" という応答が返されるのに対し、Firefox は 1 回しか承認されないことがわかります。request.PreAuthenticate = true; を設定しようとしました。でも効果はないようです…

私の質問は、C# を使用してダイジェスト認証を適切に実装する方法ですか? 標準的な方法はありますか、それともゼロから行う必要がありますか? 前もって感謝します。

0 投票する
3 に答える
25022 参照

ssl - HTTPダイジェスト認証とSSL

パフォーマンス、セキュリティ、柔軟性の観点から、HTTPダイジェスト認証とSSLの違いは何ですか?

0 投票する
3 に答える
746 参照

security - 最高の汎用ダイジェスト機能?

2009 年に平均的な新しいアプリを作成する場合、セキュリティとパフォーマンスの観点から、使用する最も合理的なダイジェスト関数は何ですか? (そして、状況が変化したときに、これをどのように判断できますか?)

以前に同様の 質問 がされ とき、回答には SHA1、SHA2、SHA-256、SHA-512、MD5、bCrypt、および Blowfish が含まれていました。

賢く使えば、これらのどれでも大部分は機能することはわかっていますが、サイコロを振ってランダムに 1 つ選ぶのは避けたいと思います。ありがとう。

0 投票する
3 に答える
1173 参照

hash - ハッシュ衝突と追加データ

同じハッシュを持つ 2 つの文字列 (またはバイト配列) A と B があるとします (ハッシュとは、MD5 や SHA1 などを意味します)。その後ろに別の文字列を連結すると、A+C と B+C も同じハッシュ H' になりますか? C+A と C+B はどうなりますか?

MD5でテストしたところ、すべてのテストで、最後に何かを追加するとハッシュが同じになりましたが、先頭に追加してもそうではありませんでした。

これは常に真ですか (すべての入力に対して)?

これはすべての (よく知られている) ハッシュ関数に当てはまりますか? いいえの場合、A + CとB + Cが衝突しない(そしてC + AとC + Bも衝突しない)(よく知られている)ハッシュ関数はありますか?

MD5(x + reverse(x))およびその他の構築されたもの以外に)

0 投票する
1 に答える
1680 参照

java - サーブレットからの認証(ダイジェスト)要求

小さなサーブレットを作成しています。ルート「/」でホストされ、「/」の後に続くものはすべて「/myanim.swf」のようなリソースです。ほとんどのファイルは公開されていますが、一部は非公開です。パブリックファイルの場合は提供されるだけですが、プライベートファイルの場合は、ブラウザに認証ボックスを表示し、ダイジェスト認証をサーブレットに返送して、それを検証してコンテンツを提供できるようにします。どのように実装すればよいですか

部?ブラウザに認証を行わせたいので、j_security_checkメカニズムを使用したくない

乾杯

ニック