問題タブ [checksum]

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

c - CRC計算

サード パーティのシステムと連携しようとしていますが、テキスト データの送信時に CRC 値を計算するためのコード サンプルが提供されています。

ベンダーが提供する C コードは次のようになります。

このコードをコピーして、サンプルの C プログラムを入れました。test_crc メソッドは、CRC を 470f と計算していません (DD7A として計算しています)。

ベンダーが言っているようにこのコードが機能しないことを誰かが検証するか、test_crc が正しい値を返すように手伝ってくれることを願っています。

助けてくれてありがとう。

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

sql - 列の集計チェックサムを作成する

集計された列のすべての値のチェックサムを計算したいと考えています。

言い換えれば、私は同等のことをしたい

このアプローチの問題は次のとおりです。

  1. 非効率です。md5関数に渡す前に、列のすべての値を一時ストレージの文字列として連結する必要があります
  2. group_concat の最大長は 1024 で、それ以降はすべて切り捨てられます。

(疑問に思っている場合は、値の連結が一貫した順序であることを確認できますが、信じられないかもしれませんが、group_concat() はその中で order by 句を受け入れます。たとえば、group_concat(some_column order by some_column))

MySQL は、非標準のビットごとの集計関数 BIT_AND()、BIT_OR()、および BIT_XOR() を提供しています。これらは、この問題に役立つと思われます。この場合、列は数値ですが、文字列列でそれを行う方法があるかどうか知りたいです。

この特定のアプリケーションでは、チェックサムが暗号学的に安全である必要はありません。

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

python - Pythonでのディレクトリチェックサム?

だから私は、Web ベースのファイルシステムの抽象化レイヤーの開発の真っ最中です。ファイルブラウザと同じですが、奇妙な権限などの追加機能がいくつかあります.

ディレクトリの変更について何らかの方法でユーザーに通知したいと思います。つまり、誰かが FTP 経由で新しいファイルをアップロードすると、特定のユーザーは適切なメッセージを受け取るはずです。メッセージが特に詳細である必要はありません。変更されたリソースを正確に示す必要はありません。親ディレクトリ名で十分です。

どのようなアプローチをお勧めしますか?

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

hash - スコアボードへの不正提出の防止

私は Flash ゲームのバックエンドに取り組んでおり、スコアボードに入るデータを保護する必要があります。

ゲームはバナー広告で多くのサイトでホストされ、ユーザーは広告でゲームをプレイし、クリックしてメイン サイトにアクセスして詳細を保存します。

現時点では、私はこれに沿って考えています

  1. ユーザーがゲームをプレイし、クリックしてスコアを送信する
  2. バックグラウンドで、バナーはスコアと元のドメインをメイン サイトのスクリプトに送信します。
  3. スクリプトは、ドメインが広告がホストされている有効なドメインの 1 つであるかどうかを確認します。
  4. すべてが正しければ、スクリプトはこのスコアとドメインのハッシュを作成し、スコアとともにデータベースに保存します。
  5. スクリプトはハッシュを Flash に返し、メイン スコアボードを開く getURL のクエリ文字列にハッシュを追加します。
  6. スコアボード ページはリファラーをチェックして、それが有効なドメインの 1 つであることを確認します。
  7. 有効なトークンである場合は、ハッシュのデータベースをチェックします
  8. 次に、ユーザーが詳細を入力すると、ハッシュに基づいてレコードが更新されます

前回、FLash がリファラー情報を送信しないことを確認しました。では、この種の Flash とデータベースのやり取りのパターンはすでに確立されているのでしょうか?

ステップ 4 では、どのようなハッシュ/チェックサムを使用すればよいですか? この種の操作の正しい名前は何ですか?それはハッシュ、チェックサム、または何か他のものですか?

クライアント側のテクノロジーであるため、Flash が実際にそれほど安全ではないことは理解していますが、私の考えでは、上記のようなことは、この種のアプリケーションをハッキングするのと同じくらい難しいことです。

更新: 私の主な目的は、スコアをデータベースに追加するスクリプトの URL を人々が見つけにくくし、単に偽のスコアでスパムすることです。

ありがとう、グレッグ

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

algorithm - メッセージコード検証のアルゴリズム

あなたが前にこのスレッドを読んだなら-私が書いたすべてを忘れてください、私がそれを書いたとき私は酔っていたに違いありません。最初からやり直します:

私は現在、ユーザー入力を検証するためにある種のアルゴリズムを使用するプロジェクトに取り組んでいます。考慮すべき3つのパーティがあります。

クライアント-私たちのウェブページを閲覧する

会社-私たちは、クライアントの要求を処理します

サードパーティ企業-クライアントメッセージの処理

私たちのウェブページでは、クライアントに製品に関するいくつかの情報を表示します。製品に関する詳細情報が必要な場合は、サードパーティの会社に連絡して製品コードを記載する必要があります(それ自体は一意ではありませんが、一般的でもありません)。その見返りとして、クライアントはサードパーティ企業から他のコードを受け取ります。このコードは、承認のためにコードを検証するWebページに入力する必要があります。

私たち会社がサードパーティ会社とのやり取りがなかった場合が最善です。純粋な暗号化は、長すぎる文字列を生成するため、画像から外れています。これはSMSで行っているため、コードは短くする必要があります。

私がこれまでに思いついたもの:

すべての製品について、ベース16(0-f)でいくらか一意のコードを生成します(一意であるかどうかは関係ありません)。製品に関する詳細情報が必要なクライアントは、製品コードを記載したSMSをサードパーティ企業に送信します。代わりに、クライアントは同じコードを受け取りますが、数字は乗算され(2倍になる可能性があります)、36進数に変換されます。さらに、コードに最後の文字である制御番号が追加され、コードがLuhnで有効になります。 36進数のアルゴリズム。ユーザーが受信したコードを入力すると、会社はサーバー側で製品コードに対して検証します(Luhnに対して検証し、2で除算して、16進数に戻します)。

これはかなり安全で適切に聞こえますか?2人が通信する必要がない場合に、3人がメッセージを送信する有効な方法ですか?

編集して申し訳ありませんが、最初の投稿を書いたとき、私の心は他の場所にあったに違いありません。

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

c++ - c++でファイルのsha1sumを計算するには?

システム コールを試してみましたが、最善の解決策ではないため、チェックサムを計算する別の方法があるはずだと考えました。

さまざまなアルゴリズムを使用して c++ でファイルのチェックサムを計算できるライブラリまたは関数はありますか?