私は混乱しています。同じプログラムで暗号化と復号化を行うcでXOR暗号化プログラムを使用しています。CでXOR暗号化を実装してクライアントからサーバーにデータを送信する方法
次に、クライアントが暗号化(XOR)を使用してサーバーにデータ/文字列メッセージを送信してから、サーバーが暗号化された文字列メッセージをcプログラムで受信する必要があります。
これは私のコードです:
#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[1000];
printf("Enter string:");
fgets(baseStr, sizeof baseStr, stdin);
char encrypted[strlen(baseStr)];
encryptDecrypt(baseStr, encrypted);
printf("Encrypted:%s\n\n\n", encrypted);
char decrypted[strlen(baseStr)];
encryptDecrypt(encrypted, decrypted);
printf("Decrypted:%s\n\n\n", decrypted);
}
正確に何を求めていますか? –
xor暗号化を使用してクライアントからサーバーにメッセージを送信するコードが必要です – Megha
独自の暗号化を作成しないでください。クライアントサーバーの通信にhttpsを使用するだけで、すべてが暗号化されます。 [「シュナイダーの法則」](https://www.schneier.com/blog/archives/2011/04/schneiers_law.html):最も無慈悲なアマチュアから最高の暗号技術者まで、誰でも自分自身でできるアルゴリズムを作成できます壊れない – zaph