問題タブ [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 投票する
10 に答える
24800 参照

javascript - 小さな文字列の高速オープン ソース チェックサム

小さな文字列 (20 ~ 500 文字) のクイック チェックサム (可能な限り高速) が必要です。

ソースコードが必要ですが、それは小さくなければなりません! (最大約100LOC)

Base32/64 で文字列を生成できれば。(または同様のもの)それは完璧でしょう。基本的に、チェックサムは「悪い」文字を使用できません..ご存知のように..通常の (){}[].,;:/+-\| 等

明確化

強い/弱いかもしれませんが、舞台裏でのみ使用されるため、実際には問題ではありません。

生成されたチェックサムとの比較のみを行うため、元の文字列のすべてのデータを含める必要はありません。「復号化」は期待していません。

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

c# - 既知のチェックサムなしの Mono/.Net 用の Zlib

.Net および Mono で実行する特別な ZLib 実装を実装する必要があります。data /string メッセージはソケット経由で受信されるため、チェックサムが欠落しています。これは、ファイルではなく生の文字列データに関するものです。

GZipStream と DeflateStream でデータを解凍しようとしましたが、GZStream はチェックサムがないために失敗したと思います。私もさまざまなオフセットを試しましたが、うまくいきませんでした。いずれにしてもデータはソケット経由で受信されるため、チェックサムは使用されません。したがって、ZLib チェックサムは追加のオーバーヘッドになります。チェックサムを追加して適切なライブラリを呼び出す方法を説明してもらえますか、Mono と .Net をサポートするサードパーティのライブラリを調べる必要がありますか? 編集: これは少なくとも 1 秒に 1 回行われるため、パフォーマンスは非常に重要です。最後に、Interop 経由で C-Lib を使用することをお勧めしますか? 現時点では常に Invalid Data Exception を受け取りますが、これは間違ったチェックサムに関連していると思います。これは私が成功せずに使用しようとした実際のコードです:

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

c++ - チェックサム計算

CRC を計算するコードを見つけましたが、概念がわかりません。コードは次のとおりです。

誰かが説明して、論理を教えてください。

0 投票する
7 に答える
8646 参照

encryption - (非常に) 安全ではない小さな (10 桁未満) ハッシュを作成するためのアイデア

私は、ユーザーが自分のチケットを自分で印刷し、スキャン (バーコード) され、理想的にはその人が入場するイベントに参加できるオンライン イベント チケット システムに取り組んでいます。私の問題は、以下の条件を満たす「チケットコード」

  • 各「チケットコード」は互いに十分に異なっている必要があります (つまり、連続番号が付けられていません)。
  • 理想的には、チケットは再利用を防ぐために中央データベースに対してチェックされますが、オフラインでも作業できるようにする必要がありますゲート。
  • 「チケットコード」は、必要に応じて簡単に入力できるように十分に小さくする必要があります
  • チケット所有者は、入場するためにチケットのみを必要とします (つまり、ID チェックは必要ありません)。

データの範囲は非常に小さく、イベントごとに約 5,000 チケット (約 100,000 の異なるチケット コード) で、4 日間にわたって約 20 のイベントしかありません。

現在、チケットに印刷されておらず、「チケットコード」の一部をエンコードするために使用できるユーザーには知られていないフィールドがいくつかあるため、EventId、OrderId、EventDate、およびいくつかのソルトを使用して小さな「コードの一部(アイデア?)のハッシュ」ですが、まだシーケンシャルまたはGUIDのチケットIDにこだわっています(長すぎるでしょう)

これを行う方法についてのアイデアや指針はありますか?

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

perl - Perl でディレクトリの MD5sum を取得できますか?

File::Find を使用してネットワーク ファイル システムのインデックスを作成する Perl スクリプト (Windows) を作成しています。うまく機能しますが、ファイル システムのクロールには非常に時間がかかります。ディレクトリをトラバースする前に何らかの方法でディレクトリのチェックサムを取得するといいと思っていましたが、チェックサムが前回の実行で取得されたチェックサムと一致する場合は、ディレクトリをトラバースしません。このファイル システム上のファイルは頻繁には変更されないため、これにより多くの処理が不要になります。

私の AIX ボックスでは、次のコマンドを使用します。

次のようなものを返します。

このコマンドにはほとんど時間がかかりません。

これを行うモジュールを CPAN で検索しましたが、すべてのモジュールが、ディレクトリ自体ではなく、ディレクトリ内のすべてのファイルの MD5sum を提供するようです。

Perl でディレクトリの MD5sum を取得する方法はありますか、それとも Windows で Perl から Win32 コマンドを呼び出すことができるのでしょうか?

前もって感謝します!

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

algorithm - Adler-32 チェックサムアルゴリズムで 65521 を法とするのはなぜですか?

Adler-32 チェックサム アルゴリズムは 65521 を法として合計します。65521 が 16 ビットに収まる最大の素数であることは知っていますが、このアルゴリズムで素数を使用することがなぜ重要なのですか?

(誰かが私に教えてくれれば答えは明らかだと確信していますが、私の脳の数論の部分は機能していません。チェックサム アルゴリズムの専門知識がなくても、http://en.wikipedia. org/wiki/Fletcher%27s_checksumでおそらく説明できます。)

0 投票する
8 に答える
20211 参照

iphone - iPhoneOSでのSQLiteデータベースファイルの暗号化

iPhone上のSQLiteデータベースは、アプリケーションにバンドルされている単なるファイルです。誰でもこのファイルを抽出してクエリするのは比較的簡単です。

データベース内に保存されているファイルまたはデータのいずれかを暗号化するための提案は何ですか。

編集:アプリは他のユーザーと対戦するゲームです。ユーザーの相対的な長所と短所に関する情報は、DBに保存されます。ユーザーが電話をジェイルブレイクして評判/パワーなどを解体し、トーナメント/リーグなどに勝つことができるようにしたくありません(注:アイデアはNDAの下にあるため、曖昧にしようとしています)。

軍の暗号化は必要ありません。プレーンテキストで保存したくないだけです。

編集2:もう少し明確に、私の主な目標は

  1. 機密データをハッキングすることは簡単ではありません
  2. データが変更されているかどうかを簡単に発見する方法があります(ある種のチェックサム)
0 投票する
3 に答える
5907 参照

python - Pythonでオーバーフローで2バイトを追加する方法はありますか?

接続されたデバイスからデータを読み込むために pySerial を使用しています。受信した各パケットのチェックサムを計算したい。パケットは char 配列として読み込まれ、実際のチェックサムはパケットの最後の最後のバイトになります。チェックサムを計算するには、通常、パケットのペイロードを合計してから、実際のチェックサムと比較します。

通常、C のような言語では、チェックサム自体が 1 バイトしかないため、オーバーフローが予想されます。Python の内部についてはよくわかりませんが、この言語での私の経験からすると、デフォルトでより大きなサイズの変数 (内部の bigInt クラスなど) になるようです。独自の実装を作成せずに、2 つの文字を追加するという予想される動作を模倣する方法はありますか? ありがとう。

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

file - ファームウェア内のファイルを変更するには、新しいチェックサムが必要です

変更したい画像フレームのファームウェア ファイルがあります。この変更の目的は、起動時にデバイスにカスタム イメージを表示させることです。

既存の JPEG ファイルを独自のカスタム ファイルに切り替えることはできましたが、この新しいファームウェア ファイルでデバイスをフラッシュすることはできません。デバイスは無効なチェックサムについて不平を言っていますが、再計算していないので正しいようです。

これを進める方法についてのヒントはありますか?ファイル内のチェックサムを探してみましたが、これまでのところ成功していません。

オリジナルの変更されていないファームウェアとカスタム変更されたファームウェアが 1 つの zip ファイルに含まれています

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

sql - SQL Server 2005 での CHECKSUM() の衝突

5,651,744 行のテーブルがあり、主キーは 6 列 (int x 3、smallint、varchar(39)、varchar(2)) で構成されています。このテーブルと、この主キーを共有する別のテーブルと追加の列が追加されていますが、37m 行ある別のテーブルでパフォーマンスを改善したいと考えています。

ハッシュ キーを作成するための列を追加することを見越して、分析を行ったところ、18,733 の衝突が見つかりました。

約2倍悪いBINARY_CHECKSUM()

私がカバーしている宛先スペースの相対的な量が少ないことを考えると、これは高すぎるように見えますか (.33%)? また、衝突がこれほど多い場合、時折の衝突を処理するために通常の列で結合する必要があることを考えると、行ごとに余分な 4 バイトのコストをかけて結合で最初にこの製造されたキーで結合する利点はありますか?