Change encrypted structure

This commit is contained in:
Night Kaly 2024-09-16 13:19:02 +01:00
parent 82ee7785f7
commit 47fd0968cb
Signed by: night0721
GPG key ID: 957D67B8DB7A119B
2 changed files with 3 additions and 6 deletions

View file

@ -263,9 +263,7 @@ int encrypt_packet(int sockfd, key_pair *kp)
/* Pad with null characters up to max length */ /* Pad with null characters up to max length */
memset(recipient + length, 0, MAX_NAME - length); memset(recipient + length, 0, MAX_NAME - length);
} }
memcpy(raw_data, kp->pk.username, MAX_NAME); memcpy(raw_data, line, length_line);
memcpy(raw_data + MAX_NAME, recipient, MAX_NAME);
memcpy(raw_data + MAX_NAME * 2, line, length_line);
size_t raw_data_size = MAX_NAME * 2 + strlen(line); size_t raw_data_size = MAX_NAME * 2 + strlen(line);
uint8_t *data = encrypt_data(kp->pk.username, recipient, raw_data, raw_data_size, &data_len); uint8_t *data = encrypt_data(kp->pk.username, recipient, raw_data, raw_data_size, &data_len);
@ -331,7 +329,6 @@ uint8_t *encrypt_data(uint8_t *from, uint8_t *to, uint8_t *raw, uint32_t raw_len
uint8_t encrypted[encrypted_len]; uint8_t encrypted[encrypted_len];
/* Generate random nonce(number used once) */ /* Generate random nonce(number used once) */
printf("raw: %s\n", raw);
randombytes_buf(nonce, sizeof(nonce)); randombytes_buf(nonce, sizeof(nonce));
crypto_aead_xchacha20poly1305_ietf_encrypt(encrypted, NULL, raw, crypto_aead_xchacha20poly1305_ietf_encrypt(encrypted, NULL, raw,
raw_length, NULL, 0, NULL, nonce, shared_key); raw_length, NULL, 0, NULL, nonce, shared_key);
@ -383,7 +380,7 @@ uint8_t *decrypt_data(packet *pkt)
} else { } else {
/* Terminate decrypted message so we don't print random bytes */ /* Terminate decrypted message so we don't print random bytes */
decrypted[data_len] = '\0'; decrypted[data_len] = '\0';
printf("<%s> to <%s>: %s\n", from, to, decrypted + MAX_NAME * 2); printf("<%s> to <%s>: %s\n", from, to, decrypted);
return decrypted; return decrypted;
} }
} }

View file

@ -128,7 +128,7 @@ void *thread_worker(void *arg)
for (int j = 0; j < thread.num_clients; j++) { for (int j = 0; j < thread.num_clients; j++) {
client_t client = thread.clients[j]; client_t client = thread.clients[j];
if (strcmp(client.username, to) == 0) { if (strcmp(client.username, to) == 0) {
error(0, "Relaying message to %s\n", client.username); error(0, "Relaying message to %s", client.username);
send_packet(verified_pkt, client.fd); send_packet(verified_pkt, client.fd);
} }
} }