blob: a036f4f94a326a9c9e4a8a238e60b16f105854be (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#include "../lib/lib.h"
#include "../lib/lib2.h"
#include "../lib/lib3.h"
#include <time.h>
#define CHALLENGE19_FILE_NR 40
int main()
{
int i;
char **file = malloc(sizeof(char *)*CHALLENGE19_FILE_NR);
int length_file[CHALLENGE19_FILE_NR];
int length[CHALLENGE19_FILE_NR];
char **plaintext= malloc(sizeof(char *)*CHALLENGE19_FILE_NR);
char **ciphertext= malloc(sizeof(char *)*CHALLENGE19_FILE_NR);
char filename[] = "./task19_data/task19_00";
char nonce[16];
generate_random_bytes(key, 16);
generate_random_bytes(nonce, 16);
for(i=0;i<CHALLENGE19_FILE_NR;i++) {
filename[strlen(filename)-1] = ((i % 10)+ '0');
filename[strlen(filename)-2] = ((i / 10) + '0');
length_file[i] = read_base64_file(filename, &file[i]);
plaintext[i] = malloc(length_file[i]);
length[i] = decode_base64(file[i], plaintext[i]);
printf("%s\n", plaintext[i]);
ciphertext[i] = malloc(length[i]);
aes_ctr(plaintext[i], length[i], ciphertext[i], key, nonce);
}
// let the cracking begin
}
|