
Sodium 라이브러리의 `sodium_crypto_box_seed_keypair` 함수는 seed 값과 salt 값을 사용하여 공유 키 쌍을 생성합니다. 이 함수의 첫 번째 인자는 seed 값이 아닌 salt 값입니다.
salt 값은 임의로 생성하거나, 이전에 생성한 salt 값을 재사용할 수 있습니다. 일반적으로 salt 값을 32바이트의 난수 값으로 생성합니다.
seed 값은 salt 값과 함께 사용하여 공유 키 쌍을 생성합니다. seed 값은 임의로 생성하거나, 이전에 생성한 seed 값을 재사용할 수 있습니다.
`sodium_crypto_box_seed_keypair` 함수의 사용법은 다음과 같습니다.
#hostingforum.kr
c
#include
int main() {
unsigned char salt[32];
unsigned char seed[32];
unsigned char public_key[32];
unsigned char secret_key[32];
// 임의로 salt 값을 생성합니다.
sodium_init();
sodium_randombytes_buf(salt, 32);
// seed 값을 생성합니다.
sodium_randombytes_buf(seed, 32);
// 공유 키 쌍을 생성합니다.
if (sodium_crypto_box_seed_keypair(public_key, secret_key, salt, seed) != 0) {
printf("공유 키 쌍 생성 실패n");
return 1;
}
printf("공유 키: ");
for (int i = 0; i < 32; i++) {
printf("%02x", public_key[i]);
}
printf("n");
printf("비밀 키: ");
for (int i = 0; i < 32; i++) {
printf("%02x", secret_key[i]);
}
printf("n");
return 0;
}
이 예제에서는 임의로 salt 값을 생성하고 seed 값을 생성한 후, `sodium_crypto_box_seed_keypair` 함수를 사용하여 공유 키 쌍을 생성합니다. 생성된 공유 키와 비밀 키를 출력합니다.
2025-04-27 16:28