
sodium_crypto_secretbox_open 함수의 두 번째 인자인 mac_key와 nonce는 다음과 같이 설정해야 합니다.
mac_key는 암호화된 메시지와 함께 제공되는 키를 사용해야 하며, nonce는 랜덤으로 생성해야 합니다.
nonce를 랜덤으로 생성하기 위해 sodium_randombytes_noncelike 함수를 사용할 수 있습니다.
mac_key와 nonce를 함께 사용하여 함수를 호출할 때, nonce를 첫 번째 인자로, mac_key를 세 번째 인자로, 암호화된 메시지를 두 번째 인자로, 복호화된 메시지를 네 번째 인자로, mac_key와 암호화된 메시지의 크기를 다섯 번째 인자와 여섯 번째 인자로 전달해야 합니다.
다음과 같은 코드를 사용할 수 있습니다.
#hostingforum.kr
c
char *nonce = malloc(24);
sodium_init();
sodium_randombytes_noncelike(nonce, 24);
unsigned char *key = malloc(32);
unsigned char *message = malloc(1024);
unsigned char *mac = malloc(32);
unsigned char *decrypted_message = malloc(1024);
sodium_crypto_secretbox_open(nonce, message, 1024, mac, key);
이 코드에서 nonce는 첫 번째 인자로, mac_key는 세 번째 인자로, 암호화된 메시지는 두 번째 인자로, 복호화된 메시지는 네 번째 인자로, mac_key와 암호화된 메시지의 크기는 다섯 번째 인자와 여섯 번째 인자로 전달됩니다.
이러한 설정을 통해 sodium_crypto_secretbox_open 함수를 사용하여 암호화된 메시지를 복호화할 수 있습니다.
2025-05-13 14:05