1
したがって、このコードからXOR暗号化を選択するようにデータを暗号化したいと思います。 Github コードブロックで実行すると、実行され、この結果を示していますXOR暗号化はVisual Studioのコードブロックでは動作しません2017
Encrypted: :=.43*-:8m2$.a
Decrypted:kylewbanks.com0
Process returned 0 (0x0) execution time : 0.025 s
Press any key to continue.
しかし、私は、Visual Studio 2017を使用して起動すると、それはこのエラーを示しています
Error (active) E0059 function call is not allowed in a constant expression
配列を宣言するとき、私は、変数を置くカント意味するそうするための任意の方法があります私の暗号化イオンがVS2017で働く。 私は問題が定数を使用して変数を宣言すると、とにかくそれを使用するのが簡単な他の暗号化メソッドを使用すると思う、私はファイルのプレーンテキストを防ぐために安全である必要はない。 とにかくこれはコードのみです:
#include <stdio.h>
#include <string.h>
void encryptDecrypt(char *input, char *output) {
char key[] = {'K', 'C', 'Q'}; //Can be any chars, and any size array
int i;
for(i = 0; i < strlen(input); i++) {
output[i] = input[i]^key[i % (sizeof(key)/sizeof(char))];
}
}
int main() {
char baseStr[] = "kylewbanks.com";
char encrypted[strlen(baseStr)];
encryptDecrypt(baseStr, encrypted);
printf("Encrypted:%s\n", encrypted);
char decrypted[strlen(baseStr)];
encryptDecrypt(encrypted, decrypted);
printf("Decrypted:%s\n", decrypted);
}
ソースコード?私のクリスタルボールは現時点では動作しません。 –
あなたは何をしていますか*あなたのコードはどのように見えますか?あなたは[最小、完全で、そして証明可能な例](http://stackoverflow.com/help/mcve)を私たちに提供してもらえますか? –
上記の文字列には「kylewbanks.com」と表示されているにすぎないので、この暗号化にも問題がありますが、解読されたデータには「kylewbanks.com0」と末尾に0が表示されます。 –