diff --git a/files/o2.txt b/files/o2.txt new file mode 100644 index 0000000..e07046f --- /dev/null +++ b/files/o2.txt @@ -0,0 +1 @@ +Hello, this is a test file for encryption! diff --git a/otp.c b/otp.c index f6fa240..d5a8731 100644 --- a/otp.c +++ b/otp.c @@ -73,7 +73,6 @@ void simple_entropy_mix(unsigned char* urandom_buffer, size_t buffer_size, // Directory management int ensure_pads_directory(void); -int ensure_files_directory(void); void get_pad_path(const char* chksum, char* pad_path, char* state_path); const char* get_files_directory(void); void get_default_file_path(const char* filename, char* result_path, size_t result_size); @@ -83,14 +82,12 @@ uint64_t parse_size_string(const char* size_str); char* find_pad_by_prefix(const char* prefix); int list_available_pads(void); int show_pad_info(const char* chksum); -int get_user_choice(int min, int max); void show_progress(uint64_t current, uint64_t total, time_t start_time); // File operations int read_state_offset(const char* pad_chksum, uint64_t* offset); int write_state_offset(const char* pad_chksum, uint64_t offset); int calculate_checksum(const char* filename, char* checksum_hex); -void xor_checksum_256(const unsigned char* data, size_t len, unsigned char checksum[32]); char* custom_base64_encode(const unsigned char* input, int length); unsigned char* custom_base64_decode(const char* input, int* output_length); @@ -852,20 +849,6 @@ int show_pad_info(const char* chksum) { return 0; } -int get_user_choice(int min, int max) { - char input[64]; - int choice; - - while (1) { - if (fgets(input, sizeof(input), stdin)) { - choice = atoi(input); - if (choice >= min && choice <= max) { - return choice; - } - } - printf("Please enter a number between %d and %d: ", min, max); - } -} void show_progress(uint64_t current, uint64_t total, time_t start_time) { time_t now = time(NULL); @@ -2282,15 +2265,6 @@ int ensure_pads_directory(void) { return 0; } -int ensure_files_directory(void) { - struct stat st = {0}; - if (stat(FILES_DIR, &st) == -1) { - if (mkdir(FILES_DIR, 0755) != 0) { - return 1; - } - } - return 0; -} const char* get_files_directory(void) { struct stat st = {0}; @@ -2320,14 +2294,6 @@ void get_pad_path(const char* chksum, char* pad_path, char* state_path) { } -// Custom XOR checksum function -void xor_checksum_256(const unsigned char* data, size_t len, unsigned char checksum[32]) { - memset(checksum, 0, 32); - for (size_t i = 0; i < len; i++) { - unsigned char bucket = i % 32; - checksum[bucket] ^= data[i] ^ ((i >> 8) & 0xFF) ^ ((i >> 16) & 0xFF) ^ ((i >> 24) & 0xFF); - } -} // Custom base64 encode function char* custom_base64_encode(const unsigned char* input, int length) {