
`decrypted_message` 변수에 초기화하지 않고 `sodium_crypto_secretbox_open` 함수를 호출하면 에러가 발생하는 이유는 이 함수가 암호화된 메시지를 복호화한 결과를 반환하는 함수이기 때문입니다.
`decrypted_message` 변수는 암호화된 메시지를 복호화한 결과를 저장하기 위한 변수로, 이 변수의 크기를 지정하지 않으면 에러가 발생합니다.
해결 방법은 `decrypted_message` 변수의 크기를 지정하는 것입니다.
예를 들어, 암호화된 메시지의 길이를 `encrypted_message_length` 변수에 저장하고, `decrypted_message` 변수의 크기를 `encrypted_message_length` 변수의 크기와 동일하게 지정하는 방법입니다.
#hostingforum.kr
c
size_t encrypted_message_length = strlen((const char*)encrypted_message);
unsigned char decrypted_message[encrypted_message_length];
size_t decrypted_message_length = sodium_crypto_secretbox_open(
decrypted_message,
encrypted_message,
encrypted_message_length,
key,
nonce
);
이러한 방법으로 `decrypted_message` 변수를 초기화하고 크기를 지정하면 에러가 발생하지 않으며, 암호화된 메시지를 복호화한 결과를 반환 받을 수 있습니다.
2025-05-10 16:56