Skip to content

Commit 37c33e8

Browse files
author
Louise Pieri
committed
[Debug + Norme]: The function PBKDF2 is perfect with the salt
1 parent d76a857 commit 37c33e8

File tree

6 files changed

+24
-29
lines changed

6 files changed

+24
-29
lines changed

srcs/pbkdf2/pbkdf2.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/* By: cpieri <[email protected]> +#+ +:+ +#+ */
77
/* +#+#+#+#+#+ +#+ */
88
/* Created: 2019/12/31 13:29:35 by cpieri #+# #+# */
9-
/* Updated: 2020/01/06 11:40:27 by cpieri ### ########.fr */
9+
/* Updated: 2020/01/07 15:21:37 by cpieri ### ########.fr */
1010
/* */
1111
/* ************************************************************************** */
1212

@@ -97,21 +97,20 @@ void *pbkdf2(t_pbkdf *k, uint32_t c, size_t dk_len, enum e_prf func)
9797
{
9898
size_t i;
9999
size_t l;
100-
size_t r;
101100
void *tmp;
102101
char *ret;
103102
t_prf prf;
104103

105104
i = 1;
106105
prf = pbkdf2_get_prf(func);
107106
l = ceil((double)(dk_len / prf.nb_word)) + 1;
108-
r = dk_len % prf.nb_word;
109107
if (!(ret = (char*)ft_memalloc(sizeof(char) * (dk_len + 1))))
110108
return (NULL);
111109
while (i <= l)
112110
{
113111
tmp = pbkdf2_f(k, c, prf, i);
114-
ft_memcpy(ret + ((i - 1) * prf.nb_word), tmp, (i == l) ? r : prf.nb_word);
112+
ft_memcpy(ret + ((i - 1) * prf.nb_word), tmp,
113+
(i == l) ? dk_len % prf.nb_word : prf.nb_word);
115114
ft_memdel(&tmp);
116115
i++;
117116
}

srcs/symmetric/sym_key.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/* By: cpieri <[email protected]> +#+ +:+ +#+ */
77
/* +#+#+#+#+#+ +#+ */
88
/* Created: 2019/05/06 13:53:56 by cpieri #+# #+# */
9-
/* Updated: 2020/01/06 11:38:59 by cpieri ### ########.fr */
9+
/* Updated: 2020/01/07 15:31:19 by cpieri ### ########.fr */
1010
/* */
1111
/* ************************************************************************** */
1212

@@ -45,7 +45,8 @@ void print_pbkdf(t_pbkdf *k)
4545
ft_putstr("pass: ");
4646
ft_putendl((char*)k->pass);
4747
ft_putstr("salt: ");
48-
ft_putendl((char*)k->salt);
48+
ft_put64hexa(swap_uint64t(((uint64_t*)k->salt)[0]));
49+
ft_putchar('\n');
4950
ft_putstr("key: ");
5051
key = hex2sum(k->key, k->dk_len / 4);
5152
ft_putendl(key);

srcs/symmetric/symmetric_parsing.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/* By: cpieri <[email protected]> +#+ +:+ +#+ */
77
/* +#+#+#+#+#+ +#+ */
88
/* Created: 2019/05/06 12:04:37 by cpieri #+# #+# */
9-
/* Updated: 2020/01/06 14:36:39 by cpieri ### ########.fr */
9+
/* Updated: 2020/01/07 15:15:31 by cpieri ### ########.fr */
1010
/* */
1111
/* ************************************************************************** */
1212

@@ -51,7 +51,7 @@ static void check_pbkdf2(t_pbkdf **k)
5151
}
5252
else
5353
*k = new_key(get_pass("enter your password: "), 0, 0, 0);
54-
pbkdf2(*k, 1, 32, HMAC_SHA1);
54+
pbkdf2(*k, 10000, 32, HMAC_SHA256);
5555
}
5656

5757
static void get_sym_opt(char **av, int *now, t_opt *opt, t_pbkdf **k)

srcs/symmetric/symmetric_parsing_pt_f_2.c

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/* By: cpieri <[email protected]> +#+ +:+ +#+ */
77
/* +#+#+#+#+#+ +#+ */
88
/* Created: 2019/05/08 10:21:15 by cpieri #+# #+# */
9-
/* Updated: 2020/01/06 14:44:21 by cpieri ### ########.fr */
9+
/* Updated: 2020/01/07 15:14:04 by cpieri ### ########.fr */
1010
/* */
1111
/* ************************************************************************** */
1212

@@ -51,28 +51,23 @@ void get_sym_opt_p(char **av, int *now, t_opt *opt, t_pbkdf **k)
5151

5252
void get_sym_opt_s(char **av, int *now, t_opt *opt, t_pbkdf **k)
5353
{
54-
void *salt;
55-
size_t len;
56-
uint32_t nb;
54+
unsigned char *salt;
55+
size_t len;
56+
uint64_t nb;
5757

5858
len = 0;
5959
nb = 0;
60-
if ((salt = av[*now + 1]) == NULL || av[*now + 1][0] == '-')
60+
if ((salt = (unsigned char*)av[*now + 1]) == NULL || av[*now + 1][0] == '-')
6161
sym_usage(av[*now]);
6262
if ((opt->flags.sym_flags & e_sym_opt_k) != e_sym_opt_k)
6363
{
64-
len = ft_strlen(salt);
65-
if (ft_ishexa(salt) == 1)
64+
if (ft_ishexa((char*)salt) == 1)
6665
{
67-
nb = hex2int(salt);
68-
// nb = swap_uint64t(nb);
69-
// ft_put64hexa(nb), ft_putchar('\n');
70-
// ft_membits(&nb, sizeof(uint64_t), sizeof(uint8_t));
66+
nb = swap_uint64t(hex2uint64t((char*)salt));
7167
salt = ft_memdup(&nb, sizeof(uint64_t));
72-
// ft_put64hexa((uint64_t)salt), ft_putchar('\n');
73-
// ft_membits(salt, sizeof(uint64_t), sizeof(uint8_t));
74-
len = sizeof(salt);
68+
len = sizeof(uint64_t);
7569
}
70+
len = ft_strlen((char*)salt);
7671
opt->flags.sym_flags |= e_sym_opt_s;
7772
if (*k == NULL)
7873
*k = new_key(NULL, salt, 0, 0);

srcs/tools/get_data.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/* By: cpieri <[email protected]> +#+ +:+ +#+ */
77
/* +#+#+#+#+#+ +#+ */
88
/* Created: 2019/02/08 12:03:54 by cpieri #+# #+# */
9-
/* Updated: 2020/01/06 09:02:47 by cpieri ### ########.fr */
9+
/* Updated: 2020/01/07 15:31:42 by cpieri ### ########.fr */
1010
/* */
1111
/* ************************************************************************** */
1212

@@ -92,15 +92,16 @@ t_data *get_data(const int fd, const char *fd_name)
9292

9393
void *get_random(void)
9494
{
95-
void *ret;
96-
uint64_t random_value;
97-
int dev_random_fd;
98-
int nb_read;
95+
unsigned char *ret;
96+
uint64_t random_value;
97+
int dev_random_fd;
98+
int nb_read;
9999

100100
random_value = FAILURE;
101101
dev_random_fd = open_fd("/dev/random");
102102
nb_read = read(dev_random_fd, &random_value, sizeof(uint64_t));
103-
ret = ft_hex64_to_char(swap_uint64t(random_value));
103+
random_value = swap_uint64t(random_value);
104+
ret = ft_memdup(&random_value, sizeof(uint64_t));
104105
if (nb_read == FAILURE)
105106
print_error("get_random");
106107
return (ret);

to_find

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)