
	                	                 
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