1

XOR 暗号化アルゴリズムの疑似コードを見つけようとしています。しかし、私はこれまで運がありませんでした。どこで見つけられるか知っている人はいますか?

編集:それが役立つ場合はXOR 32

EDIT 2: パスワードについて

4

4 に答える 4

4

あなたがバーナム暗号を意味すると仮定すると、それはただ:

for i = 0 to length of input
    output[i] = input[i] xor key[i mod key_length]

キーストリームが少なくとも入力と同じ長さであり、再利用されない限り、これ非常に弱いことに注意してください。

于 2010-04-27T23:41:00.933 に答える
2

最も基本的な「xor 暗号化アルゴリズム」は、おそらく次のように、平文とキーを XOR したものです。

for each bit of the plaintext:
    ciphertext = bit of plaintext XOR bit of key

キーが最後に到達すると、キーがラップアラウンドします。

XOR はそれ自身の逆数であるため、暗号文と鍵を同じ方法で再度 XOR すると、平文が明らかになります。

于 2010-04-27T23:37:49.257 に答える
2

みたいな意味ですか?


unsigned char key = 0x7F;  // or any 8-bit value.
//encrypt
for(int i=0; i < strlen(input); i++) { input[i] ^= key; }
//decrypt
for(int i=0; i < strlen(input); i++) { input[i] ^= key; }

于 2010-04-27T23:38:01.217 に答える
2

C の場合:

void crypt(char key, char *msg, size_t l)
{
  int i;
  for(i=0; i<l; i++)
  msg[i]^=key;
}

void decrypt(char key, char *msg, size_t l)
{
  crypt(key, msg, l);
}
于 2010-04-27T23:39:17.707 に答える