diff --git a/tasks/Возвращение зашифрованного файла/Исходники/decrypt b/tasks/Возвращение зашифрованного файла/Исходники/decrypt new file mode 100644 index 0000000..a1755aa Binary files /dev/null and b/tasks/Возвращение зашифрованного файла/Исходники/decrypt differ diff --git a/tasks/Возвращение зашифрованного файла/Исходники/decrypt_file.cpp b/tasks/Возвращение зашифрованного файла/Исходники/decrypt_file.cpp new file mode 100644 index 0000000..34653c4 --- /dev/null +++ b/tasks/Возвращение зашифрованного файла/Исходники/decrypt_file.cpp @@ -0,0 +1,32 @@ +#include +#include + +const int maxsize = 33; +char line[maxsize+1]; +char ans[maxsize+1]; +FILE * file; + +void copying() { + for (int i = 0; i < maxsize; ++i) { + ans[i] = line[i]; + } +} + +void decryption() { + for (int i = 0; i < maxsize; i+=1, ans[i] = (ans[i] ^ '^'-'|'+'&') - i) { + } +} + +int main(int argc, char * argv[]) { + file = fopen("flag.enc", "r"); + if (file == NULL) + printf("File does not exist!\n"); + else { + fgets(line, maxsize+1, file); + copying(); + decryption(); + printf("%s\n", ans); + fclose(file); + } + return 0; +} diff --git a/tasks/Возвращение зашифрованного файла/Исходники/encrypt_file.cpp b/tasks/Возвращение зашифрованного файла/Исходники/encrypt_file.cpp new file mode 100644 index 0000000..c80b07f --- /dev/null +++ b/tasks/Возвращение зашифрованного файла/Исходники/encrypt_file.cpp @@ -0,0 +1,32 @@ +#include +#include + +const int maxsize = 33; +char line[maxsize+1]; +char ans[maxsize+1]; +FILE * file; + +void copying() { + for (int i = 0; i < maxsize; ++i) { + ans[i] = line[i]; + } +} + +void encryption() { + for (int i = 0; i < maxsize; i+=1, ans[i] = (ans[i] + i) ^ '^'-'|'+'&') { + } +} + +int main(int argc, char * argv[]) { + file = fopen("flag.txt", "r"); + if (file == NULL) + printf("File does not exist!\n"); + else { + fgets(line, maxsize+1, file); + copying(); + encryption(); + printf("%s\n", ans); + fclose(file); + } + return 0; +} diff --git a/tasks/Возвращение зашифрованного файла/Исходники/flag.txt b/tasks/Возвращение зашифрованного файла/Исходники/flag.txt new file mode 100644 index 0000000..0b6ea6d --- /dev/null +++ b/tasks/Возвращение зашифрованного файла/Исходники/flag.txt @@ -0,0 +1,2 @@ +ctf{0h_c0ngr4tz_y0u_g0t_th1s!} +