XOR を機能させる方法:
各キーの長さが素数に等しい複数のキーを使用しますが、キーの長さが同じになることはありません。元のファイル名を別のキーとして使用しますが、ファイル名を取得するためのメカニズムを作成することを忘れないでください。次に、暗号化されたファイルであることを知らせる拡張子を付けて新しいファイル名を作成します。素数の長さの複数のキーを使用する理由は、結果の XOR キーの長さが、繰り返される前にキー A の TIMES キー B になるためです。ファイルを暗号化する前に、繰り返しパターンをファイルから圧縮します。乱数を生成し、この数値を X オフセットごとに XOR します (この数値も再作成可能でなければならないことに注意してください。Filelength の RANDOM SEED を使用できます。
これらすべてを行った後、長さが 31 以上のキーを 5 つ使用すると、キーの長さは約 100 メガバイトになります。
鍵は、ファイル名が1つ(フルパス含む)、STR(ファイルサイズ)+STR(ファイル日付)+STR(日付)+STR(時刻)、ランダム生成鍵、あなたのフルネーム、一度だけ作成される秘密鍵。
暗号化された各ファイルに使用されるキーを保存するデータベースですが、DAT ファイルはコンピューターではなく USB メモリ スティックに保存します。
これにより、Pictures や Music などのファイルで繰り返しパターンが発生するのを防ぐことができますが、長さが 4 ギガ以上の映画は依然として脆弱である可能性があるため、6 番目のキーが必要になる場合があります。
私は個人的に、メモリ スティック上で暗号化された dat ファイルを持っています (Microsoft Access で使用するための Dat ファイル)。私はそれを暗号化するために3キー方式を使用しました。これは、関連付けられたキーを持つファイルのディレクトリであるため、それほど大きくなることはないからです。
1 つの非常に大きなキーをランダムに生成するのではなく、複数のキーを使用する理由は、素数と素数の積が急速に大きくなり、キーの作成をある程度制御できるためです。真の乱数などは実際には存在しないことがわかります。私が 1 つの大きな乱数を作成した場合、他の誰かが同じ数を生成できます。
キーを使用する方法: ファイルを 1 つのキーで暗号化し、次に次のキーで暗号化し、すべてのキーが使用されるまで次のキーで暗号化します。ファイル全体がそのキーで暗号化されるまで、各キーは何度も使用されます。
キーの長さが異なるため、繰り返しのオーバーラップはキーごとに異なり、キー 1 時間キー 2 の長さの派生キーが作成されます。このロジックは、残りのキーに対して繰り返されます。素数の理由は、キーの長さの分割で繰り返しが発生するため、分割を 1 またはキーの長さ、ヘンス、プライムにする必要があるためです。
確かに、これはファイルに対する単純な XOR ではありませんが、概念は同じです。
ランス