0

私はCSの新入生で、先生から2つのtxtファイルを取得して16進値を比較するように依頼されました。各ファイルの内容は、それぞれ「abcde...XYZ」と「accde...XYZ」です。各文字の出現率をExcelシートに取得しました。次に、これら2つのファイル間の相関係数を計算して、彼が何を意味するのかを知る必要があります。

私の質問をもっと理解する必要がある場合は、遠慮なく質問してください。

4

1 に答える 1

1

ヒストグラムは、分布のグラフィック表現です。
[離散]分布は、特定の値のサンプル数、または確率分布の場合は確率値のカウントの順序付けられた系列です。ランダムに取得されたサンプルがこの特定の値を持つ確率です。

まず、割り当てで説明されているように、暗号化暗号化の同じチェーンを適用して2つのバイナリファイルを作成する必要があります。これ自体は、これらの暗号化アルゴリズムおよびさまざまなブロック暗号化モード(ECB、CBCなど)の実践/更新のようです。

次に、ファイルごとに、個々の16進値の数をカウントする必要があります。これにより、ファイル内で見つかった対応する各バイナリオクテットのカウントを含む0から255までの配列(または$00から$FFまでの「16進」と言えます)が得られます。配列内のセル(ヒストグラム用語では「ビン」とも呼ばれます)の数は正確に256であることに注意してください。これにより、対応する16進値を持つバイトがファイルに見つからなかった場合、セルの値は0になります。
これらの配列は、各ファイルにある16進値の離散分布です正規化するのが通例ですこれらの配列の典型的なアプローチは、同じサイズ(ここでは256セル)の別の配列を生成することですが、実際の値を含みます。各値は、そのセルのサンプル数とサンプルの総数の比率です。したがって、このような配列には、ファイルで見つかった16進値の*確率分布が含まれます*(選択の分布ですが、これらは「確率」分布ではなく「分布」と呼ばれることがよくあります)(また...一部衒学者のタイプは、これらが確率であると言われていることを嘲笑するかもしれませんが、この時点で物事を混乱させないようにしましょう...)。

次に、これらの分布を典型的な棒グラフ/ヒストグラム形式でプロットすることをお勧めします。それだけで、これら2つの分布がどれほど類似しているかを視覚的に示すことができます。発見の面白さを損なうことを躊躇しますが、実際にこれら2つのグラフがまったく異なる場合でも、失望してはならないことを示唆するかもしれません。)

最後のステップは、これら2つの分布の正式な相関値を計算することです。つまり、これら2つがどれほど類似しているかを「要約」する単一の値です。ここで、特定の相関関数を提案するのが恥ずかしがり屋であるため、割り当ての詳細を完全に説明することはできません。その目的のためにいくつかあります; 提案については、インストラクターまたはTAに問い合わせてください。

ボーナス/楽しみのために、暗号化されていないファイルについて同じ分布、ヒストグラム、および相関係数を計算してプロットすることができます(明らかに、これらは非常に似ていると予想されます)。

于 2012-10-27T04:05:15.157 に答える